1 #ifndef __JPHYSICS__JDISPERSION__
2 #define __JPHYSICS__JDISPERSION__
12 namespace JPP {
using namespace JPHYSICS; }
53 const double x = 1.0 / lambda;
67 const double x = 1.0 / lambda;
69 return -x*x*(
a2 + x*(2.0*
a3 + x*3.0*
a4));
81 const double x = 1.0 / lambda;
85 const double npp = x*x*x*(2.0*
a2 + x*(6.0*
a3 + x*12.0*
a4));
86 const double ng = n / (1.0 + np*lambda/
n);
88 return ng*ng * (2*np*np - n*npp) * lambda / (n*n*n);
const double a4
d^3n/(dx)^3
Implementation of dispersion for water in deep sea.
virtual double getIndexOfRefractionPhase(const double lambda) const
Index of refraction (phase velocity).
const double P
Dispersion parameters (x = 1/lambda)
virtual double getDispersionGroup(const double lambda) const
Dispersion of light for group velocity.
JDispersion(const double P_atm)
Constructor.
virtual double getDispersionPhase(const double lambda) const
Dispersion of light for phase velocity.
alias put_queue eval echo n
const double a2
d^1n/(dx)^1
const double a3
d^2n/(dx)^2
Light dispersion inteface.