33 #ifndef __GyotoPageThorneDisk_H_ 34 #define __GyotoPageThorneDisk_H_ 41 namespace Astrobj {
class PageThorneDisk; }
99 virtual void
metric(SmartPointer<Metric::Generic>);
105 void blackBody(bool t) ;
106 bool blackBody() const ;
107 void uniFlux(bool t) ;
108 bool uniFlux() const ;
120 virtual double
emission(double nu_em, double dsem,
121 double c_ph[8], double c_obj[8]=NULL) const;
129 double c_obj[8]) const;
138 double* coord_obj_hit, double dt,
139 Astrobj::Properties* data) const;
152 virtual void
tell(Gyoto::Hook::Teller *msg);
#define GYOTO_OBJECT
Declare class::properties and class::getProperties()
Definition: GyotoObject.h:84
int blackbody_
Flag for computing BB flux (for spectra)
Definition: GyotoPageThorneDisk.h:76
SmartPointer< Spectrum::BlackBody > spectrumBB_
emission law
Definition: GyotoPageThorneDisk.h:79
double x2_
Value cached for bolometricEmission()
Definition: GyotoPageThorneDisk.h:74
void BlackbodyMdot(double v)
Set mdot_ to v, and blackbody_ to true.
#define GYOTO_OBJECT_THREAD_SAFETY
Declare virtual bool isThreadSafe() const.
Definition: GyotoObject.h:99
virtual double bolometricEmission(double nuem, double dsem, double c_obj[8]) const
Bolometric emission.
double x1_
Value cached for bolometricEmission()
Definition: GyotoPageThorneDisk.h:73
virtual void tell(Gyoto::Hook::Teller *msg)
Update PageThorneDisk::aa_.
virtual double emission(double nu_em, double dsem, double c_ph[8], double c_obj[8]=NULL) const
Not implemented Throws a Gyoto::Error.
bool uniflux_
Flag for uniform flux = 1.
Definition: GyotoPageThorneDisk.h:78
double x3_
Value cached for bolometricEmission()
Definition: GyotoPageThorneDisk.h:75
double aa_
Generic::gg_ spin parameter, monitored by tell()
Definition: GyotoPageThorneDisk.h:70
virtual void processHitQuantities(Photon *ph, double *coord_ph_hit, double *coord_obj_hit, double dt, Astrobj::Properties *data) const
processHitQuantities fills the requested data in Impact. For PageThorneDisk, only fill User4...
virtual double emission(double nu_em, double dsem, double coord_ph[8], double coord_obj[8]=NULL) const
Specific intensity Iν
virtual PageThorneDisk * clone() const
Cloner.
Geometrically thin disks and rings.
Definition: GyotoThinDisk.h:68
virtual void updateSpin()
Get spin from metric, which must be KerrBL or KerrKS.
Geometrically thin disk in Kerr metric.
Definition: GyotoPageThorneDisk.h:64
double x0_
Value cached for bolometricEmission()
Definition: GyotoPageThorneDisk.h:72
Geometrically thin disks and rings.
Namespace for the Gyoto library.
Definition: GyotoAstrobj.h:43
double mdot_
accretion rate (for BB spectrum computation)
Definition: GyotoPageThorneDisk.h:77
unsigned int Quantity_t
Type for observabke quantities.
Definition: GyotoDefs.h:73
Pointers performing reference counting.
Definition: GyotoProperty.h:45
I might listen to a Teller.
Definition: GyotoHooks.h:64
virtual SmartPointer< Metric::Generic > metric() const
Get the Metric gg_.
Gyoto::Quantity_t getDefaultQuantities()
Which quantities to compute if know was requested.
I_nu(nu, T) = cst_*2*h*nu^3/c^2/(exp(h*nu/k*T)-1.);.
double aa2_
aa_2
Definition: GyotoPageThorneDisk.h:71