OutflowModel

class sf3dmodels.outflow.OutflowModel(pos_c, axis, z_min, z_max, dx)[source] [edit on github]

Bases: sf3dmodels.outflow.core.RandomGrid

Host class for outflow models. The grid points are generated randomly taking into account the Jet model geometry.

Available models:

Input units: SI (metres, kilograms, seconds).

Parameters:
pos_c : array_like, shape (3,)

Origin of coordinates on the axis.

axis : array_like, shape (3,)

Long axis direction, of arbitrary length. For example, an axis pointing to the z-direction: axis = [0,0,1]

z_min : scalar

Axis lower limit to compute the physical properties.

z_max : scalar

Axis upper limit to compute the physical properties. The axis extent will be [z_min, z_max].

dx : scalar

Maximum separation between two adjacent grid points. This will prevent void holes when merging this random grid into a regular grid of nodes separation = dx.

mirror : bool, optional

If True, it is assumed that the model is symmetric to the reference position pos_c. Defaults to True.

Methods Summary

reynolds86(self, width_pars[, dens_pars, …]) Outflow Model from Reynolds+1986.

Methods Documentation

reynolds86(self, width_pars, dens_pars=None, ionfrac_pars=None, temp_pars=None, v0=None, abund_pars=None, gtdratio=None, vsys=[0, 0, 0], z0=None)[source] [edit on github]

Outflow Model from Reynolds+1986.

  • See the Table 1 on Reynolds+1986 for examples on the combination of parameters and their physical interpretation.
  • See the model equations and a sketch of the jet geometry in the Notes section below.
  • The resulting Attributes depend on which parameters were set different to None.

Input and output units: SI (metres, kilograms, seconds).

Parameters:
width_pars : array_like, shape (2,)

[\(w_0\), \(\epsilon\)]: parameters to compute the Jet half-width at each \(z\).

dens_pars : array_like, shape (2,)

[\(n_0\), \(q_n\)]: parameters to compute the Jet number density.

ionfrac_pars : array_like, shape (2,)

[\(x_0\), \(q_x\)]: parameters to compute the ionized fraction of gas.

temp_pars : array_like, shape (2,)

[\(T_0\), \(q_T\)]: parameters to compute the Jet temperature.

abund_pars : array_like, shape (2,)

[\(a_0\), \(q_a\)]: parameters to compute the molecular abundance.

z0 : scalar

Normalization distance. Must be different to 0 (zero) to avoid divergences.

If None, z_max/100 is used.

Defaults to None.

v0 : scalar

Gas speed at z0. Speed normalization factor. For mass conservation: \(q_v=-q_n-2\epsilon\).

gtdratio : scalar

Gas-to-dust ratio value (mass ratio). Uniform at every point of the grid.

vsys : array_like, shape (3,)

[\(v_{0x}, v_{0y}, v_{0z}\)]: Systemic velocity to be added to the final Jet velocity field.

Defaults to [0,0,0].

Notes

Model equations:

With \(r = \sqrt{x^2 + y^2+ z^2}\),
\[ \begin{align}\begin{aligned}w(z) &= w_0(z/z_0)^\epsilon \\n_{H}(z) &= n_0(z/z_0)^{q_n} \\T(z) &= T_0(z/z_0)^{q_T} \\x(z) &= x_0(z/z_0)^{q_x} \\n_{ion}(z) &= n_{H}(z) x(z)\\a(z) &= a_0(z/z_0)^{q_a} \\v(z) &= v_0(z/z_0)^{q_v} \\\vec{v}(r) &= v(z) \hat{r}, \end{aligned}\end{align} \]

where \(q_v = -q_n-2\epsilon\) for mass conservation.

reynolds86 model

Figure 1 from Reynolds+1986. Jet geometry. Note that the \(r\) from the sketch is \(z\) in our equations.

Examples

Have a look at the examples/outflows/ folder on the GitHub repository.

The example there shows how to compute the free-free emission from a couple of outflows using RADMC-3D. Figures below, from left to right: Grid points distribution and their density; Spectral Energy Distribution; Free-free continuum image at \(\lambda=\) 1000 microns.

../_images/global_grid_dens.png ../_images/sed_outflows.png ../_images/img_outflows.png
Attributes:
density : numpy.ndarray, shape (n,)

Atomic hydrogen number density.

temperature : numpy.ndarray, shape (n,)

Gas temperature.

ionfraction : numpy.ndarray, shape (n,)

Ionized fraction of hydrogen.

density_ion : numpy.ndarray, shape (n,)

Ionized hydrogen number density: density * ionfraction.

speed : numpy.ndarray, shape (n,)

Speed.

vel : Struct,

The velocity field. Attributes: vel.x, vel.y, vel.z, shape (n, ) each.

abundance : numpy.ndarray, shape (n,)

Molecular abundance.

gtdratio : numpy.ndarray, shape (n,)

Gas-to-dust ratio.

GRID : Struct,

Grid point coordinates and number of grid points.

Attributes: GRID.XYZ, shape(3,n): [x,y,z]; GRID.NPoints, scalar.

r : numpy.ndarray, shape (n,)

Grid points distance to the outflow centre.