26 #ifndef __GyotoTorus_H_ 27 #define __GyotoTorus_H_ 35 namespace Astrobj {
class Torus; }
75 Torus(const Torus& ) ;
126 virtual void
spectrum(SmartPointer<Spectrum::Generic>);
136 virtual void
opacity(SmartPointer<Spectrum::Generic>);
144 virtual double
rMax();
149 virtual double operator()(double const coord[4]) ;
150 virtual double deltaMax(double*);
153 virtual void
getVelocity(double const pos[4], double vel[4]) ;
156 virtual double
emission(double nu_em, double dsem, double coord_ph[8],
157 double coord_obj[8]=NULL) const ;
160 double c_ph[8], double c_obj[8]=NULL) const;
162 virtual double
transmission(double nuem, double dsem, double coord[8]) const ;
virtual SmartPointer< Spectrum::Generic > opacity() const
Get Torus::opacity_.
#define GYOTO_OBJECT
Declare class::properties and class::getProperties()
Definition: GyotoObject.h:83
virtual SmartPointer< Spectrum::Generic > spectrum() const
Get Torus::spectrum_.
virtual double integrateEmission(double nu1, double nu2, double dsem, double c_ph[8], double c_obj[8]=NULL) const
∫ν1ν2 Iν dν (or jν)
double c_
Large Radius.
Definition: GyotoTorus.h:61
SmartPointer< Spectrum::Generic > opacity_
Absorption law.
Definition: GyotoTorus.h:64
virtual double transmission(double nuem, double dsem, double coord[8]) const
Transmission: exp( αν * dsem )
Optically thin or thick torus in circular rotation.
Definition: GyotoTorus.h:49
virtual double emission(double nu_em, double dsem, double coord_ph[8], double coord_obj[8]=NULL) const
Specific intensity Iν
virtual double rMax()
Get maximal distance from center of coordinate system.
Astronomical objects defined bya a potential/distance.
double largeRadius() const
virtual double emission(double nu_em, double dsem, double coord_ph[8], double coord_obj[8]=NULL) const
Specific intensity Iν
virtual void getVelocity(double const pos[4], double vel[4])
Fluid velocity field.
virtual double rMax()
Get maximal distance from center of coordinate system.
Spectrum of a simple object (e.g. Star)
Namespace for the Gyoto library.
Definition: GyotoAstrobj.h:43
Pointers performing reference counting.
Definition: GyotoProperty.h:41
SmartPointer< Spectrum::Generic > spectrum_
Emission law.
Definition: GyotoTorus.h:63
Astronomical objects defined bya a potential/distance.
Definition: GyotoStandardAstrobj.h:84
virtual double integrateEmission(double nu1, double nu2, double dsem, double c_ph[8], double c_obj[8]=NULL) const
∫ν1ν2 Iν dν (or jν)
double smallRadius() const
virtual Torus * clone() const
"Virtual" copy constructor