GOAT (Geometrical optics application tool) 0.1
Loading...
Searching...
No Matches
resutil.h File Reference
#include <complex>
#include <limits>
#include "vector.h"
#include "matrix.h"

Go to the source code of this file.

Classes

class  GOAT::raytracing::GlobalParms
struct  GOAT::raytracing::objectInfo
struct  GOAT::raytracing::OptProp
struct  GOAT::raytracing::Point
class  GOAT::raytracing::RRTParmsInfo
 Class used to set the parameters for inelastic scattering (may replaced later) More...
struct  GOAT::raytracing::StrahlArray
struct  GOAT::raytracing::StrahlInfo

Namespaces

namespace  GOAT
 This class is used for the iray class. This class is intended for internal use only. It defines a plane, defined by a central position and two directional vectors.
namespace  GOAT::raytracing
 Raytracer used for ultrashort pulse calculation with raytracing only.

Macros

#define ANZ_STRAHLEN   500
#define complex_I
#define FLUORESZENZ   1
#define I   std::complex<double>(0.0,1.0)
#define IN_HOST   2
#define IN_INC_AND_HOST   3
#define IN_OBJECT   1
#define IS_COL   2
#define IS_NOTHING   0
#define IS_ROW   1
#define MULTI   1
#define PARALLEL   0
#define RAMAN   0
#define RESUTIL_H
#define SENKRECHT   1
#define SQRT3   1.73205080756887729352744634150587
#define VAR_XY   3
#define VAR_XZ   1
#define VAR_YZ   2

Functions

double GOAT::raytracing::abs2 (double x)
 returns the squared absolute value of x
std::complex< double > GOAT::raytracing::acos (const std::complex< double > &)
void GOAT::raytracing::add_Gitter (GlobalParms parms, maths::Vector< std::complex< double > > **Erg, maths::Vector< std::complex< double > > **Gitter1, maths::Vector< std::complex< double > > **Gitter2)
void GOAT::raytracing::checkObjectIntersection (double r0, maths::Vector< double > &anf, const maths::Vector< double > &end, const maths::Vector< double > k, int numObj, objectInfo *Obj, maths::Vector< double > &Ps, int &Index)
void GOAT::raytracing::checkObjectIntersection (double r0, maths::Vector< double > &anf, const maths::Vector< double > &end, StrahlInfo &S, int numObj, objectInfo *Obj, maths::Vector< double > &Ps, int &Index)
void GOAT::raytracing::checkObjectIntersection (maths::Vector< double > &anf, const maths::Vector< double > &end, StrahlInfo &S, int numObj, objectInfo *Obj, maths::Vector< double > &Ps, int &Index)
void GOAT::raytracing::clear (GlobalParms parms, maths::Vector< std::complex< double > > **Gitter)
void GOAT::raytracing::copy (StrahlInfo &dest, StrahlInfo src)
void GOAT::raytracing::Delete (int n, maths::Vector< std::complex< double > > **Gitter)
Point GOAT::raytracing::get_grid_point (const GlobalParms &parms, maths::Vector< double > P)
double GOAT::raytracing::grad (const GlobalParms &parms, maths::Vector< std::complex< double > > **Gitter, const maths::Vector< double > &P)
void GOAT::raytracing::init_Strahl (GlobalParms Parms, StrahlArray *Strahl)
maths::Vector< double > GOAT::raytracing::kart2sph (maths::Vector< double > v)
std::istream & GOAT::raytracing::loadbinGlobalParms (std::istream &os, GlobalParms &parms)
double GOAT::raytracing::minmax (double a, double b)
void GOAT::raytracing::minmax (double x, double dx, int &min, int &max)
maths::Vector< double > GOAT::raytracing::next (const GlobalParms &parms, const maths::Vector< double > &P0, const maths::Vector< double > &k)
maths::Vector< double > GOAT::raytracing::nextP (maths::Vector< double > P, maths::Vector< double > k, maths::Vector< double > OK, double rK, bool &found)
std::ostream & GOAT::raytracing::operator<< (std::ostream &os, GlobalParms &parms)
std::ostream & GOAT::raytracing::operator<< (std::ostream &os, objectInfo E)
bool GOAT::raytracing::operator== (objectInfo a, objectInfo b)
std::istream & GOAT::raytracing::operator>> (std::istream &is, GlobalParms &parms)
void GOAT::raytracing::output (int nx, int ny, maths::Vector< std::complex< double > > **G)
GlobalParms GOAT::raytracing::readGlobalParms (bool old, std::ifstream &is)
GlobalParms GOAT::raytracing::readGlobalParms (bool old, std::ifstream *is)
RRTParmsInfo GOAT::raytracing::readRRTParms (bool old, std::ifstream &is)
RRTParmsInfo GOAT::raytracing::readRRTParms (bool old, std::ifstream *is)
void GOAT::raytracing::readRRTParms (std::ifstream &is, RRTParmsInfo &erg)
std::ostream & GOAT::raytracing::savebinGlobalParms (std::ostream &os, GlobalParms parms)
maths::Vector< double > GOAT::raytracing::set_grid_point (const GlobalParms &parms, Point P)
maths::Vector< double > GOAT::raytracing::sph2kart (maths::Vector< double > v)
void GOAT::raytracing::sub_Gitter (GlobalParms parms, maths::Vector< std::complex< double > > **Erg, maths::Vector< std::complex< double > > **Gitter1, maths::Vector< std::complex< double > > **Gitter2)
void GOAT::raytracing::toString (char *S, objectInfo *E, int i)
void GOAT::raytracing::writeRRTParms (std::ofstream &os, RRTParmsInfo erg)

Variables

constexpr double GOAT::raytracing::INF = std::numeric_limits<double>::infinity()

Macro Definition Documentation

◆ ANZ_STRAHLEN

#define ANZ_STRAHLEN   500

Definition at line 26 of file resutil.h.

◆ complex_I

#define complex_I

Definition at line 15 of file resutil.h.

◆ FLUORESZENZ

#define FLUORESZENZ   1

Definition at line 37 of file resutil.h.

◆ I

#define I   std::complex<double>(0.0,1.0)

Definition at line 13 of file fft.h.

◆ IN_HOST

#define IN_HOST   2

Definition at line 40 of file resutil.h.

◆ IN_INC_AND_HOST

#define IN_INC_AND_HOST   3

Definition at line 41 of file resutil.h.

◆ IN_OBJECT

#define IN_OBJECT   1

Definition at line 39 of file resutil.h.

◆ IS_COL

#define IS_COL   2

Definition at line 30 of file resutil.h.

◆ IS_NOTHING

#define IS_NOTHING   0

Definition at line 28 of file resutil.h.

◆ IS_ROW

#define IS_ROW   1

Definition at line 29 of file resutil.h.

◆ MULTI

#define MULTI   1

Definition at line 25 of file resutil.h.

◆ PARALLEL

#define PARALLEL   0

Definition at line 24 of file resutil.h.

◆ RAMAN

#define RAMAN   0

Definition at line 36 of file resutil.h.

◆ RESUTIL_H

#define RESUTIL_H

Definition at line 21 of file resutil.h.

◆ SENKRECHT

#define SENKRECHT   1

Definition at line 23 of file resutil.h.

◆ SQRT3

#define SQRT3   1.73205080756887729352744634150587

Definition at line 33 of file resutil.h.

◆ VAR_XY

#define VAR_XY   3

Definition at line 50 of file resutil.h.

◆ VAR_XZ

#define VAR_XZ   1

Definition at line 44 of file resutil.h.

◆ VAR_YZ

#define VAR_YZ   2

Definition at line 47 of file resutil.h.