|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.gwoptics.gaussbeams.GaussMode
public class GaussMode
Gaussmode is a class that provides the mathematical framework for Gaussian beams. Gaussmode objects store the beam parameter, the laser wavelength and the local index of refraction, which fully decribes a Gaussian beam. The class provides a set of utility functions to transform Gaussian beam parameters or to compute properties of the beam (beam size, amplitue patterns, etc.)
Field Summary | |
---|---|
Complex |
_qx
|
Complex |
_qy
|
Constructor Summary | |
---|---|
GaussMode()
Default constructor which sets dummy parameters for the Gaussian beam: lambda = 1064nm, wavelength of a Nd:YAG laser nr = 1, index of refraction of vacuum (or air) beam waist of w0=1mm at z0=0 |
|
GaussMode(float lambda,
Complex qx,
Complex qy,
float nr)
Additional constructor that sets user defined beam parameters, now optionally different for x- and y-direction. |
|
GaussMode(float lambda,
Complex q,
float nr)
Standard constructor that sets user defined beam parameters. |
|
GaussMode(float lambda,
float w0,
float z,
float nr)
Additional constructor that sets the beam parameters via beam waist radius and beam waist position. |
|
GaussMode(float lambda,
float w0x,
float zx,
float w0y,
float zy,
float nr)
Additional constructor that sets the beam parameters via beam waist radius and beam waist position, now allowing different parameters in x- and y-direction. |
Method Summary | |
---|---|
double |
get_Gouyx()
This function returns the Gouy phase Psi(z) in x-direction (tangential plane) |
double |
get_Gouyy()
This function returns the Gouy phase Psi(z) in y-direction (sagittal plane) |
double |
get_lambda()
This function returns the vacuum wavelength of the laser. |
double |
get_nr()
This function returns the local index of refraction |
Complex |
get_q0x()
This function Gaussian beam parametera at the waist q0 in x-direction (tangential plane) |
Complex |
get_q0y()
This function returns the Gaussian beam parameter at the waist q0 in y-direction (sagittal plane) |
Complex |
get_qx()
This function returns the Gaussian beam parameter q in x-direction (tangential plane) |
Complex |
get_qy()
This function returns the Gaussian beam parameter q in y-direction (sagittal plane) |
double |
get_ROCx()
This function returns the phase front radius of curvature in x-direction (tangential plane) |
double |
get_ROCy()
This function returns the phase front radius of curvature in y-direction (sagittal plane) |
double |
get_w0x()
This function returns the beam waist radius in x-direction (tangential plane) |
double |
get_w0y()
This function returns the beam waist radius in y-direction (sagittal plane) |
double |
get_wx()
This function returns the beam radius in x-direction (tangential plane) |
double |
get_wy()
This function returns the beam radius in y-direction (sagittal plane) |
double |
get_zrx()
This function returns the Rayleigh range z_r in x-direction (tangential plane) |
double |
get_zry()
This function returns the Rayleigh range z_r in y-direction (sagittal plane) |
double |
get_zx()
This function returns the distance to the beam waist in x-direction (tangential plane) |
double |
get_zy()
This function returns the distance to the beam waist in y-direction (sagittal plane) |
static java.lang.Double |
Gouy(Complex q)
This function computes the Gouy for a given beam parameters. |
static Complex |
make_q(double w0,
double z,
double lambda,
double nr)
This function computes a Gaussian beam parameters from user defined parameters for the beam waist (and wavelength, and index of refraction). |
static Complex |
q0(Complex q)
This function computes the beam parameter at the waist for a given beam parameters. |
static java.lang.Double |
ROC(Complex q)
This function computes the phase front curvature for a given beam parameters. |
Complex |
u_lp_cos_xy(int p,
int l,
double x,
double y)
This function returns the complex amplitude of a sinusoidal Laguerre-Gaussian beam shape u_pl. |
double |
u_n_amp(int n,
Complex q,
double x)
This function represents the one-dimensional part of u_nm_amp the amplitude of a u_nm Hermite-Gauss beam pattern. |
double |
u_n_phs(int n,
Complex q,
double x)
This function represents the one-dimensional part of u_nm_phs the phase of a u_nm Hermite-Gauss beam pattern. |
Complex |
u_n(int n,
Complex q,
double x)
This function represents the one-dimensional part of a u_nm Hermite-Gauss beam patter, |
double |
u_nm_amp(int n,
int m,
double x,
double y)
This function returns the real amplitude only of a Hermite-Gaussian beam shape u_nm. |
double |
u_nm_phs(int n,
int m,
double x,
double y)
This function returns the phase of a Hermite-Gaussian beam shape u_nm, *without* the sign flips from the H polynomials! |
Complex |
u_nm(int n,
int m,
double x,
double y)
This function returns the complex amplitude of a Hermite-Gaussian beam shape u_nm. |
double |
u_pl_amp_xy(int p,
int l,
double x,
double y)
This function returns the real amplitude only of a heical Laguerre-Gaussian beam shape u_pl. |
double |
u_pl_amp(int p,
int l,
double r,
double phi)
This function returns the real amplitude only of a helical Laguerre-Gaussian beam shape u_pl. |
double |
u_pl_cos_amp_xy(int p,
int l,
double x,
double y)
This function returns the real amplitude only of a sinusoidal Laguerre-Gaussian beam shape u_pl. |
double |
u_pl_cos_amp(int p,
int l,
double r,
double phi)
This function returns the real amplitude only of a sinusoidal Laguerre-Gaussian beam shape u_pl. |
Complex |
u_pl_cos(int p,
int l,
double r,
double phi)
This function returns the complex amplitude of a sinusoidal Laguerre-Gaussian beam shape u_pl. |
Complex |
u_pl_xy(int p,
int l,
double x,
double y)
This function returns the complex amplitude of a heical Laguerre-Gaussian beam shape u_pl. |
Complex |
u_pl(int p,
int l,
double r,
double phi)
This function returns the complex amplitude of a helical Laguerre-Gaussian beam shape u_pl. |
java.lang.Double |
w_size(Complex q)
This function computes the beam radius for a given beam parameters. |
static java.lang.Double |
w_size(Complex q,
java.lang.Double lambda,
java.lang.Double nr)
This function computes the beam radius for a given beam parameters. |
java.lang.Double |
w0_size(Complex q)
This function computes the beam waist radius for a given beam parameters. |
static java.lang.Double |
w0_size(Complex q,
java.lang.Double lambda,
java.lang.Double nr)
This function computes the beam waist radius for a given beam parameters. |
static java.lang.Double |
zr(Complex q)
This function computes the Rayleigh range for a given beam parameters. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public Complex _qx
public Complex _qy
Constructor Detail |
---|
public GaussMode()
public GaussMode(float lambda, Complex q, float nr)
lambda
- laser vacuum wavelength (in meters)q
- Gaussian beam parameters for x- and y-directionnr
- local index of refraction (typically nr=1)public GaussMode(float lambda, Complex qx, Complex qy, float nr)
lambda
- vacuum wavelength of laser (in meters)qx
- Gaussian beam parameter in x-direction (tangential plane)qy
- Gaussian beam parameter in y-direction (sagittal plane)nr
- local index of refraction (typically nr=1)public GaussMode(float lambda, float w0, float z, float nr)
lambda
- vacuum wavelength of laser (in meters)w0
- beam waist radius (in meters)z
- beam waist position (in meters)nr
- local index of refraction (typically n=1)public GaussMode(float lambda, float w0x, float zx, float w0y, float zy, float nr)
lambda
- vacuum wavelength of laser (in meters)w0x
- beam waist radius, x-direction (in meters)w0y
- beam waist radius, y-direction (in meters)zx
- beam waist position, x-direction (in meters)zy
- beam waist position, y-direction (in meters)nr
- local index of refraction (typically n=1)Method Detail |
---|
public double get_lambda()
public double get_nr()
public Complex get_qx()
public Complex get_qy()
public double get_w0x()
public double get_w0y()
public double get_wx()
public double get_wy()
public double get_zx()
public double get_zy()
public double get_zrx()
public double get_zry()
public double get_ROCx()
public double get_ROCy()
public double get_Gouyx()
public double get_Gouyy()
public Complex get_q0x()
public Complex get_q0y()
public static Complex make_q(double w0, double z, double lambda, double nr)
w0
- beam waist radiusz
- distance to beam waistlambda
- vacuum wavelength of the lasernr
- local index of refraction
public java.lang.Double w0_size(Complex q)
q
- Gaussian beam parameter
public static java.lang.Double w0_size(Complex q, java.lang.Double lambda, java.lang.Double nr)
q
- Gaussian beam parameterlambda
- vacuum wavelengthnr
- local index of refraction
public java.lang.Double w_size(Complex q)
q
- Gaussian beam parameter
public static java.lang.Double w_size(Complex q, java.lang.Double lambda, java.lang.Double nr)
q
- Gaussian beam parameterlambda
- vacuum wavelengthnr
- local index of refraction
public static java.lang.Double ROC(Complex q)
q
- Gaussian beam parameter
public static java.lang.Double Gouy(Complex q)
q
- Gaussian beam parameter
public static Complex q0(Complex q)
q
- Gaussian beam parameter
public static java.lang.Double zr(Complex q)
q
- Gaussian beam parameter
public Complex u_nm(int n, int m, double x, double y)
n
- horizontal mode indexm
- vertical mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
public double u_nm_amp(int n, int m, double x, double y)
n
- horizontal mode indexm
- vertical mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
u_nm
public double u_nm_phs(int n, int m, double x, double y)
n
- horizontal mode indexm
- vertical mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
u_nm
public double u_n_amp(int n, Complex q, double x)
n
- mode indexq
- Gaussian beam parameterx
- position on axis
u_nm_amp
public double u_n_phs(int n, Complex q, double x)
n
- mode indexq
- Gaussian beam parameterx
- position on axis
u_nm_phs
public Complex u_n(int n, Complex q, double x)
n
- mode indexq
- Gaussian beam parameterx
- position on axis
u_nm
public Complex u_pl_xy(int p, int l, double x, double y)
p
- radial mode indexl
- azimuthal mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
u_pl
public Complex u_pl(int p, int l, double r, double phi)
p
- radial mode indexl
- azimuthal mode indexr
- radial position (orthogonal to beam direction) in metersphi
- azimuthal phase (orthogonal to beam direction) in radians
public double u_pl_amp_xy(int p, int l, double x, double y)
p
- radial mode indexl
- azimuthal mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
u_pl_amp
public double u_pl_amp(int p, int l, double r, double phi)
p
- radial mode indexl
- azimuthal mode indexr
- radial position (orthogonal to beam direction) in metersphi
- azimuthal phase (orthogonal to beam direction) in radians
u_pl
public Complex u_lp_cos_xy(int p, int l, double x, double y)
p
- radial mode indexl
- azimuthal mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
u_pl_cos
public Complex u_pl_cos(int p, int l, double r, double phi)
p
- radial mode indexl
- azimuthal mode indexr
- radial position (orthogonal to beam direction) in metersphi
- azimuthal phase (orthogonal to beam direction) in radians
u_pl
public double u_pl_cos_amp_xy(int p, int l, double x, double y)
p
- radial mode indexl
- azimuthal mode indexx
- position on x-xaxis (orthogonal to beam direction) in metersy
- position on y-xaxis (orthogonal to beam direction) in meters
u_pl_cos_amp
public double u_pl_cos_amp(int p, int l, double r, double phi)
p
- radial mode indexl
- azimuthal mode indexr
- radial position (orthogonal to beam direction) in metersphi
- azimuthal phase (orthogonal to beam direction) in radians
u_pl_cos
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |