GOAT (Geometrical optics application tool) 0.1
Loading...
Searching...
No Matches
raytrace_field.h
Go to the documentation of this file.
1#pragma once
2#include "raytrace.h"
3#include "superarray.h"
4#include <vector>
5
6
7namespace GOAT
8{
9 namespace raytracing
10 {
41 }
42}
Template class for threedimensional vectors.
Definition vector.h:57
class which represents a box (cuboid). It is derived by class ObjectShape This class is mainly used f...
Definition box.h:18
Abstract base class for all rays used for the raytracing process. This abstract base class for all ra...
Definition raybase.h:16
virtual void storeData(maths::Vector< double > PStart, maths::Vector< double > Pen, maths::Vector< std::complex< double > > EStart)
void setResolution(double res)
set the resolution (which will be used for all detectors)
maths::Vector< double > pDet
int findBoxDetectorIntersection(maths::Vector< double > P, maths::Vector< double > k, maths::Vector< double > &pout)
void trace()
Start the raytracing process.
std::vector< Box * > BoxDetector
void traceEnterObject()
this function is called when the ray enters an object
int iR
Number of reflections to consider.
void traceOneRay(RayBase *ray, int &Reflexions, int &recur)
traces one ray
void traceLeaveObject()
this function is called when the ray leaves an object
SuperArray< maths::Vector< std::complex< double > > > SE
virtual void init()
do some initialisation (e.g. clear the superarray)
void addBoxDetector(Box *box)
add a box as detector
maths::Vector< double > PStart
Definition raytrace.h:101
Scene S
Description of the scene.
Definition raytrace.h:116
RayBase * ray
current ray
Definition raytrace.h:126
maths::Vector< std::complex< double > > EStart
Definition raytrace.h:102
Class defining a scene with lightsources and objects. This is a container used to inform the Raytrace...
Definition raytrace.h:28
Template class to store arbitrary information in a 3D-grid This template class provides a virtual 3D-...
Definition superarray.h:26
Raytracer used for ultrashort pulse calculation with raytracing only.
Definition asphericLens.h:6
long long int INDEX_TYPE
Definition superarray.h:16
This class is used for the iray class. This class is intended for internal use only....
Definition fresnel.h:7