LinearDiskBulge
- class dysmalpy.models.LinearDiskBulge(invq_disk=5, invq_bulge=1, noord_flat=False, light_component='disk', baryon_type='gas+stars', **kwargs)[source]
Bases:
MassModel
,_LightMassModel
Mass distribution with a disk and bulge
- Parameters:
total_mass (float) – Combined disk and bulge mass 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
baryon_type ({'gas+stars', 'stars', 'gas'}) – What type of baryons are included. Used for dlnrhogas/dlnr
Notes
This model is the exactly the same as
DiskBulge
except thattotal_mass
is in linear units instead of log.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
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
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.
- 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.