32 #ifndef __GyotoDirectionalDisk_H_
33 #define __GyotoDirectionalDisk_H_
40 namespace Astrobj {
class DirectionalDisk; }
90 #ifdef GYOTO_USE_CFITSIO
91 virtual void fitsRead(std::string filename_);
95 virtual void fitsWrite(std::string filename_);
108 void radius(double * pattern);
122 virtual void
copyIntensity(double const * const pattern = NULL,
123 size_t const naxes[3] = NULL);
129 virtual void copyGridRadius(double const * const pattern = NULL,
132 virtual void copyGridCosi(double const * const pattern = NULL,
135 virtual void copyGridFreq(double const * const pattern = NULL,
144 void
getIndices(size_t i[3], double const co[4], double cosi, double nu=0.) const ;
149 virtual double
emission(double nu_em, double dsem,
150 double c_ph[8], double c_obj[8]) const;
153 #ifdef GYOTO_USE_XERCES
154 virtual void
fillElement(FactoryMessenger *fmp) const ;
Pointers performing reference counting.
Definition: GyotoSmartPointer.h:51
virtual double const * getGridCosi() const
Get DirectionalDisk::cosi_.
size_t nnu_
Number of frequencies provided in DirectionalDisk::emission_.
Definition: GyotoDirectionalDisk.h:71
virtual double const * getGridFreq() const
Get DirectionalDisk::freq_.
virtual void copyIntensity(double const *const pattern=NULL, size_t const naxes[3]=NULL)
void getIndices(size_t i[3], double const co[4], double cosi, double nu=0.) const
Get emission_ cell corresponding to position co[4].
std::string filename_
Optional FITS file name containing the arrays.
Definition: GyotoDirectionalDisk.h:59
virtual double emission(double nu_em, double dsem, double coord_ph[8], double coord_obj[8]=NULL) const
Specific intensity Iν
#define size_t
If not defined in .
Definition: GyotoConfig.h:305
size_t ni_
Number of direction cosine.
Definition: GyotoDirectionalDisk.h:72
virtual DirectionalDisk * clone() const
Cloner.
virtual void getIntensityNaxes(size_t naxes[3]) const
Get DirectionalDisk::nnu_, DirectionalDisk::ni_, and DirectionalDisk::nr_.
double * cosi_
Direction cosine vector.
Definition: GyotoDirectionalDisk.h:68
Geometrically thin disk read from FITS file.
Definition: GyotoDirectionalDisk.h:56
virtual double const * getIntensity() const
Get DirectionalDisk::emission_.
Geometrically thin disks and rings.
Definition: GyotoThinDisk.h:68
Geometrically thin disks and rings.
Namespace for the Gyoto library.
Definition: GyotoAstrobj.h:42
virtual void setParameters(FactoryMessenger *fmp)
Main loop in Subcontractor_t function.
virtual void fillElement(FactoryMessenger *fmp) const
Fill the generic XML bits.
double * emission_
Iν(ν, r, cosi;)
Definition: GyotoDirectionalDisk.h:65
virtual double emission(double nu_em, double dsem, double c_ph[8], double c_obj[8]) const
Specific intensity Iν
virtual int setParameter(std::string name, std::string content, std::string unit)
Set parameter by name.
void setEmission(double *pattern)
Set DirectionalDisk::emission_.
double * freq_
Frequencies vector.
Definition: GyotoDirectionalDisk.h:69
size_t nr_
Number of radius values.
Definition: GyotoDirectionalDisk.h:73
double * radius_
Radius vector.
Definition: GyotoDirectionalDisk.h:67
virtual double const * getGridRadius() const
Get DirectionalDisk::radius_.