|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectoptics.Optics
optics.ParaxialMatrix
public class ParaxialMatrix
Class to implement a ParaxialMatrix
for propagation between input and output planes.
The ParaxialMatrix consists of four matrix elements
plus a thickness.
| Field Summary | |
|---|---|
protected double |
A
The A matrix element. |
protected double |
B
The B matrix element. |
protected double |
C
The C matrix element. |
protected double |
D
The D matrix element. |
protected double |
thickness
The thickness, so distance between input and output planes. |
| Fields inherited from class optics.Optics |
|---|
DEFAULT_WAVELENGTH, errorStream, fmt, MICRONS |
| Constructor Summary | |
|---|---|
ParaxialMatrix()
Default constructor to create an Paraxial Matrix with elements set to Unit Matrix of thickness zero. |
|
ParaxialMatrix(double a,
double b,
double c,
double d)
Create a ParaxialMatrix setting elements to
specified values and thickness to zero. |
|
ParaxialMatrix(double a,
double b,
double c,
double d,
double t)
Create ParaxialMatrix and setting elements and thickness
to specified values. |
|
ParaxialMatrix(ParaxialMatrix m)
Constructor to form ParaxialMatrix with values taken
from specified ParaxialMatrix. |
|
| Method Summary | |
|---|---|
static ParaxialMatrix |
cavity(double leftCurvature,
double d,
double rightCurvature)
Static to form system matrix for a laser cavity with two mirrors and specified separation. |
ParaxialMatrix |
clone()
Method to return a clone (copy) of the current ParaxialMatrix |
double |
determinant()
Method to calculate the determinant. |
static ParaxialMatrix |
dielectric(double n0,
double n1)
Static method to return the ParaxialMatrix
for a flat dielectric interface between two refractive indices. |
static ParaxialMatrix |
dielectric(double n0,
double n1,
double c)
Static method to return the ParaxialMatrix
for a spherical dielectric interface between two refractive indices. |
static ParaxialMatrix |
doublet(double fc,
double fn,
double ft,
double mc,
double sn,
double st,
double bc)
Static Method to return the ParaxialMatrix
for a doublet |
void |
edit()
Method to invoke the ParaxialMatrixEditor of type MATRIX to directly edit the matrix elements. |
void |
edit(int type)
Method to invoke the ParaxialMatrixEditor to specified
type to edit the matrix. |
static ParaxialMatrix |
fromGroup(OpticalGroup g)
Static method for form the ParaxialMatrix from
an OpticalGroup at the
DEFAULT_WAVELENGTH. |
static ParaxialMatrix |
fromGroup(OpticalGroup g,
double lambda)
Static method to form a ParaxialMatrix from a Optical Group at a specified wavelength. |
static ParaxialMatrix |
fromGroup(OpticalGroup g,
double lambda,
int first,
int last)
Static to form a ParaxialMatrix from an
OpticalGroup at specified wavelength |
static ParaxialMatrix |
fromPlanes(double frontPrincipal,
double backPrincipal,
double focalLength,
double thickness)
Static method to form a system matrix from focal length, principal planes and thickness. |
double |
getA()
Method to return top-left or A matrix element. |
double |
getB()
Method to return top-right or B matrix element. |
double |
getBackFocal()
Return location of back focal plane relative to the output plane. |
double |
getBackFocalLength()
Return the back focal length. |
double |
getBackPower()
Return the back power. |
double |
getBackPrincipal()
Return the position of the back principal plane relative to the output plane. |
double |
getC()
Method to return lower-left or C matrix element. |
double |
getD()
Method to return lower-right or D matrix element. |
double |
getFrontFocal()
Return location of front focal plane relative to the input plane. |
double |
getFrontFocalLength()
Return the front focal length. |
double |
getFrontPower()
Return the front power. |
double |
getFrontPrincipal()
Return the position of the front principal plane relative to the input plane. |
double |
getThickness()
Method to return the thickness being distance from input to output plane. |
void |
inverse()
Forms the inverse of the current in place where the current values are overwritten. |
static ParaxialMatrix |
mirror(double c)
Static method to return the ParaxialMatrix for spherical mirror
of specified curcature. |
ParaxialMatrix |
mult(ParaxialMatrix p)
Method to pre-multiply the current ParaxialMatrix
by the specified ParaxialMatrix
and return a new ParaxialMatrix. |
void |
multBy(ParaxialMatrix p)
Method to pre-multiply the current ParaxialMatrix
by the specified ParaxialMatrix. |
static ParaxialMatrix |
propagation(double d)
Static method to return the propagation ParaxialMatrix for specifided distance. |
void |
scale(double a)
Method to scale the current ParaxialMatrix
by a constant. |
void |
setBackFocalLength(double f)
Set the back focal length to specified by scaling the matrix. |
void |
setElements(double a,
double b,
double c,
double d,
double t)
Method to set (or re-set) the elements of the ParaxialMatrix. |
void |
setElements(ParaxialMatrix m)
Method to set (or re-set) the elements of an ParaxialMatrix
with specified ParaxialMatrix. |
void |
setFrontFocalLength(double f)
Set the front focal length to specified value by scaling the matrix. |
static ParaxialMatrix |
thickLens(double fc,
double n,
double thick,
double bc)
Static method to return the ParaxialMatrix
for a thick lens with two specified radii and a thickness. |
static ParaxialMatrix |
thinLens(double f)
Static method to return the ParaxialMatrix for a thin lens
of specified focal length. |
static ParaxialMatrix |
thinLens(double fc,
double n,
double bc)
Static method to return the ParaxialMatrix for a thin lens
with two specified radii and refractive index. |
java.lang.String |
toString()
toString method to format ParaxialMatrix to
a string using current format string. |
double |
trace()
Method to calculate the trace. |
| Methods inherited from class optics.Optics |
|---|
getDefaultWaveLength, getErrorStream, getFormatString, getName, getStaticName, getVersion, printError, setDefaultWaveLength, setErrorStream, setFormatString, setMicrons |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected double A
protected double B
protected double C
protected double D
protected double thickness
| Constructor Detail |
|---|
public ParaxialMatrix()
public ParaxialMatrix(double a,
double b,
double c,
double d)
ParaxialMatrix setting elements to
specified values and thickness to zero.
a - top-left matrix elementb - top-right matrix elementc - lower-left matrix elementd - lower-right matrix element
public ParaxialMatrix(double a,
double b,
double c,
double d,
double t)
ParaxialMatrix and setting elements and thickness
to specified values.
a - top-left matrix elementb - top-right matrix elementc - lower-left matrix elementd - lower-right matrix elementt - thicknesspublic ParaxialMatrix(ParaxialMatrix m)
ParaxialMatrix with values taken
from specified ParaxialMatrix.
m - the specifying ParaxialMatrix| Method Detail |
|---|
public ParaxialMatrix clone()
ParaxialMatrix
clone in class java.lang.ObjectParaxialMatrix clone of current matrix
public void setElements(double a,
double b,
double c,
double d,
double t)
ParaxialMatrix.
a - top-left matrix elementb - top-right matrix elementc - lower-left matrix elementd - lower-right matrix elementt - thicknesspublic void setElements(ParaxialMatrix m)
ParaxialMatrix
with specified ParaxialMatrix.
m - specifying ParaxialMatrixpublic double getA()
double being the A matrix element.public double getB()
double being the B matrix element.public double getC()
double being the C matrix element.public double getD()
double being the D matrix element.public double getThickness()
double the thickness.public void scale(double a)
ParaxialMatrix
by a constant. Element B and thickness are multiplied by
a, element C is divided by a and the
other two elements are unchanged.
a - the scaling constantpublic java.lang.String toString()
ParaxialMatrix to
a string using current format string.
toString in class java.lang.ObjectString being formatted matrix.Optics.setFormatString(java.lang.String)public ParaxialMatrix mult(ParaxialMatrix p)
ParaxialMatrix
by the specified ParaxialMatrix
and return a new ParaxialMatrix. Neither the current
of specifying matrix are altered.
p - to pre-multiply the current.
ParaxialMatrix the resulting new
ParaxialMatrix.public void multBy(ParaxialMatrix p)
ParaxialMatrix
by the specified ParaxialMatrix.
The current ParaxialMatrix
is overwritten with the updated one.
p - to pre-multiply the current.public double determinant()
double the determinant.public double trace()
double the tracepublic void inverse()
public double getBackFocalLength()
double The focal length.public double getBackPower()
double the back power.public double getBackFocal()
double position of back focal planepublic double getBackPrincipal()
double position of back principal plane.public double getFrontFocalLength()
double the front focal length.public double getFrontPower()
double The focal length.public double getFrontFocal()
double position of front focal planepublic double getFrontPrincipal()
double position of front principal plane.public void setBackFocalLength(double f)
f - the new focal lengthpublic void setFrontFocalLength(double f)
f - the new focal lengthpublic void edit(int type)
ParaxialMatrixEditor to specified
type to edit the matrix.
type - editor typeParaxialMatrixEditorpublic void edit()
public static ParaxialMatrix propagation(double d)
ParaxialMatrix for specifided distance.
d - the propagation distance.
ParaxialMatrix for propagationpublic static ParaxialMatrix thinLens(double f)
ParaxialMatrix for a thin lens
of specified focal length.
f - the focal length in mm.
ParaxialMatrix of a thin lenspublic static ParaxialMatrix mirror(double c)
ParaxialMatrix for spherical mirror
of specified curcature.
c - curvature to the mirror.
ParaxialMatrix of a spherical mirror
public static ParaxialMatrix dielectric(double n0,
double n1)
ParaxialMatrix
for a flat dielectric interface between two refractive indices.
n0 - the first refractive indexn1 - the second refractive index
ParaxialMatrix for flat dielectric
public static ParaxialMatrix dielectric(double n0,
double n1,
double c)
ParaxialMatrix
for a spherical dielectric interface between two refractive indices.
n0 - the first refractive indexn1 - the second refractive indexc - curvature of the surface.
ParaxialMatrix of spherical dielectric.
public static ParaxialMatrix thickLens(double fc,
double n,
double thick,
double bc)
ParaxialMatrix
for a thick lens with two specified radii and a thickness.
fc - curvature of frontn - the refractive indexthick - thicknessbc - curvature of back surface.
ParaxialMatrix of a thick lens
public static ParaxialMatrix thinLens(double fc,
double n,
double bc)
ParaxialMatrix for a thin lens
with two specified radii and refractive index.
fc - curvature of front surfacen - refractive indexbc - curvature of back surface
ParaxialMatrix of thin lens.
public static ParaxialMatrix doublet(double fc,
double fn,
double ft,
double mc,
double sn,
double st,
double bc)
ParaxialMatrix
for a doublet
fc - front surface curvature.fn - first refractive index.ft - first thicknessmc - middle curvaturesn - second refractive indexst - second thicknessbc - back surface curvature.
ParaxialMatrix of a doublet.
public static ParaxialMatrix cavity(double leftCurvature,
double d,
double rightCurvature)
leftCurvature - curvature of left mirrord - distance to second mirrorrightCurvature - curvature of right mirror
public static ParaxialMatrix fromPlanes(double frontPrincipal,
double backPrincipal,
double focalLength,
double thickness)
frontPrincipal - front principal, relative to inputbackPrincipal - back principal, relative to output planefocalLength - system focal length (back and front equal)thickness - distance between input and output planes.
ParaxialMatrix from principal planes.
public static ParaxialMatrix fromGroup(OpticalGroup g,
double lambda)
g - the OpticalGrouplambda - The wavelength in micronspublic static ParaxialMatrix fromGroup(OpticalGroup g)
ParaxialMatrix from
an OpticalGroup at the
DEFAULT_WAVELENGTH.
g - the OpticalGroup.
public static ParaxialMatrix fromGroup(OpticalGroup g,
double lambda,
int first,
int last)
ParaxialMatrix from an
OpticalGroup at specified wavelength
g - the OpticalGrouplambda - The wavelength in micronsfirst - the first surface to be includedlast - the last surface to be included
(zero for last
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||