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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A.1 Numerical quadratu<strong>re</strong><br />

AsymptoticExpand::usage =<br />

"AsymptoticExpand[f,x] <strong>re</strong>turns the polynomial part of the<br />

asymptotic expansion of f <strong>re</strong>gard<strong>in</strong>g the variable x at Inf<strong>in</strong>ity. If f<br />

is a pu<strong>re</strong> function or is def<strong>in</strong>ed as f[...][x] then x need not be<br />

specified."<br />

ApproxLimGeneric::usage =<br />

"ApproxLimGeneric[f,goal] is used to give a figu<strong>re</strong> of merit for the quality<br />

of a polynomial approximation to an argument f of a circular function. It <strong>re</strong>turns<br />

the abscissa value whe<strong>re</strong> the ratio of the circular velocity of the approximation<br />

polynomial and the approximation error, <strong>re</strong>spectively, <strong>re</strong>aches a given goal (the<br />

larger the better). This is equivalent to the number of zeros the approximat<strong>in</strong>g<br />

function has with<strong>in</strong> one half period of the f<strong>re</strong>quency def<strong>in</strong>ed by the diffe<strong>re</strong>nce<br />

between f and its approximation."<br />

ApproxLimQuad::usage =<br />

"ApproxLimHyp[a,b,c,goal] is a special case of ApproxLimGeneric for the<br />

function a x^2 + b Sqrt[x^2 + c] + d and its approximation a x^2 + b x + d."<br />

ApproxLimL<strong>in</strong>ear::usage =<br />

"ApproxLimHyp[a,b,c,goal] is a special case of ApproxLimGeneric for the<br />

function a x + b Sqrt[x^2 + c] + d and its approximation (a + b) x + d."<br />

QuadZero::usage =<br />

"QuadZero[a,b,c,offs][k] <strong>re</strong>turns the k-th root of the quadratic equation<br />

a x^2 + b x + c == (k+offs)*Pi for ascend<strong>in</strong>g x (the branch to the right of the<br />

ext<strong>re</strong>mum). The parameter offs has to be determ<strong>in</strong>ed such that the 0-th solution is<br />

al<strong>re</strong>ady larger than the abscissa value of the ext<strong>re</strong>mum (see QuadOffset)."<br />

QuadOffset::usage =<br />

"QuadOffset[a,b,c] <strong>re</strong>turns the offset value used <strong>in</strong> QuadZero, which is<br />

essentially the ord<strong>in</strong>ate value of the ext<strong>re</strong>mum divided by Pi."<br />

HypZero::usage =<br />

"HypZero[a,b,c,d,offs][k] <strong>re</strong>turns the k-th root of the quadratic equation<br />

(a+b) x + d == (k+offs)*Pi, which is the polynomial approximation of<br />

a x + b Sqrt[x^2 + c] + d at Inf<strong>in</strong>ity for ascend<strong>in</strong>g x (the branch to the right of the<br />

ext<strong>re</strong>mum). The parameter offs has to be determ<strong>in</strong>ed such that the 0-th solution is<br />

al<strong>re</strong>ady larger than the abscissa value of the ext<strong>re</strong>mum (see HypOffset)."<br />

HypOffset::usage =<br />

"HypOffset[a,b,c,d] <strong>re</strong>turns the offset value used <strong>in</strong> HypZero, which is<br />

essentially the ord<strong>in</strong>ate value of the ext<strong>re</strong>mum or bend<strong>in</strong>g po<strong>in</strong>t divided by Pi."<br />

HypZeroExact::usage =<br />

"HypZeroExact[a,b,c,d,offs][k] <strong>re</strong>turns the k-th root of the equation<br />

a x + b Sqrt[x^2 + c] + d == (k+offs)*Pi for ascend<strong>in</strong>g x (the branch to the right of the<br />

ext<strong>re</strong>mum). The parameter offs has to be determ<strong>in</strong>ed such that the 0-th solution is<br />

al<strong>re</strong>ady larger than the abscissa value of the ext<strong>re</strong>mum (see HypOffsetExact)."<br />

HypOffsetExact::usage =<br />

"HypOffsetExact[a,b,c,d] <strong>re</strong>turns the offset value used <strong>in</strong> HypZeroExact, which is <strong>in</strong><br />

pr<strong>in</strong>ciple the ord<strong>in</strong>ate value of the ext<strong>re</strong>mum or bend<strong>in</strong>g po<strong>in</strong>t divided by Pi."<br />

ZerosInBetween::usage =<br />

"ZerosInBetween[f,a,b] <strong>re</strong>turns the number of solutions of the function<br />

g[x] == k*Pi for x <strong>in</strong> (a,b). The function f[k] is <strong>re</strong>qui<strong>re</strong>d to give the k-th<br />

solution of g[x] == k*Pi. If f[0] lies <strong>in</strong> the <strong>in</strong>terval (a,b) only the part<br />

to the right of f[0] is <strong>re</strong>garded. With this function, the parameter NSumTerms<br />

of NSum can be determ<strong>in</strong>ed."<br />

HypApproxError::usage =<br />

"HypApproxError[b,c,goal] <strong>re</strong>turns the abscissa value whe<strong>re</strong> the error between<br />

the function b*Sqrt[x^2 + c] and its approximation b*x <strong>re</strong>aches a given value."<br />

PartInt::usage =<br />

"PartInt[f,partpo<strong>in</strong>ts,a,(opts)] computes the <strong>in</strong>def<strong>in</strong>ite <strong>in</strong>tegral of a function<br />

f over the range (a,Inf<strong>in</strong>ity) us<strong>in</strong>g a partition-extrapolation method when the<br />

partition po<strong>in</strong>ts partpo<strong>in</strong>ts a<strong>re</strong> explicitly given. The first <strong>in</strong>terval (a,p1) is<br />

obta<strong>in</strong>ed us<strong>in</strong>g the double-exponential method, the others by a Gauss-Kronrod formula.<br />

The partial <strong>in</strong>tegrals between the partition po<strong>in</strong>ts a<strong>re</strong> summed up and passed to<br />

SequenceLimit to determ<strong>in</strong>e the value of the <strong>in</strong>tegral. If the first member of the<br />

list of partition po<strong>in</strong>ts <strong>in</strong> Inf<strong>in</strong>ity, the no extrapolation is performed, and the<br />

<strong>in</strong>tegral is enti<strong>re</strong>ly calculated with the double-exponential rule. Note that the<br />

partition po<strong>in</strong>ts must be of ascend<strong>in</strong>g order and chosen such that extrapolation<br />

is possible (<strong>in</strong> case of an oscillat<strong>in</strong>g <strong>in</strong>tegrand, they must be to the right of<br />

the rightmost ext<strong>re</strong>mum or saddle po<strong>in</strong>t of the argument function)."<br />

PartitionTable::usage =<br />

"PartitionTable[f,a,n,(opts)] <strong>re</strong>turns a list of partition po<strong>in</strong>ts suitable for<br />

PartInt. Depend<strong>in</strong>g on the option FunctionType the function f is <strong>in</strong>terp<strong>re</strong>ted either<br />

as argument function of S<strong>in</strong>[f[x]] or as a function giv<strong>in</strong>g the k-th zero of S<strong>in</strong>[arg[x]].<br />

In the first case, the first n solutions of f[x] == K*Pi to the right of the lower<br />

215

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

Saved successfully!

Ooh no, something went wrong!