MagnetizedSphericalGalaxyClusterModel#
- class pisces.models.galaxy_clusters.spherical.MagnetizedSphericalGalaxyClusterModel(filepath: str | Path, *args, **kwargs)[source]#
A spherically symmetric galaxy cluster model featuring a magnetic field.
This model extends the basic spherical galaxy cluster model to include magnetic field profiles and their effects on the cluster dynamics. In particular, the magnetic field strength is expressed via the \(\beta\) parameter defined such that
\[\beta = \frac{P_{\rm thermal}}{P_{\rm magnetic}}.\]Fields#
The following physical fields are computed and stored in the model:
Magnetized Spherical Galaxy Cluster Model Fields# Field Name
Description
Symbol
Notes
radiiRadial coordinate grid
\(r\)
gas_densityGas density profile
\(\rho_{\mathrm{gas}}(r)\)
stellar_densityStellar density profile
\(\rho_\star(r)\)
total_densityTotal density profile
\(\rho_{\mathrm{tot}}(r)\)
dark_matter_densityDark matter density profile
\(\rho_{\mathrm{DM}}(r)\)
gas_massEnclosed gas mass
\(M_{\mathrm{gas}}(<r)\)
stellar_massEnclosed stellar mass
\(M_\star(<r)\)
total_massEnclosed total mass
\(M_{\mathrm{tot}}(<r)\)
dark_matter_massEnclosed dark matter mass
\(M_{\mathrm{DM}}(<r)\)
gravitational_fieldGravitational acceleration
\(g(r)\)
gravitational_potentialGravitational potential
\(\Phi(r)\)
pressureGas pressure profile
\(P(r)\)
pressure_thermalThermal gas pressure
\(P_{\rm thermal}(r)\)
pressure_magneticMagnetic pressure
\(P_{\rm magnetic}(r)\)
temperatureGas temperature profile
\(T(r)\)
electron_densityElectron number density
\(n_e(r)\)
entropyEntropy profile
\(K(r)\)
sound_speedAdiabatic sound speed
\(c_s(r)\)
baryon_fractionBaryonic mass fraction
\(M_{\rm bary} / M_{\rm tot}\)
magnetic_fieldMagnetic field strength
\(B(r)\)
alfven_velocityAlfvén velocity
\(v_A(r)\)
beta_parameterPlasma beta (thermal / magnetic pressure)
\(\beta(r)\)
Methodology#
Note
In most respects, the methodology here mirrors that of
SphericalGalaxyClusterModelwith the addition of magnetic field profiles. For details on the various available pathways, see the documentation for that class.For a profile with \(\beta(r)\), the effect is simply to offset the necessary thermal pressure. Thus, the hydrostatic equilibrium equation is modified to account for the magnetic pressure:
\[- \rho \nabla \Phi = \nabla P = \nabla P_{\rm thermal} + \nabla P_{\rm magnetic} = \nabla \left[\left(1+\frac{1}{\beta}\right) P_{\rm thermal}\right]\]where \(P_{\rm magnetic}(r) = P_{\rm thermal}(r) / \beta(r)\). As such, the inclusion of the \(\beta\) parameter allows for a full treatment of the non-thermal pressure. The corresponding magnetic field strength is given by
\[B(r) = \sqrt{2 \beta(r) P_{\rm magnetic}(r)}.\]Methods
__init__(filepath, *args, **kwargs)Load a Pisces model from an existing HDF5 file.
add_field(name[, element_shape, units, ...])Add a new physical field to the model.
add_profile(name, profile[, overwrite])Add a new analytic profile to the model.
compute_df(species[, num_points, scale, ...])Compute the isotropic Eddington distribution function for a given species.
copy_field(old_name, new_name)Create a duplicate of an existing field under a new name.
copy_profile(old_name, new_name)Create a duplicate of an existing profile under a new name.
from_components(filepath, grid, fields, ...)Create and save a Pisces model from in-memory components.
from_density_and_total_density(...[, ...])Generate a spherical cluster model from analytic density profiles.
from_entropy_and_density(density_profile, ...)Generate a spherical cluster model from gas density and entropy profiles.
from_temperature_and_density(...[, ...])Generate a spherical galaxy cluster model from gas density and temperature profiles.
generate_particles(filename, num_particles)Convert this galaxy cluster model into a particle dataset.
get_active_hooks([names])Return all active hook classes mixed into the model.
get_all_hooks([names])Return all hook classes mixed into the model, regardless of activation status.
get_df(species)Retrieve the distribution function and energy grid for a given species.
get_field(name)Retrieve a physical field by name.
get_hook_class(hook_name)Return the hook class associated with a given hook name.
get_hook_description(hook_cls)Return the human-readable description for a given hook class.
get_hook_name(hook_cls)Return the symbolic name for a given hook class.
get_profile(name)Retrieve an analytic profile by name.
has_hook(hook)Check if a given hook is mixed into the model (regardless of activation status).
List all physical fields currently stored in the model.
List all analytic profiles currently stored in the model.
remove_field(name)Remove a physical field from the model.
remove_profile(name)Remove an analytic profile from the model.
rename_field(old_name, new_name)Rename an existing field in the model.
rename_profile(old_name, new_name)Rename an existing profile in the model.
Attributes
List of active axes in the model's grid.
Model-specific configuration settings.
The coordinate system of the model's grid.
Return (E, DF) for the dark matter component.
Model field buffers.
The spatial grid of the model.
The open HDF5 file handle.
Check whether the dark matter DF is stored in the model file.
Check whether the stellar DF is stored in the model file.
Logger interface for this model.
Model metadata dictionary.
The path to the model's HDF5 file.
Model profile objects.
Return (E, DF) for the stellar component.