3. Rar class

class fermihalos.Rar(param: ndarray, dens_func: bool = False, nu_func: bool = False, particles_func: bool = False, lambda_func: bool = False, press_func: bool = False, n_func: bool = False, circ_vel_func: bool = False, accel_func: bool = False, deg_var: bool = False, cutoff_var: bool = False, temp_var: bool = False, chemical_func: bool = False, cutoff_func: bool = False, temperature_func: bool = False, log_dens_slope_func: bool = False, core_func: bool = False, plateau_func: bool = False, maximum_r: float = 1000.0, relative_tolerance: float = 5e-12, number_of_steps: int = 1025)

Extended RAR mass distribution object.

This class instantiates an object of the Rar class, which represents a fermionic dark matter halo following the extended RAR model. The constructor of this class will integrate the differential equations defining the halo, based on the input parameters stated below.

Parameters:
  • param (ndarray) – Array containing the dark matter particle mass, the degeneracy parameter, the cutoff parameter and the temperature parameter, respectively.

  • dens_func (bool, optional, default=False) – Flag allowing the computation of the density profile.

  • nu_func (bool, optional, default=False) – Flag allowing the computation of the metric potential.

  • particles_func (bool, optional, default=False) – Flag allowing the computation of the enclosed particle number.

  • lambda_func (bool, optional, default=False) – Flag allowing the computation of the lambda potential.

  • press_func (bool, optional, default=False) – Flag allowing the computation of the pressure profile.

  • n_func (bool, optional, default=False) – Flag allowing the computation of the particle number density.

  • circ_vel_func (bool, optional, default=False) – Flag allowing the computation of the circular velocity profile.

  • accel_func (bool, optional, default=False) – Flag allowing the computation of the acceleration field.

  • deg_var (bool, optional, default=False) – Flag allowing the computation of the degeneracy variable.

  • cutoff_var (bool, optional, default=False) – Flag allowing the computation of the cutoff variable.

  • temp_var (bool, optional, default=False) – Flag allowing the computation of the temperature variable.

  • chemical_func (bool, optional, default=False) – Flag allowing the computation of the chemical potential function.

  • cutoff_func (bool, optional, default=False) – Flag allowing the computation of the cutoff function.

  • temperature_func (bool, optional, default=False) – Flag allowing the computation of the temperature function.

  • log_dens_slope_func (bool, optional, default=False) – Flag allowing the computation of the logarithmic density slope function.

  • core_func (bool, optional, default=False) – Flag allowing the computation of the core function.

  • plateau_func (bool, optional, default=False) – Flag allowing the computation of the plateau function.

  • maximum_r (float, optional, default=1.0e3) – Maximum radius of integration in kpc.

  • relative_tolerance (float, optional, default=5.0e-12) – Relative tolerance used by the integrator to solve the equations.

  • number_of_steps (int, optional, default=2**10 + 1) – Number of steps used to integrate the density, pressure, and particle number density used to compute the right-hand side of the differential equations. We strongly suggest that the value of number_of_steps is greater than the minimum value 2**10 + 1 to ensure precision at the time of computing the solutions.

Variables:
  • DM_mass (float) – Float variable representing the dark matter particle mass in \(keV/c^{2}\).

  • theta_0 (float) – Float variable representing the degeneracy parameter \(\theta_{0}\) of the system.

  • W_0 (float) – Float variable representing the cutoff parameter \(W_{0}\) of the system.

  • beta_0 (float) – Float variable representing the temperature parameter \(\beta_{0}\) of the system.

  • dens_func (bool) – Boolean variable that enables the computation of the density profile of the distribution.

  • nu_func (bool) – Boolean variable that enables the computation of the metric potential.

  • particles_func (bool) – Boolean variable that enables the computation of the enclosed particle number.

  • lambda_func (bool) – Boolean variable that enables the computation of the lambda potential.

  • press_func (bool) – Boolean variable that enables the computation of the pressure profile.

  • n_func (bool) – Boolean variable that enables the computation of the particle number density.

  • circ_vel_func (bool) – Boolean variable that enables the computation of the circular velocity profile.

  • accel_func (bool) – Boolean variable that enables the computation of the Newtonian gravitational field exerted by the dark matter halo.

  • deg_var (bool) – Boolean variable that enables the computation of the degeneracy variable.

  • cutoff_var (bool) – Boolean variable that enables the computation of the cutoff variable.

  • temp_var (bool) – Boolean variable that enables the computation of the temperature variable.

  • chemical_func (bool) – Boolean variable that enables the computation of the chemical potential.

  • cutoff_func (bool) – Boolean variable that enables the computation of the cutoff energy function.

  • temperature_func (bool) – Boolean variable that enables the computation of the temperature function.

  • log_dens_slope_func (bool) – Boolean variable that enables the computation of the logarithmic density slope function.

  • core_func (bool) – Boolean variable that enables the computation of the radii of the dark matter core and its mass.

  • plateau_func (bool) – Boolean variable that enables the computation of the radii of the dark matter plateau and its density.

  • maximum_r (float) – Float variable representing the maximum radius of integration in \(kpc\).

  • relative_tolerance (float) – Float variable representing the relative tolerance used by the integrator to solve the equations.

  • number_of_steps (int) – Integer variable representing the number of steps used to integrate the density, pressure, and particle number density used to compute the right-hand side of the differential equations. We strongly suggest that the value of number_of_steps is greater than the minimum value \(2^{10} + 1\) to ensure precision at the time of computing the solutions.

  • r (float ndarray of shape [n,]) – Array of the radius where the solution was computed in \(kpc\).

  • m (float ndarray of shape [n,]) – Array of enclosed masses at the radius given in r. The units are \(M_{\odot}\).

  • nu (float ndarray of shape [n,]) – Array of metric potentials (dimensionless) at the radius given in r.

  • N (float ndarray of shape [n,]) – Array of enclosed particles number at the radius given in r.

  • nu_0 (float) – Value of the metric potential at the center of the distribution, \(\nu_{0}\).

  • P (float ndarray of shape [n,]) – Array of pressures at the radius given in r. The units are \(M_{\odot}/(kpc\ s^{2})\). It is only available if press_func is True.

  • density_n (float ndarray of shape [n,]) – Array of particles number densities at the radius given in r. The units are \(kpc^{-3}\). It is only available if n_func is True.

  • degeneracy_variable (float ndarray of shape [n,]) – Array of values of the degeneracy variable (dimensionless) at the radius given in r. It is only available if deg_var or chemical_func is True.

  • cutoff_variable (float ndarray of shape [n,]) – Array of values of the cutoff variable (dimensionless) at the radius given in r. It is only available if deg_var, cutoff_var, chemical_func or cutoff_func is True.

  • temperature_variable (float ndarray of shape [n,]) – Array of values of the temperature variable (dimensionless) at the radius given in r.

  • chemical_potential (float ndarray of shape [n,]) – Array of values of the chemical potential at the radius given in r. The units are \(keV\). It is only available if chemical_func is True.

  • cutoff (float ndarray of shape [n,]) – Array of values of the cutoff energy function at the radius given in r. The units are \(keV\). It is only available if cutoff_func is True.

  • temperature (float ndarray of shape [n,]) – Array of values of the temperature function at the radius given in r. The units are \(K\). it is only available if chemical_func, cutoff_func or temperature_func is True.

Notes

For more details see README.

Rar.mass(r: float | ndarray) ndarray

Enclosed mass profile in \(M_{\odot}\).

This function computes the enclosed mass profile of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is the mass of the self-gravtiating system.

Parameters:

r (float or ndarray) – Radius where to compute the enclosed mass

Returns:

out – Enclosed mass at r

Return type:

ndarray

Notes

Setting:

\[M(r) = \int_{0}^{r}4\pi r'^{\ 2}\rho(r')dr',\]

where \(\rho(r)\) is the density of the distribution, the method is defined as a piecewise function of 2 parts, whose expression is:

\[\begin{split}mass(r)= \begin{cases} M(r) & \text{if } r < R,\\ M(r_{\mathrm{max}}) & \text{if } r \geq R. \end{cases}\end{split}\]
Rar.density(r: float | ndarray) ndarray

Density profile in \(M_{\odot}/kpc^{3}\).

This function computes the density profile of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0. This is due to the cut-off behaviour that naturaly has the model at the edge of the system.

Parameters:

r (float or ndarray) – Radius where to compute the density

Returns:

out – Density at r

Return type:

ndarray

Raises:

NameError – If self.dens_func is False

Notes

Setting:

\[\rho(r) = \frac{2m}{h^{3}}\int f_{\mathrm{RAR}}\left(\epsilon(\vec{p}),r\right) \left(1+\frac{\epsilon(\vec{p})}{mc^{2}} \right) d^{3}p,\]

where \(c\) is the speed of light, \(h\) is the Planck’s constant, \(m\) is the dark matter particle mass, \(f_{\mathrm{RAR}}\) is the coarse-grained distribution function characterising the fermionic model, and \(\epsilon\) is the relativistic energy of a dark matter particle without its rest mass, the method is defined as a piecewise function of 2 parts, whose expression is:

\[\begin{split}density(r)= \begin{cases} \rho(r) & \text{if } r < R,\\ 0 & \text{if } r \geq R. \end{cases}\end{split}\]
Rar.metric_potential(r: float | ndarray) ndarray

Metric potential (dimensionless).

This function computes the metric potential of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes the form of \(-\lambda(r)\) the lambda potential, as imposed by the continuity condition of the metric potential.

Parameters:

r (float or ndarray) – Radius where to compute the metric potential

Returns:

out – Metric potential at r

Return type:

ndarray

Raises:

NameError – If self.nu_func is False

Notes

This function has no analytical expresion. Instead, it is the solution of the differential equation:

\[\frac{d\nu(r)}{dr} = \frac{1}{r}\left[\left(1-\frac{2GM(r)}{c^{2}r}\right)^{-1}\left(\frac{8\pi G}{c^{4}}P(r)r^{2}+1\right)-1\right],\]

where \(M(r)\) is the enclosed mass and \(P(r)\) is the pressure of the system.

Rar.particle_number(r: float | ndarray) ndarray

Enclosed particle number (dimensionless).

This function computes the enclosed particle number of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is the number of particles composing the system.

Parameters:

r (float or ndarray) – Radius where to compute the enclosed particle number

Returns:

out – Enclosed particle number at r

Return type:

ndarray

Raises:

NameError – If self.particles_func is False

Notes

Defining:

\[N(r) = \int_{0}^{r}4\pi r'^{\ 2}e^{\lambda(r')/2}n(r')dr',\]

being \(\lambda(r)\) the lambda potential and \(n(r)\) the particle number density, then the expresion for the particle number method is:

\[\begin{split}particle\_number(r)= \begin{cases} N(r) & \text{if } r < R,\\ N(r_{\mathrm{max}}) & \text{if } r \geq R. \end{cases}\end{split}\]
Rar.lambda_potential(r: float | ndarray) ndarray

Lambda potential (dimensionless).

This function computes the lambda potential of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function depending on the enclosed mass declines as \(\propto 1/r\).

Parameters:

r (float or ndarray) – Radius where to compute the lambda potential

Returns:

out – Lambda potential at r

Return type:

ndarray

Raises:

NameError – If self.lambda_func is False

Notes

The expression defining this function is:

\[\begin{split}lambda\_potential(r)= \begin{cases} -\mathrm{ln}\left[1 - \frac{2GM(r)}{c^{2}r}\right] & \text{if } r < R,\\ -\mathrm{ln}\left[1 - \frac{2GM(r_{\textrm{max}})}{c^{2}r}\right] & \text{if } r \geq R, \end{cases}\end{split}\]

where \(M(r)\) is the enclosed mass and \(P(r)\) is the pressure of the fermionic distribution.

Rar.pressure(r: float | ndarray) ndarray

Pressure profile in \(M_{\odot}/(kpc\ s^{2})\).

This function computes the pressure profile of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being R the radial size of the halo, this function takes a constant value that is 0, as expected outside a distribution, since there is no presence of matter exerting pressure.

Parameters:

r (float or ndarray) – Radius where to compute the pressure profile

Returns:

out – Pressure profile at r

Return type:

ndarray

Raises:

NameError – If self.press_func is False

Notes

Setting:

\[P(r) = \frac{2}{3h^{3}}\int f_{\mathrm{RAR}}\left(\epsilon(\vec{p}),r\right)\epsilon(\vec{p}) \frac{1+\epsilon(\vec{p})/2mc^{2}}{1+\epsilon(\vec{p})/mc^{2}}\ d^{3}p,\]

where \(c\) is the speed of light, \(h\) is the Planck’s constant, \(m\) is the dark matter particle mass, \(f_{\mathrm{RAR}}\) is the coarse-grained distribution function characterising the fermionic model, and \(\epsilon\) is the relativistic energy of a dark matter particle without its rest mass, the method is defined as a piecewise function of 2 parts whose expresion is:

\[\begin{split}pressure(r)= \begin{cases} P(r) & \text{if } r < R,\\ 0 & \text{if } r \geq R. \end{cases}\end{split}\]
Rar.n(r: float | ndarray) ndarray

Particle number density in \(kpc^{-3}\).

This function computes the particle number density of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the particle number density

Returns:

out – Particle number density at r

Return type:

ndarray

Raises:

NameError – If self.n_func is False

Notes

The expression defining this quantity is:

\[\begin{split}n(r)= \begin{cases} \frac{1}{h^{3}}\int f_{\mathrm{RAR}}(\epsilon(\vec{p}), r)d^{3}p & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where \(h\) is the Planck’s constant, \(f_{\mathrm{RAR}}\) is the coarse-grained distribution function that characterizes the fermionic model, and \(\epsilon\) is the relativistic energy of a dark matter particle without its rest mass.

Rar.circular_velocity(r: float | ndarray) ndarray

General relativistic expression of the circular velocity profile in \(km/s\).

This function computes the circular velocity profile of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\).

Parameters:

r (float or ndarray) – Radius where to compute the circular velocity profile

Returns:

out – Circular velocity profile density at r

Return type:

ndarray

Raises:

NameError – If self.circ_vel_func is False

Notes

The expression defining this function is:

\[\begin{split}circular\_velocity(r)= \begin{cases} \sqrt{\frac{1}{2}c^{2}\left[\left(\frac{8\pi G}{c^{4}}P(r)r^{2} + 1\right)\left(1 - \frac{2GM(r)}{c^{2}r}\right)^{-1} - 1\right]} & \text{if } r < R,\\ \sqrt{\frac{1}{2}c^{2}\left[\left(\frac{8\pi G}{c^{4}}P(r)r^{2} + 1\right)\left(1 - \frac{2GM(r_{\mathrm{max}})}{c^{2}r}\right)^{-1} - 1\right]} & \text{if } r \geq R, \end{cases}\end{split}\]

where \(c\) is the speed of light, \(G\) is the Newtonian gravitational constant, \(P(r)\) is the pressure of the system, and \(M(r)\) its enclosed mass.

Rar.acceleration(x: float, y: float, z: float) ndarray

Newtonian gravitational field in \((km/s)^{2}\ kpc^{-1}\).

This function computes the acceleration field of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for a given position vector \((x, y, z)\), supposing the origin of the reference system is in the center of the distribution.

Parameters:
  • x (float) – x coordinate where to compute the acceleration field

  • y (float) – y coordinate where to compute the acceleration field

  • z (float) – z coordinate where to compute the acceleration field

Returns:

out – Acceleration field for a given position vector \((x, y, z)\)

Return type:

ndarray of shape (3,)

Raises:

NameError – If self.accel_func is False

Notes

The expression defining the gravitational field is:

\[\begin{split}acceleration(x, y, z)= \begin{cases} -\frac{GM(r)}{r^{3}}\vec{r} & \text{if } r < R,\\ -\frac{GM(r_{\mathrm{max}})}{r^{3}}\vec{r} & \text{if } r \geq R, \end{cases}\end{split}\]

where \(\vec{r} = (x, y, z)\), \(r = ||\vec{r}||\), \(G\) is the Newtonian gravitational constant, and \(M(r)\) is the enclosed mass of the system.

Rar.theta(r: float | ndarray) ndarray

Degeneracy variable (dimensionless).

This function computes the degeneracy variable of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the degeneracy variable

Returns:

out – Degeneracy variable at r

Return type:

ndarray

Raises:

NameError – If self.deg_var is False

Notes

This function has the form:

\[\begin{split}theta(r)= \begin{cases} \theta_{0} - W_{0} + W(r) & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where, \(\theta_{0}\) is the degeneracy parameter, \(W_{0}\) is the cut-off parameter, and \(W(r)\) is the cut-off variable.

Rar.W(r: float | ndarray) ndarray

Cutoff variable (dimensionless).

This function computes the cutoff variable of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the cutoff variable

Returns:

out – Cutoff variable at r

Return type:

ndarray

Raises:

NameError – If self.cutoff_var is False

Notes

This function has the form:

\[\begin{split}W(r) = \begin{cases} \frac{1 + \beta_{0}W_{0} - e^{(\nu(r) - \nu_{0})/2}}{\beta_{0}} & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where \(\nu(r)\) is the metric potential, \(W_{0}\) is the cut-off parameter, \(\beta_{0}\) is the temperature parameter, and \(\nu_{0}\) is the value of the metric potential at the origin of the distribution fulfilling the continuity condition with the Schwarzschild metric at \(R\).

Rar.beta(r: float | ndarray) ndarray

Temperature variable (dimensionless).

This function computes the temperature variable of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being R the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the temperature variable

Returns:

out – Temperature variable at r

Return type:

ndarray

Raises:

NameError – If self.temp_var is False

Notes

This function has the form:

\[\begin{split}beta(r) = \begin{cases} e^{-(\nu(r) - \nu_{0})/2}\beta_{0} & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where \(\beta_{0}\) is the temperature parameter, \(\nu(r)\) is the metric potential, and \(\nu_{0}\) is the value of the metric potential at the origin of the distribution fulfilling the continuity condition with the Schwarzschild metric at \(R\).

Rar.mu(r: float | ndarray) ndarray

Chemical potential function in \(keV\).

This function computes the chemical potential function of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the chemical potential function

Returns:

out – Chemical potential function at r

Return type:

ndarray

Raises:

NameError – If self.chemical_func is False

Notes

This function has the form:

\[\begin{split}mu(r) = \begin{cases} k\cdot \theta(r)\cdot T(r) & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where \(k\) is the Boltzmann’s constant, \(\theta(r)\) is the degeneracy variable, and \(T(r)\) is the temperature profile.

Rar.e_c(r: float | ndarray) ndarray

Cutoff energy function in \(keV\).

This function computes the cutoff energy function of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the cutoff energy function

Returns:

out – Cutoff energy function at r

Return type:

ndarray

Raises:

NameError – If self.cutoff_func is False

Notes

This function has the form:

\[\begin{split}e\_c(r) = \begin{cases} k\cdot W(r)\cdot T(r) & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where \(k\) is the Boltzmann’s constant, \(W(r)\) is the cut-off variable, and \(T(r)\) is the temperature profile.

Rar.T(r: float | ndarray) ndarray

Temperature function in \(K\).

This function computes the temperature function of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\). For \(r \geq R\), being \(R\) the radial size of the halo, this function takes a constant value that is 0, as expected outside the system where there are no presence of particles.

Parameters:

r (float or ndarray) – Radius where to compute the temperature function

Returns:

out – Temperature function at r

Return type:

ndarray

Raises:

NameError – If self.temperature_func is False

Notes

This function has the form:

\[\begin{split}T(r) = \begin{cases} \frac{m c^{2}\beta(r)}{k} & \text{if } r < R,\\ 0 & \text{if } r \geq R, \end{cases}\end{split}\]

where \(m\) is the dark matter particle mass, \(c\) is the speed of light, \(k\) is the Boltzmann’s constant, and \(\beta(r)\) is the temperature variable.

Rar.logarithmic_density_slope(r: float | ndarray) ndarray

Logarithmic density slope function (dimensionless).

This function computes the logarithmic density slope function of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It is defined for every \(r > 0\).

Warning: for \(r \geq R\), being \(R\) the radial size of the halo, this function takes values arbitrarily large.

Parameters:

r (float or ndarray) – Radius where to compute the logarithmic density slope function

Returns:

out – Logarithmic density slope function at r

Return type:

ndarray

Raises:

NameError – If self.log_dens_slope_func is False

Notes

This function has the form:

\[logarithmic\_density\_slope(r) = -\frac{d\mathrm{ln}\rho(r)}{d\mathrm{ln}r} = 2 - \frac{1}{4\pi r\rho(r)}\frac{d^{2}M(r)}{dr^{2}},\]

where \(\rho(r)\) is the density profile of the distribution and \(M(r)\) is its enclosed mass.

Rar.core() Tuple[ndarray, ndarray]

Core function.

This function computes the radius and mass of the core of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It does so by using an optimization algorithm.

Parameters:

None

Returns:

out – Core radius in \(kpc\) and core mass in \(M_{\odot}\), respectively

Return type:

tuple(ndarray, ndarray)

Raises:

NameError – If self.core_func is False

Notes

The core radius \(r_{\mathrm{core}}\) is defined as the radius of the first maximum of the circular velocity profile, while the mass of the core is given by the expression:

\[M_{\mathrm{core}} = M(r_{\mathrm{core}}),\]

where \(M(r)\) is the enclosed mass profile of the system.

Rar.plateau() Tuple[ndarray, ndarray]

Plateau function.

This function computes the radius and density of the plateau of the fermionic dark matter distribution which is the solution of the differential equations for the given free parameters of the model. It does so by using an optimization algorithm.

Parameters:

None

Returns:

out – Radius in \(kpc\) and density of the plateau in \(M_{\odot}/kpc^{3}\), respectively

Return type:

tuple(ndarray, ndarray)

Raises:

NameError – If self.plateau_func is False

Notes

The plateau radius \(r_{\mathrm{plateau}}\) is defined as the radius of the minimum of the circular velocity profile, while the density of the plateau is given by the expression:

\[\rho_{\mathrm{plateau}} = \rho(r_{\mathrm{plateau}}),\]

where \(\rho(r)\) is the density profile of the system.