32 #ifndef __GyotoDirectionalDisk_H_ 33 #define __GyotoDirectionalDisk_H_ 40 namespace Astrobj {
class DirectionalDisk; }
83 void
fillProperty(Gyoto::FactoryMessenger *fmp, Property const &p) const;
96 void file(std::string const &f);
97 std::string file() const ;
98 void averageOverAngle(bool t);
99 bool averageOverAngle()const;
101 #ifdef GYOTO_USE_CFITSIO 102 virtual void fitsRead(std::string filename_);
106 virtual void fitsWrite(std::string filename_);
119 void radius(double * pattern);
133 virtual void
copyIntensity(double const * const pattern = NULL,
134 size_t const naxes[3] = NULL);
140 virtual void copyGridRadius(double const * const pattern = NULL,
143 virtual void copyGridCosi(double const * const pattern = NULL,
146 virtual void copyGridFreq(double const * const pattern = NULL,
151 void
getIndices(size_t i[3], double const co[4], double cosi, double nu=0.) const ;
155 using ThinDisk::emission;
156 virtual double
emission(double nu_em, double dsem,
157 double c_ph[8], double c_obj[8]=NULL) const;
#define GYOTO_OBJECT
Declare class::properties and class::getProperties()
Definition: GyotoObject.h:83
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
#define size_t
If not defined in <sys/types.h>.
Definition: GyotoConfig.h:366
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 emission(double nu_em, double dsem, double c_ph[8], double c_obj[8]=NULL) const
Specific intensity Iν
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:43
double * emission_
Iν(ν, r, cosi;)
Definition: GyotoDirectionalDisk.h:65
Pointers performing reference counting.
Definition: GyotoProperty.h:41
void fillProperty(Gyoto::FactoryMessenger *fmp, Property const &p) const
Output a single Property to XML.
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
bool average_over_angle_
true to average over emission angle
Definition: GyotoDirectionalDisk.h:75
virtual double const * getGridRadius() const
Get DirectionalDisk::radius_.