This class describes a ring shaped This class represents a ring shaped light source, defined by the inner radius rmin and the outer radius rmax.
More...
|
| double | area () |
| | area
|
| void | binReadItem (std::ifstream &os) |
| | reads content of LightSrc from a binary file, represented by os (has to be specified by the derived classes)
|
| void | binWriteItem (std::ofstream &os) |
| | writes content of LightSrc in a binary file, represented by is (has to be specified by the derived classes)focuspos
|
| double | getRmax () |
| | returns the outer radius of the light source
|
| double | getRmin () |
| | returns the inner radius of the light source
|
| | LightSrcRing () |
| | LightSrcRing (maths::Vector< double > Pos, int N, double wvl, double rmin=0.0, double rmax=100.0, maths::Vector< std::complex< double > > Pol=maths::Vector< std::complex< double > >(0.0, 1.0, 0.0), int raytype=LIGHTSRC_RAYTYPE_IRAY, double r0=100.0) |
| int | next (IRay &S) |
| int | next (Ray_pow &S) |
| int | next (RayBase *ray) |
| int | next (tubedRay &S) |
| void | setRmax (double rmax) |
| | set the outer radius of the light source
|
| void | setRmin (double rmin) |
| | set the inner radius of the light source
|
| void | addObject (ObjectShape *obj) |
| | add single object to the object list
|
| void | adjustDirection () |
| void | binRead (std::ifstream &is) |
| | writes content of LightSrc in a binary file, represented by is
|
| void | binWrite (std::ofstream &os) |
| | reads content of LightSrc from a binary file, represented by os
|
| void | clearObjects () |
| | clear object list
|
| double | getDensity () |
| | returns the ray density, i.e. the number of rays per unit length (=D/N)
|
| maths::Vector< std::complex< double > > | getInitPol () |
| double | getIsum1 () |
| double | getIsum2 () |
| maths::Vector< double > | getk () |
| | returns the main direction of the light source
|
| int | getNumObjs () |
| | returns the number of Objects (only needed, when used seperately outside scene)
|
| int | getNumRays () |
| | returns the number of rays (per direction in space)
|
| int | getNumRaysRT () |
| ObjectShape * | getObject (int i) |
| | returns i-th item in the object list
|
| maths::Vector< double > | getPos () |
| | returns the position of the light source. This is the center of the square area of the light source
|
| double | getWavelength () |
| double | getWavenumber () |
| | LightSrc () |
| | LightSrc (const LightSrc &) |
| | Copy constructor.
|
| void | ObjectList (int Anz, std::vector< ObjectShape * > Obj) |
| int | rayType () |
| | returns the current ray type
|
| void | removeObject (ObjectShape *obj) |
| | remove object from the object list
|
| void | reset () |
| | Reset everything (counting starts from the beginning)
|
| void | setD (double D) |
| | sets the width of the light source (this resets also the ray counter)
|
| void | setD (double D1, double D2) |
| void | setk (const maths::Vector< double > &k) |
| | sets the main direction of the light source
|
| void | setN0 (std::complex< double > n0) |
| | sets the complex valued refractive index of the intermediate medium
|
| void | setNumRays (int N) |
| void | setNumRaysRT (int numRaysRT) |
| void | setObject (ObjectShape *O, int i=-1) |
| | exchanges i-th object in the object list
|
| void | setPol (maths::Vector< std::complex< double > > pol) |
| | sets the polarisation
|
| void | setPos (maths::Vector< double > P) |
| | sets the position of the light source. This is the center of the square area of the light source
|
| void | setR0 (double r0) |
| | sets the radius of the calculation sphere
|
| void | setWavelength (double wvl) |
| void | setWavenumber (double k0) |
| | ~LightSrc (void) |
|
| double | D |
| | width of the square light source area
|
| double | D1 |
| double | D2 |
| | width in the e1- and the e2-direction (used only for _mc versions of LightSrc)
|
| double | density |
| | ray density, i.e. distance between two neighboring rays
|
| maths::Vector< double > | e1 |
| maths::Vector< double > | e2 |
| | unit vectors that span the light source area
|
| int | i1 |
| | first index of the ray inside the starting area (for internal use, -1 if the calculation has not yet been started)
|
| int | i2 |
| | second index of the ray inside the starting area (for internal use, -1 if the calculation has not yet been started)
|
| maths::Vector< std::complex< double > > | initPol |
| | Polarisation, if the k-Vector points in z-direction.
|
| maths::Vector< double > | k |
| | main direction of the light source
|
| int | N =10000 |
| | number of rays (per direction)
|
| std::complex< double > | n0 |
| | refractive index of the intermediate medium
|
| int | numObjs |
| | number of objects
|
| std::vector< ObjectShape * > | Obj |
| | list of all objects
|
| double | P0 =1.0 |
| | power
|
| double | Pall |
| | overall Power
|
| maths::Vector< std::complex< double > > | Pol |
| | polarisation (default: (0.0, 1.0, 0.0)
|
| maths::Vector< std::complex< double > > | Pol2 |
| | second polarisation (used by IRay)
|
| int | polType |
| | Polarisationsrichtung (s.o.)
|
| maths::Vector< double > | Pos |
| | position of the light source (center of the square area of the light source)
|
| double | r0 =1.0 |
| | radius of the calculation sphere
|
| int | rayCounter =0 |
| int | raytype |
| | Strahltyp : ray oder ISTRAHL (=RAY oder IRAY)
|
| bool | suppress_phase_progress = false |
| | if set true, the phase won't be changed when calling a next method (needed for USP-calculations)
|
| int | type |
| | type of the light source
|
| double | Isum1 |
| double | Isum2 |
| double | k0 |
| | wavenumber (i.e. \( \frac{2\pi}{\lambda}\)
|
| int | numRaysRT =20 |
| | used in GOATvis to determine number of rays for ray representation
|
| maths::Vector< double > | rotVec =maths::Vector<double>(1,0,0) |
| | Vector which holds the spherical coordinates \(r\), \(\vartheta\) and \(\varphi\) of the direction vector k.
|
| double | wvl =1 |
| | wavelength
|
This class describes a ring shaped This class represents a ring shaped light source, defined by the inner radius rmin and the outer radius rmax.
Definition at line 252 of file lightsrc.h.