32 std::complex<double>
n,
67 void setPos(
double x,
double y,
double z);
This class represents a threedimensional (numeric) Matrix as a template.
Template class for threedimensional vectors.
double sf
scaling factor, it is used to scale the shape of the object
int type
type of the object
maths::Matrix< std::complex< double > > alpha
polarisability matrix
maths::Vector< double > P
position of the object
double r0
radius of the calculation sphere
std::complex< double > n
refractive index of the object
void setPos(maths::Vector< double > r)
set the position of the lens
void binWrite(std::ofstream &os)
binary writing to file
void setParms(lensParms &lp)
set the lens parameter
bool next(const maths::Vector< double > &p, const maths::Vector< double > &k, maths::Vector< double > &pout)
returns the next intersection point of a ray with this object The ray is desribed by the starting poi...
void initQuad()
calculates the circumferent cuboid (needed e.g. for the inelastic scattering calculations)
sphericLens(const maths::Vector< double > &P, std::complex< double > n, lensParms lp, GOAT::maths::Matrix< std::complex< double > > alpha=maths::CUNITY, const maths::Vector< double > &Ex=maths::ex, const maths::Vector< double > &Ey=maths::ey, const maths::Vector< double > &Ez=maths::ez, const int type=OBJECTSHAPE_SPHERIC_LENS)
maths::Vector< double > currentnorm
bool isInside(const maths::Vector< double > &p)
not yet implemented
maths::Vector< double > norm(const maths::Vector< double > &P)
returns surface normal at P The arbitrary calculation of the normal at P is complex and time consumin...
void setr0(double r0)
defines the radius of the calculation sphere
double volume()
calculates the volume of the lens
void setPos(double x, double y, double z)
set the position of the lens
lensParms getParms()
not yet implemented
void binRead(std::ifstream &is)
binary reading from file
maths::Vector< double > calcCoM()
calculates center of mass (needed by setCenter2CoM () )
const Matrix< std::complex< double > > CUNITY
Unity matrix (complex-valued)
Raytracer used for ultrashort pulse calculation with raytracing only.
This class is used for the iray class. This class is intended for internal use only....
#define OBJECTSHAPE_SPHERIC_LENS
Shape is a spheric lens.
Structure, which holds the full information about the spheric lens The side surfaces of the lens are ...