optics
Class LaserCavity

java.lang.Object
  extended by optics.Optics
      extended by optics.ParaxialMatrix
          extended by optics.ParaxialGroup
              extended by optics.LaserCavity
All Implemented Interfaces:
Diagram2DComponent

public class LaserCavity
extends ParaxialGroup

Class to hold a Paraxial representation of a Laser Cavity


Field Summary
 
Fields inherited from class optics.ParaxialGroup
inputHeight, inputPlane, label, outputHeight
 
Fields inherited from class optics.ParaxialMatrix
A, B, C, D, thickness
 
Fields inherited from class optics.Optics
DEFAULT_WAVELENGTH, errorStream, fmt, MICRONS, version
 
Constructor Summary
LaserCavity(ParaxialMatrix m, double input, double inheight, double outheight)
           
 
Method Summary
 double getBeamWaistLocation()
          Method of get the location of the beam waist in global coordinates.
 double getDelta()
          Method to get the Delta parameter
 double getGammaZero()
          Method to get gamma_0, the Rayleigh distance for the cavity.
 GaussianBeam getGaussianBeam(double lambda)
          Method to get the GaussianBeam at the beam waist
 double getLeftCurvature()
          Method to get Left effective curvature
 double getRightCurvature()
          Method to get Right effective curvature
 double getSeparation()
          Method to get the effective morror separation.
 boolean isStable()
          Method to test if the cavity is stable.
 
Methods inherited from class optics.ParaxialGroup
clone, draw, getBackFocal, getBackPrincipal, getBounds, getFrontFocal, getFrontPrincipal, getInputHeight, getInputPlane, getOutputHeight, getOutputPlane, imagePosition, multBy, read, read, read, readChooser, readChooser, scale, setFNo, setHeight, setInputHeight, setInputPlane, setLabel, setOutputHeight, toString, write, write, write, write, writeChooser
 
Methods inherited from class optics.ParaxialMatrix
cavity, determinant, dielectric, dielectric, doublet, edit, edit, fromGroup, fromGroup, fromGroup, fromPlanes, getA, getB, getBackFocalLength, getBackPower, getC, getD, getFrontFocalLength, getFrontPower, getThickness, inverse, mirror, mult, multBy, propagation, setBackFocalLength, setElements, setElements, setFrontFocalLength, thickLens, thinLens, thinLens, 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
 

Constructor Detail

LaserCavity

public LaserCavity(ParaxialMatrix m,
                   double input,
                   double inheight,
                   double outheight)
Method Detail

isStable

public boolean isStable()
Method to test if the cavity is stable. It tests if the |trace| of the cavity matrix < 2.0

Returns:
boolean true is stable

getSeparation

public double getSeparation()
Method to get the effective morror separation.


getLeftCurvature

public double getLeftCurvature()
Method to get Left effective curvature


getRightCurvature

public double getRightCurvature()
Method to get Right effective curvature


getDelta

public double getDelta()
Method to get the Delta parameter


getBeamWaistLocation

public double getBeamWaistLocation()
Method of get the location of the beam waist in global coordinates.

Parameters:
double - location of the beam waist.

getGammaZero

public double getGammaZero()
Method to get gamma_0, the Rayleigh distance for the cavity.

Returns:
double the Rayleigh distance in mm.

getGaussianBeam

public GaussianBeam getGaussianBeam(double lambda)
Method to get the GaussianBeam at the beam waist