DiskBulge
- class dysmalpy.models.DiskBulge(invq_disk=5, invq_bulge=1, noord_flat=False, light_component='disk', gas_component='disk', baryon_type='gas+stars', **kwargs)[source]
Bases:
MassModel
,_LightMassModel
Mass distribution with a disk and bulge
- Parameters:
total_mass (float) – Log10 of the combined disk and bulge in solar units
r_eff_disk (float) – Effective radius of the disk in kpc
n_disk (float) – Sersic index of the disk
r_eff_bulge (float) – Effective radius of the bulge
n_bulge (float) – Sersic index of the bulge
bt (float) – Bulge-to-total mass ratio
invq_disk (float) – Effective radius to effective height ratio for the disk
invq_bulge (float) – Effective radius to effective height ratio for the bulge
noord_flat (bool) – If True, use circular velocity profiles derived in Noordermeer 2008. If False, circular velocity is derived through
v_circular
light_component ({'disk', 'bulge', 'total'}) – Which component to use as the flux profile
gas_component ({'disk', 'total'}) – Which component contributes to dlnrhogas/dlnr
baryon_type ({'gas+stars', 'stars', 'gas'}) – What type of baryons are included. Used for dlnrhogas/dlnr
Notes
This model is the combination of 2 components, a disk and bulge, each described by a
Sersic
. The model is parametrized such that the B/T is a free parameter rather than the individual masses of the disk and bulge.Attributes Summary
Names of the parameters that describe models of this type.
Methods Summary
Total circular velocity as a function of radius
Circular velocity of the bulge as a function of radius
Circular velocity of the disk as a function of radius
Asymmetric drift term for the combined disk and bulge
Disk+Bulge total enclosed mass
Enclosed mass of the bulge component
Enclosed mass of the disk component
evaluate
(r, total_mass, r_eff_disk, n_disk, ...)Disk+Bulge mass surface density
Conversion from mass to light as a function of radius
rhogas
(r)Mass density as a function of radius (if noord_flat; otherwise surface density)
rhogas_bulge
(r)Mass density of the bulge as a function of radius (if noord_flat; otherwise surface density)
rhogas_disk
(r)Mass density of the disk as a function of radius (if noord_flat; otherwise surface density)
velocity_profile
(r, modelset)Total rotational velocity due to the disk+bulge
velocity_profile_bulge
(r, modelset)Rotational velocity due to the bulge
velocity_profile_disk
(r, modelset)Rotational velocity due to the disk
Attributes Documentation
- bt = DysmalParameter('bt', value=0.2, bounds=(0, 1), prior=<dysmalpy.parameters.UniformPrior object>)
- mass_to_light = DysmalParameter('mass_to_light', value=1.0, fixed=True, prior=<dysmalpy.parameters.UniformPrior object>)
- n_bulge = DysmalParameter('n_bulge', value=4.0, fixed=True, bounds=(0, 8), prior=<dysmalpy.parameters.UniformPrior object>)
- n_disk = DysmalParameter('n_disk', value=1.0, fixed=True, bounds=(0, 8), prior=<dysmalpy.parameters.UniformPrior object>)
- noord_flat
- param_names = ('total_mass', 'r_eff_disk', 'n_disk', 'r_eff_bulge', 'n_bulge', 'bt', 'mass_to_light')
Names of the parameters that describe models of this type.
The parameters in this tuple are in the same order they should be passed in when initializing a model of a specific type. Some types of models, such as polynomial models, have a different number of parameters depending on some other property of the model, such as the degree.
When defining a custom model class the value of this attribute is automatically set by the
Parameter
attributes defined in the class body.
- r_eff_bulge = DysmalParameter('r_eff_bulge', value=1.0, bounds=(0, 50), prior=<dysmalpy.parameters.UniformPrior object>)
- r_eff_disk = DysmalParameter('r_eff_disk', value=1.0, bounds=(0, 50), prior=<dysmalpy.parameters.UniformPrior object>)
- total_mass = DysmalParameter('total_mass', value=10.0, bounds=(5, 14), prior=<dysmalpy.parameters.UniformPrior object>)
- tracer = 'mass'
Methods Documentation
- static evaluate(r, total_mass, r_eff_disk, n_disk, r_eff_bulge, n_bulge, bt, mass_to_light)[source]
Disk+Bulge mass surface density
- light_profile(r)[source]
Conversion from mass to light as a function of radius
- Parameters:
r (float or array) – Radii at which to calculate the enclosed mass
- Returns:
light – Relative line flux as a function of radius
- Return type:
float or array
Notes
The resulting light profile depends on what
DiskBulge.light_component
is set to. If ‘disk’ or ‘bulge’ then only the mass associated with the disk or bulge will be converted into light. If ‘total’, then both components will be used.
- rhogas_bulge(r)[source]
Mass density of the bulge as a function of radius (if noord_flat; otherwise surface density)
- rhogas_disk(r)[source]
Mass density of the disk as a function of radius (if noord_flat; otherwise surface density)
- velocity_profile(r, modelset)[source]
Total rotational velocity due to the disk+bulge
- Parameters:
- Returns:
vrot – Rotational velocity in km/s
- Return type:
float or array
Notes
This method requires a
ModelSet
input to be able to apply the pressure support correction due to the gas turbulence.
- velocity_profile_bulge(r, modelset)[source]
Rotational velocity due to the bulge
- Parameters:
- Returns:
vrot – Rotational velocity in km/s
- Return type:
float or array
Notes
This method requires a
ModelSet
input to be able to apply the pressure support correction due to the gas turbulence.