Kariba
Loading...
Searching...
No Matches
kariba::ShSDisk Class Reference

Class Shakura-Sunyeav disk, inherited from Radiation.hpp. More...

#include <ShSDisk.hpp>

Inheritance diagram for kariba::ShSDisk:
kariba::Radiation

Public Member Functions

 ShSDisk (size_t size=50)
 
double hdisk () const
 
double tin () const
 
double rin () const
 
double lum () const
 
void disk_spectrum ()
 
void cover_disk (double f)
 
double total_luminosity ()
 
void set_mbh (double M)
 
void set_rin (double R)
 Note: for disk r is inner radius, z is the outer radius, both are input in cm.
 
void set_rout (double R)
 
void set_luminosity (double L)
 
void set_tin_k (double T)
 
void set_tin_kev (double T)
 
void test ()
 
- Public Member Functions inherited from kariba::Radiation
 Radiation (size_t size)
 
const std::vector< double > & get_energy () const
 
const std::vector< double > & get_nphot () const
 
const std::vector< double > & get_energy_obs () const
 
const std::vector< double > & get_nphot_obs () const
 
size_t get_size () const
 
double get_volume () const
 
double integrated_luminosity (double numin, double numax)
 
void set_beaming (double theta, double speed, double doppler)
 Methods to set viewing angle, beaming and geometry of emission region.
 
void set_inclination (double theta)
 
void set_geometry (const std::string &geom, double l1, double l2)
 
void set_geometry (const std::string &geom, double l1)
 
void set_counterjet (bool flag)
 Method to include a counterjet in cyclosycnchrotron/Compton classes.
 
void test_arrays ()
 Simple method to check arrays; only meant for debugging.
 

Protected Attributes

double Tin
 Disk temperature at R=Rin in Kev.
 
double Mbh
 
double Rg
 Black hole mass in solar masses.
 
double Ldisk
 Disk luminosity in Eddington units.
 
double Hratio
 
- Protected Attributes inherited from kariba::Radiation
std::vector< double > en_phot
 array of photon energies
 
std::vector< double > num_phot
 array of number of photons in units of erg/s/Hz
 
std::vector< double > en_phot_obs
 same as above but in observer frame
 
std::vector< double > num_phot_obs
 same as above but in observer frame
 
double r
 
double z
 Dimensions of emitting region.
 
double vol
 Volume of emitting region.
 
double beta
 speed of the emitting region
 
double dopfac
 
double angle
 Viewing angle/Doppler factor of emitting region.
 
double dopnum
 Doppler boosting exponent, depends on geometry.
 
bool counterjet
 boolean switch if user wants to include counterjet emission
 
std::string geometry
 string to track geometry of emitting region
 

Friends

double disk_int (double nu, void *p)
 

Detailed Description

Class Shakura-Sunyeav disk, inherited from Radiation.hpp.

Constructor & Destructor Documentation

◆ ShSDisk()

kariba::ShSDisk::ShSDisk ( size_t  size = 50)

Constructor for the disk. No input parameters because the sized of the arrays is set automatically, and every other property needs to be handled by the setters below

Member Function Documentation

◆ cover_disk()

void kariba::ShSDisk::cover_disk ( double  f)

this method removes a fraction f from the observed disk luminosity, assuming that it was absorbed and reprocessed into some other unspecified radiative mechanism

◆ disk_spectrum()

void kariba::ShSDisk::disk_spectrum ( )

◆ hdisk()

double kariba::ShSDisk::hdisk ( ) const
inline

◆ lum()

double kariba::ShSDisk::lum ( ) const
inline

◆ rin()

double kariba::ShSDisk::rin ( ) const
inline

◆ set_luminosity()

void kariba::ShSDisk::set_luminosity ( double  L)

NOTE: the constant factor to go between inner temperature Tin and disk lunminosity Ldisk is 2 because the model uses the zero torque inner boundary condition, Kubota et al. 1998, hence the factor 2 rather than 4pi when converting between luminosity and temperature

◆ set_mbh()

void kariba::ShSDisk::set_mbh ( double  M)

◆ set_rin()

void kariba::ShSDisk::set_rin ( double  R)

Note: for disk r is inner radius, z is the outer radius, both are input in cm.

◆ set_rout()

void kariba::ShSDisk::set_rout ( double  R)

◆ set_tin_k()

void kariba::ShSDisk::set_tin_k ( double  T)

◆ set_tin_kev()

void kariba::ShSDisk::set_tin_kev ( double  T)

◆ test()

void kariba::ShSDisk::test ( )

◆ tin()

double kariba::ShSDisk::tin ( ) const
inline

◆ total_luminosity()

double kariba::ShSDisk::total_luminosity ( )

Simple integration method to integrate num_phot_obs and get the total luminosity of the disk

Friends And Related Symbol Documentation

◆ disk_int

double disk_int ( double  nu,
void *  p 
)
friend

return SD spectrum over a given radius, frequency to be integrated over radius

Member Data Documentation

◆ Hratio

double kariba::ShSDisk::Hratio
protected

Disk aspect ratio; TODO test with constant hbb or with hbb varying with disk size. Also test with just one Comptonization zone, and with one up to hbb(Rin) and another up to the end of the nozzle

◆ Ldisk

double kariba::ShSDisk::Ldisk
protected

Disk luminosity in Eddington units.

◆ Mbh

double kariba::ShSDisk::Mbh
protected

◆ Rg

double kariba::ShSDisk::Rg
protected

Black hole mass in solar masses.

◆ Tin

double kariba::ShSDisk::Tin
protected

Disk temperature at R=Rin in Kev.


The documentation for this class was generated from the following files: