public class ModularTransformation extends Object implements Serializable, Cloneable
σ =
/ A B \
\ C D / ,
with A,B,C,D∈Zg×g,
that leave the symplectic structure invariant, e.g.:
σt
/ 0 1 \
\-1 0 /
σ =
/ 0 1 \
\-1 0 /
ModularPropertySupport,
SiegelReduction,
Serialized Form| Constructor and Description |
|---|
ModularTransformation(int g)
Creates identity in molular group of degree
2g. |
ModularTransformation(de.jtem.blas.IntegerMatrix A,
de.jtem.blas.IntegerMatrix B,
de.jtem.blas.IntegerMatrix C,
de.jtem.blas.IntegerMatrix D)
Creates element with prescribed sub-matrices
A,B,C and, D. |
ModularTransformation(ModularTransformation T)
Creates a copy of
T. |
| Modifier and Type | Method and Description |
|---|---|
void |
assign(ModularTransformation T)
Assigns
this with T. |
void |
assignDivide(ModularTransformation M)
Assigns
this with product of itself and inverse of M. |
void |
assignDivide(ModularTransformation M,
ModularTransformation N)
Assigns
this with product of M and inverse of N. |
void |
assignId()
Assigns
this with identity in modular group. |
void |
assignInvert(ModularTransformation T)
Assigns
this with inverse of T. |
void |
assignTimes(ModularTransformation M)
Assigns
this with product of itself and M. |
void |
assignTimes(ModularTransformation M,
ModularTransformation N)
Assigns
this with product of M and N. |
ModularTransformation |
divide(ModularTransformation M)
Returns product of
this and inverse ofM. |
de.jtem.blas.IntegerMatrix |
getA()
Queries sub-matrix a.
|
de.jtem.blas.IntegerMatrix |
getB()
Queries sub-matrix b.
|
de.jtem.blas.IntegerMatrix |
getC()
Queries sub-matrix c.
|
de.jtem.blas.IntegerMatrix |
getD()
Queries sub-matrix d.
|
int |
getDegree()
Returns degree of modular group.
|
ModularTransformation |
invert()
Returns inverse of
this. |
boolean |
isId()
Tests if
this is the identity in modular group. |
ModularTransformation |
times(ModularTransformation M)
Returns product of
this and M. |
String |
toString()
Returns the for sub-matrices as string.
|
public ModularTransformation(int g)
2g.public ModularTransformation(de.jtem.blas.IntegerMatrix A,
de.jtem.blas.IntegerMatrix B,
de.jtem.blas.IntegerMatrix C,
de.jtem.blas.IntegerMatrix D)
A,B,C and, D.A - square integer matrix of degree dimB - square integer matrix of degree dimC - square integer matrix of degree dimD - square integer matrix of degree dimpublic ModularTransformation(ModularTransformation T)
T.public void assign(ModularTransformation T)
this with T.public void assignDivide(ModularTransformation M)
this with product of itself and inverse of M.M - element with the same degree as thispublic void assignDivide(ModularTransformation M, ModularTransformation N)
this with product of M and inverse of N.M - element with the same degree as NN - element with the same degree as Mpublic void assignId()
this with identity in modular group.public void assignInvert(ModularTransformation T)
this with inverse of T.public void assignTimes(ModularTransformation M)
this with product of itself and M.M - element with the same degree as thispublic void assignTimes(ModularTransformation M, ModularTransformation N)
this with product of M and N.M - element with the same degree as NN - element with the same degree as Mpublic ModularTransformation divide(ModularTransformation M)
this and inverse ofM.M - element with the same degree as thispublic de.jtem.blas.IntegerMatrix getA()
public de.jtem.blas.IntegerMatrix getB()
public de.jtem.blas.IntegerMatrix getC()
public de.jtem.blas.IntegerMatrix getD()
public int getDegree()
public ModularTransformation invert()
this.public boolean isId()
this is the identity in modular group.public ModularTransformation times(ModularTransformation M)
this and M.M - element with the same degree as this