GOAT (Geometrical optics application tool) 0.1
Loading...
Searching...
No Matches
GOAT::raytracing::shortPulse Class Reference

Class for the calculation of short pulses. More...

#include <short_pulses.h>

Public Member Functions

void setPulseWidth (int i, double pulseWidth)
 set pulse width of the i-th light source
 shortPulse (std::vector< wavelengthRange > WvlRanges, Scene S, std::vector< std::function< std::complex< double >(double) > > nList)
 Constructor.
void startRaytracing ()
 performs raytracing process

Public Attributes

std::vector< unsigned int > bitLT
 bit reverse lookup table, used for FFT
SuperArray< maths::Vector< std::complex< double > > > field
std::vector< double > LSwidth
 pulse widths of the light sources
std::vector< std::function< std::complex< double >(double) > > nList
 List of the refractive index function for each object.
int numWvlRanges = 0
 number of different wavelength ranges
std::vector< rayListEntryrayList
 List of all ray steps.
Scene S
 the scene - it contains all information about the light sources, objects etc.
std::vector< wavelengthRangewvlRanges
 Here, the wavelength ranges for the calculation are stored.

Detailed Description

Class for the calculation of short pulses.

This class provides functions for the calculation of short pulses in the scene S. The short pulse is described by different wavelength calculations. Notice: Wavelengths are given here in um!

Definition at line 45 of file short_pulses.h.

Constructor & Destructor Documentation

◆ shortPulse()

GOAT::raytracing::shortPulse::shortPulse ( std::vector< wavelengthRange > WvlRanges,
Scene S,
std::vector< std::function< std::complex< double >(double) > > nList )

Constructor.

Parameters
WvlRangesDefines the wavelength ranges for the calculation
SScene, which holds all information about the light sources, objects etc.
nListholds the functions which describe the wavelength dependent refractive index (notice: nList[0...S.NObj-1] -> refractive index of the objects, nList[S.Nobj]: refractive index of the surrounding medium

Member Function Documentation

◆ setPulseWidth()

void GOAT::raytracing::shortPulse::setPulseWidth ( int i,
double pulseWidth )

set pulse width of the i-th light source

◆ startRaytracing()

void GOAT::raytracing::shortPulse::startRaytracing ( )

performs raytracing process

Member Data Documentation

◆ bitLT

std::vector<unsigned int> GOAT::raytracing::shortPulse::bitLT

bit reverse lookup table, used for FFT

Definition at line 67 of file short_pulses.h.

◆ field

SuperArray< maths::Vector<std::complex<double> > > GOAT::raytracing::shortPulse::field

Definition at line 66 of file short_pulses.h.

◆ LSwidth

std::vector<double> GOAT::raytracing::shortPulse::LSwidth

pulse widths of the light sources

Definition at line 65 of file short_pulses.h.

◆ nList

std::vector<std::function<std::complex<double>(double) > > GOAT::raytracing::shortPulse::nList

List of the refractive index function for each object.

Definition at line 63 of file short_pulses.h.

◆ numWvlRanges

int GOAT::raytracing::shortPulse::numWvlRanges = 0

number of different wavelength ranges

Definition at line 61 of file short_pulses.h.

◆ rayList

std::vector<rayListEntry> GOAT::raytracing::shortPulse::rayList

List of all ray steps.

Definition at line 64 of file short_pulses.h.

◆ S

Scene GOAT::raytracing::shortPulse::S

the scene - it contains all information about the light sources, objects etc.

Definition at line 62 of file short_pulses.h.

◆ wvlRanges

std::vector<wavelengthRange> GOAT::raytracing::shortPulse::wvlRanges

Here, the wavelength ranges for the calculation are stored.

Definition at line 60 of file short_pulses.h.


The documentation for this class was generated from the following file: