public final class TransformPropertySupport extends Object implements Serializable, Cloneable
M,N∈Zg
holds:
θ(z|B) = exp( ½ MtBM + Mtz ) θ( z + 2πiN + BM | B)
.
M
and N
such that the absolute value of the
transformed argument z+2πiN+BM
is as small as possible.
This is done by the following vectors:
M(z|B) = -[ re(B)-1 re(z) ]
N(z|B) = -[ ½ ( im(z) + im(BM(z|B) )/π ]
To use this class
you have to provide a period matrix B
(setPeriodMatrix(de.jtem.blas.ComplexMatrix)
)
and the argument vector z
(setZ(de.jtem.blas.ComplexVector)
).
TransformPropertySupport
than determines the
above defined integer vectors M(z|B)
and N(z|B)
. It further
computes the transformed argument
T(z|B) = z + 2πiN(z|B) + BM(z|B)
and the exponential transformation factor
f(z|B) = ½ M(z|B)tBM(z|B) + M(z|B)tz
which can be accessed by calling getTransformedZ()
and getFactor()
.
This class can also be used to check whether a vector z∈Cg
is a grid point of
{2πiN+BM|M,N∈Zg}.
In that case T(z|B)
will obviously be zero.
Theta
,
Serialized FormConstructor and Description |
---|
TransformPropertySupport(de.jtem.blas.ComplexMatrix periodMatrix)
Creates instance with presrcibed period matrix.
|
Modifier and Type | Method and Description |
---|---|
de.jtem.mfc.field.Complex |
getFactor()
Returns the exponential transformation factor.
|
de.jtem.blas.IntegerVector |
getM()
Returns the integer vector
M(z|B) . |
de.jtem.blas.IntegerVector |
getN()
Returns the integer vector
N(z|B) . |
de.jtem.blas.ComplexMatrix |
getPeriodMatrix()
Returns period matrix.
|
de.jtem.blas.ComplexVector |
getTransformedZ()
Returns the transformed argument vector.
|
de.jtem.blas.ComplexVector |
getZ()
Returns the argument vector which was transformed.
|
void |
setPeriodMatrix(de.jtem.blas.ComplexMatrix periodMatrix)
Sets the period matrix.
|
void |
setZ(de.jtem.blas.ComplexVector z)
Sets the argument vector which will be transformed.
|
public TransformPropertySupport(de.jtem.blas.ComplexMatrix periodMatrix)
periodMatrix
- symmetric complex matrix with negative definite real partpublic final de.jtem.mfc.field.Complex getFactor()
f(z|B) = ½ M(z|B)tBM(z|B) + M(z|B)tz
public final de.jtem.blas.IntegerVector getM()
M(z|B)
.public final de.jtem.blas.IntegerVector getN()
N(z|B)
.public de.jtem.blas.ComplexMatrix getPeriodMatrix()
public final de.jtem.blas.ComplexVector getTransformedZ()
T(z|B) = z + 2πiN(z|B) + BM(z|B)
public final de.jtem.blas.ComplexVector getZ()
public final void setPeriodMatrix(de.jtem.blas.ComplexMatrix periodMatrix)
periodMatrix
- symmetric complex matrix with negative definite real partpublic final void setZ(de.jtem.blas.ComplexVector z)
z
- argument vector