Phase functions
Currently, this package supports the automatic evaluation of a number of special phases.
NumericalSteepestDescent.PolynomialPhase — Type
PolynomialPhase(coefs::Vector) # polynomial coefficientsReturn a PolynomialPhase object representing the phase defined by
\[g(z) = \sum_{j=0}^J \alpha_j z^j,\]
where $\alpha_j$ are the coefficients in coefs and $J$ is the degree of the polynomial.
It is assumed that $\alpha_J \neq 0$ and $J \geq 2$. For linear phases, use LinearPhase instead.
NumericalSteepestDescent.LinearPhase — Type
LinearPhase()Return a LinearPhase object representing the phase defined by
\[g(z) = z,\]
NumericalSteepestDescent.SquareRootPhase — Type
SquareRootPhase(a, b)Return a SquareRootPhase object representing the phase defined by
\[g(z) = \sqrt{z^2+a^2} + bz\]
where $a>0$ and $b \in [-1,1]$.
NumericalSteepestDescent.RationalPhase — Type
RationalPhase(cpoly::Vector, poles::Vector, cs::Vector)Return a RationalPhase object representing the phase defined by
\[g(z) = \sum_{j=0}^J \alpha_j z^j + \sum_{p=1}^P \sum_{k=1}^{K_p} \frac{\alpha_{p,k}}{(z-z_p)^k},\]
where $\alpha_j$ are the coefficients in cpoly and $J$ is the degree of the polynomial part, z_p are the poles in poles, $\alpha_{p,k}$ are the coefficients in cs[p] and $K_p$ is the order of the pole z_p.
It is assumed that the singular part is non-zero (i.e. cs is not a vector of zero vectors).