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,_LightMassModelMass 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_circularlight_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
DiskBulgeexcept thattotal_massis 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
Parameterattributes 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_componentis 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
ModelSetinput 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
ModelSetinput to be able to apply the pressure support correction due to the gas turbulence.