hep.physics
Class BasicHep3Matrix
java.lang.Object
|
+--hep.physics.BasicHep3Matrix
- All Implemented Interfaces:
- Hep3Matrix
- public class BasicHep3Matrix
- extends java.lang.Object
- implements Hep3Matrix
3x3 matrices for Hep3Vector operations.
Internally the 3x3 matrix elements are indexed by 0,1, and 2 but
externally they are referenced by 1,2, and 3. This is to allow the
4x4 Lorentz matrices to be consistently referenced with the same
meaning for the indicies.
Constructor Summary |
BasicHep3Matrix()
|
BasicHep3Matrix(double e11,
double e12,
double e13,
double e21,
double e22,
double e23,
double e31,
double e32,
double e33)
|
Method Summary |
double |
det()
Returns the determinent of the matrix. |
double |
e(int row,
int column)
Returns the (row, column) element where the indicies expected
are 1,2 and 3. |
void |
setActiveEuler(double phi,
double theta,
double psi)
Defines a rotation matrix via Euler angles. |
void |
setElement(int row,
int column,
int value)
Sets the (row, column) element of the matrix where the
indices run over 1,2, and 3. |
void |
setPassiveEuler(double phi,
double theta,
double psi)
Defines a rotation matrix via Euler angles. |
double |
trace()
Returns the trace of the matrix. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
BasicHep3Matrix
public BasicHep3Matrix()
BasicHep3Matrix
public BasicHep3Matrix(double e11,
double e12,
double e13,
double e21,
double e22,
double e23,
double e31,
double e32,
double e33)
e
public double e(int row,
int column)
- Returns the (row, column) element where the indicies expected
are 1,2 and 3.
- Specified by:
e
in interface Hep3Matrix
det
public double det()
- Returns the determinent of the matrix.
- Specified by:
det
in interface Hep3Matrix
trace
public double trace()
- Returns the trace of the matrix.
- Specified by:
trace
in interface Hep3Matrix
setElement
public void setElement(int row,
int column,
int value)
- Sets the (row, column) element of the matrix where the
indices run over 1,2, and 3.
setPassiveEuler
public void setPassiveEuler(double phi,
double theta,
double psi)
- Defines a rotation matrix via Euler angles. A "passive" rotation
matrix rotates the coordinate system, an "active" one rotates the
vector(body). The angles are defined for a right handed coordinate
system. They are defined by counterclockwise rotations about an
axis by the right hand rule, ie, looking down the axis in the
negative direction the transvers axes are seen to rotate
counterclockwise. To define passive(active) angles first rotate the
coordinates(body) about the z-axis by phi, then about the new x-axis
by theta then about the new z-axis by psi.
Angles in radians.
setActiveEuler
public void setActiveEuler(double phi,
double theta,
double psi)
- Defines a rotation matrix via Euler angles. A "passive" rotation
matrix rotates the coordinate system, an "active" one rotates the
vector(body). The angles are defined for a right handed coordinate
system. They are defined by counterclockwise rotations about an
axis by the right hand rule, ie, looking down the axis in the
negative direction the transvers axes are seen to rotate
counterclockwise. To define passive(active) angles first rotate the
coordinates(body) about the z-axis by phi, then about the new x-axis
by theta then about the new z-axis by psi.
Angles in radians.