hyperion.densities.AlphaDisk¶
-
class
hyperion.densities.
AlphaDisk
(mass=None, rho_0=None, rmin=None, rmax=None, p=-1, beta=-1.25, h_0=None, r_0=None, cylindrical_inner_rim=True, cylindrical_outer_rim=True, mdot=None, lvisc=None, star=None, dust=None)¶ This class implements the density structure for an alpha-accretion disk as implemented in Whitney et al. (2003), with a density given by:
where
The
parameter does not need to be set directly (although it can be), and is instead automatically calculated when you set the disk mass. The exact equation relating
to the disk mass can be found by integrating the equation for
over three dimensions and setting the result equal to the disk mass.
Once the
AlphaDisk
class has been instantiated, the parameters for the density structure can be set via attributes:>>> from hyperion.util.constants import msun, au >>> from hyperion.densities.alpha_disk import AlphaDisk >>> disk = AlphaDisk() >>> disk.mass = 2. * msun >>> disk.rmin = 0.1 * au >>> disk.rmax = 100 * au
The difference between
FlaredDisk
andAlphaDisk
is that the latter includes an extra term in the density equation () but most importantly that it allows for viscous accretion luminosity, specified either via an accretion rate, or an accretion luminosity. The relation between the accretion rate and the accretion luminosity in an infinitesimal volume is:
This is equation (4) from Whitney et al. (2003). Once integrated over the whole disk, this gives a total luminosity of:
Attributes
mass
Total disk mass (g) rho_0
Scale-factor for the disk density (g/cm^3) rmin
inner radius (cm) rmax
outer radius (cm) p
surface density power-law exponent beta
scaleheight power-law exponent h_0
scaleheight of the disk at r_0
(cm)r_0
radius at which h_0
is defined (cm)cylindrical_inner_rim
Whether the inner edge of the disk should be defined as a truncation in cylindrical or spherical polar coordinates cylindrical_outer_rim
Whether the outer edge of the disk should be defined as a truncation in cylindrical or spherical polar coordinates mdot
accretion rate (g/s) lvisc
viscous accretion luminosity (ergs/s) star
central star instance (needs mass
andradius
attributes)dust
dust properties (filename or dust object) Methods
density
(grid)Return the density grid midplane_cumulative_density
(r)Find the cumulative column density as a function of radius. vertical_cumulative_density
(r, theta)Find the cumulative column density as a function of theta. accretion_luminosity
(grid)Return the viscous accretion luminosity grid Methods (detail)
-
density
(grid)¶ Return the density grid
Parameters: - grid :
SphericalPolarGrid
orCylindricalPolarGrid
instance. The spherical or cylindrical polar grid object containing information about the position of the grid cells.
Returns: - rho : np.ndarray
A 3-dimensional array containing the density of the disk inside each cell. The shape of this array is the same as
grid.shape
.
- grid :
-
midplane_cumulative_density
(r)¶ Find the cumulative column density as a function of radius.
The cumulative density is measured outwards from the origin, and in the midplane.
Parameters: - r : np.ndarray
Array of values of the radius up to which to tabulate the cumulative density.
Returns: - rho : np.ndarray
Array of values of the cumulative density.
-
vertical_cumulative_density
(r, theta)¶ Find the cumulative column density as a function of theta.
Parameters: - r : float
The spherical radius at which to calculate the cumulative density.
- theta : np.ndarray
The theta values at which to tabulate the cumulative density.
Returns: - rho : np.ndarray
Array of values of the cumulative density.
-
accretion_luminosity
(grid)¶ Return the viscous accretion luminosity grid
Parameters: - grid :
SphericalPolarGrid
orCylindricalPolarGrid
instance. The spherical or cylindrical polar grid object containing information about the position of the grid cells.
Returns: - lvisc : np.ndarray
A 3-dimensional array containing the viscous accretion luminosity of the disk inside each cell. The shape of this array is the same as
grid.shape
.
- grid :
-