27.12.2012 Views

Wave Propagation in Linear Media | re-examined

Wave Propagation in Linear Media | re-examined

Wave Propagation in Linear Media | re-examined

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

8.2 Outl<strong>in</strong>e of the program structu<strong>re</strong><br />

Driver modules a<strong>re</strong> named accord<strong>in</strong>g to the scheme kPhijfNULL, Inc, Ref, Trans,<br />

Evangk, depend<strong>in</strong>g on whether the function depends on the <strong>re</strong>gion and the propagation<br />

di<strong>re</strong>ction or not.<br />

Two options, Shape and PPo<strong>in</strong>ts, a<strong>re</strong> provided to control the execution of the user accessible<br />

modules. The allowed values of the latter depend on the waveform.<br />

Shape 2fRect, Tria, Gaussg de nes the shape of the wave packet under consideration.<br />

The default value is Tria.<br />

PPo<strong>in</strong>ts 2 fApproximate, Zeros, Truncateg selects the way the <strong>in</strong>tegrals a<strong>re</strong> evaluated.<br />

Which one is applicable depends on the waveform. For triangular and <strong>re</strong>ctangular<br />

waves <strong>in</strong>side the tunnel, whe<strong>re</strong> the exponential functions have no polynomial arguments,<br />

the partition po<strong>in</strong>ts can be determ<strong>in</strong>ed either us<strong>in</strong>g a polynomial approximation or by<br />

comput<strong>in</strong>g the zeros of the <strong>in</strong>tegrand numerically. Outside the tunnel, the partition<br />

po<strong>in</strong>ts a<strong>re</strong> exactly the zeros, anyhow, and this option is ir<strong>re</strong>levant.<br />

For the Gaussian wave packet, on the contrary, it is possible not to use extrapolation<br />

but to compute the <strong>in</strong>tegrals di<strong>re</strong>ctly by truncat<strong>in</strong>g them at <strong>re</strong>asonably large abscissa<br />

values. This is possible both <strong>in</strong>side and outside the tunnel and also for the evanescent<br />

part of the wave. For the other shapes, the option is igno<strong>re</strong>d for the evaluation of the<br />

de nite <strong>in</strong>tegrals. The default value of this option is Approximate.<br />

Beside these two options all other options of the quadratu<strong>re</strong> function OscInt can be used.<br />

They take, however, no <strong>in</strong> uence on the evaluation of the modules <strong>in</strong> the package but a<strong>re</strong><br />

simply passed to the quadratu<strong>re</strong> rout<strong>in</strong>e.<br />

The list of arguments that have to be passed to the driver module comprises the spatial and<br />

time coord<strong>in</strong>ate X and T , the ratio between cut-o f<strong>re</strong>quency and the signal f<strong>re</strong>quency<br />

and the number of wavelengths k that the <strong>in</strong>itial wave packet spans. For Gaussian waves,<br />

the geometry parameter n is needed, otherwise an error message will be generated. For all<br />

other shapes, this additional parameter is not necessary and will be igno<strong>re</strong>d. Follow<strong>in</strong>g these<br />

arguments, options may be given, like <strong>in</strong> the examples below.<br />

Phi[x,t,w,k,Shape->Rect]<br />

PhiInc[x,t,w,k,n,Shape->Gauss,PPo<strong>in</strong>ts->Truncate]<br />

PhiRef[x,t,w,k,Shape->Tria,NSumTerms->30]<br />

PhiEvan[x,t,w,k,Shape->Rect,Work<strong>in</strong>gP<strong>re</strong>cision->25]<br />

PhiTrans[x,t,w,k,Shape->Tria,PPo<strong>in</strong>ts->Zeros]<br />

PhiGrad[x,t,w,k,n,Shape->Gauss]<br />

PhiGradTrans[x,t,w,k,Shape->Tria]<br />

PhiGradEvan[x,t,w,k,Shape->Tria]<br />

These examples a<strong>re</strong> a comp<strong>re</strong>hensive list of all available functions of the package.<br />

199

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!