Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 19 additions & 19 deletions cherab/core/atomic/interface.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -38,100 +38,100 @@ cdef class AtomicData:

cpdef IonisationRate ionisation_rate(self, Element ion, int charge):
"""
Electron impact ionisation rate for a given species in m^3/s.
Electron impact ionisation rate for a given species in m\\ :sup:`3`/s.
"""

raise NotImplementedError("The ionisation_rate() virtual method is not implemented for this atomic data source.")

cpdef RecombinationRate recombination_rate(self, Element ion, int charge):
"""
Recombination rate for a given species in m^3/s.
Recombination rate for a given species in m\\ :sup:`3`/s.
"""

raise NotImplementedError("The recombination_rate() virtual method is not implemented for this atomic data source.")

cpdef ThermalCXRate thermal_cx_rate(self, Element donor_ion, int donor_charge, Element receiver_ion, int receiver_charge):
"""
Thermal charge exchange effective rate coefficient for a given donor and receiver species in m^3/s.
Thermal charge exchange effective rate coefficient for a given donor and receiver species in m\\ :sup:`3`/s.
"""

raise NotImplementedError("The thermal_cx_rate() virtual method is not implemented for this atomic data source.")

cpdef list beam_cx_pec(self, Element donor_ion, Element receiver_ion, int receiver_charge, tuple transition):
"""
A list of Effective charge exchange photon emission coefficient for a given donor (beam) in W.m^3.
A list of Effective charge exchange photon emission coefficient for a given donor (beam) in W m\\ :sup:`3`.
"""

raise NotImplementedError("The cxs_rates() virtual method is not implemented for this atomic data source.")
raise NotImplementedError("The beam_cx_pec() virtual method is not implemented for this atomic data source.")

cpdef BeamStoppingRate beam_stopping_rate(self, Element beam_ion, Element plasma_ion, int charge):
"""
Beam stopping coefficient for a given beam and target species in m^3/s.
Beam stopping coefficient for a given beam and target species in m\\ :sup:`3`/s.
"""

raise NotImplementedError("The beam_stopping() virtual method is not implemented for this atomic data source.")
raise NotImplementedError("The beam_stopping_rate() virtual method is not implemented for this atomic data source.")

cpdef BeamPopulationRate beam_population_rate(self, Element beam_ion, int metastable, Element plasma_ion, int charge):
"""
Dimensionless Beam population coefficient for a given beam and target species.
"""

raise NotImplementedError("The beam_population() virtual method is not implemented for this atomic data source.")
raise NotImplementedError("The beam_population_rate() virtual method is not implemented for this atomic data source.")

cpdef BeamEmissionPEC beam_emission_pec(self, Element beam_ion, Element plasma_ion, int charge, tuple transition):
"""
The beam photon emission coefficient for a given beam and target species
and a given transition in W.m^3.
and a given transition in W m\\ :sup:`3`.
"""

raise NotImplementedError("The beam_emission() virtual method is not implemented for this atomic data source.")
raise NotImplementedError("The beam_emission_pec() virtual method is not implemented for this atomic data source.")

cpdef ImpactExcitationPEC impact_excitation_pec(self, Element ion, int charge, tuple transition):
"""
Electron impact excitation photon emission coefficient for a given species in W.m^3.
Electron impact excitation photon emission coefficient for a given species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The impact_excitation() virtual method is not implemented for this atomic data source.")
raise NotImplementedError("The impact_excitation_pec() virtual method is not implemented for this atomic data source.")

cpdef RecombinationPEC recombination_pec(self, Element ion, int charge, tuple transition):
"""
Recombination photon emission coefficient for a given species in W.m^3.
Recombination photon emission coefficient for a given species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The recombination() virtual method is not implemented for this atomic data source.")
raise NotImplementedError("The recombination_pec() virtual method is not implemented for this atomic data source.")

cpdef ThermalCXPEC thermal_cx_pec(self, Element donor_ion, int donor_charge, Element receiver_ion, int receiver_charge, tuple transition):
"""
Thermal charge exchange photon emission coefficient for given donor and receiver species in W.m^3.
Thermal charge exchange photon emission coefficient for given donor and receiver species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The thermal_cx_pec() virtual method is not implemented for this atomic data source.")

cpdef TotalRadiatedPower total_radiated_power(self, Element element):
"""
The total (summed over all charge states) radiated power
in equilibrium conditions for a given species in W.m^3.
in equilibrium conditions for a given species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The total_radiated_power() virtual method is not implemented for this atomic data source.")

cpdef LineRadiationPower line_radiated_power_rate(self, Element element, int charge):
"""
Line radiated power coefficient for a given species in W.m^3.
Line radiated power coefficient for a given species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The line_radiated_power_rate() virtual method is not implemented for this atomic data source.")

cpdef ContinuumPower continuum_radiated_power_rate(self, Element element, int charge):
"""
Continuum radiated power coefficient for a given species in W.m^3.
Continuum radiated power coefficient for a given species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The continuum_radiated_power_rate() virtual method is not implemented for this atomic data source.")

cpdef CXRadiationPower cx_radiated_power_rate(self, Element element, int charge):
"""
Charge exchange radiated power coefficient for a given species in W.m^3.
Charge exchange radiated power coefficient for a given species in W m\\ :sup:`3`.
"""

raise NotImplementedError("The cx_radiated_power_rate() virtual method is not implemented for this atomic data source.")
Expand Down
58 changes: 29 additions & 29 deletions cherab/core/atomic/rates.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@ cdef class IonisationRate:
cpdef double evaluate(self, double density, double temperature) except? -1e999:
"""Returns an effective ionisation rate coefficient at the specified plasma conditions.

:param density: Electron density in m^-3.
:param density: Electron density in m\\ :sup:`-3`.
:param temperature: Electron temperature in eV.
:return: The effective ionisation rate in m^3.s^-1.
:return: The effective ionisation rate in m\\ :sup:`3` s\\ :sup:`-1`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")

Expand All @@ -57,9 +57,9 @@ cdef class RecombinationRate:
cpdef double evaluate(self, double density, double temperature) except? -1e999:
"""Returns an effective recombination rate coefficient at the specified plasma conditions.

:param density: Electron density in m^-3.
:param density: Electron density in m\\ :sup:`-3`.
:param temperature: Electron temperature in eV.
:return: The effective ionisation rate in m^3.s^-1.
:return: The effective ionisation rate in m\\ :sup:`3` s\\ :sup:`-1`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")

Expand All @@ -79,9 +79,9 @@ cdef class ThermalCXRate:
cpdef double evaluate(self, double density, double temperature) except? -1e999:
"""Returns an effective charge exchange rate coefficient at the specified plasma conditions.

:param density: Electron density in m^-3.
:param density: Electron density in m\\ :sup:`-3`.
:param temperature: Electron temperature in eV.
:return: The effective charge exchange rate in m^3.s^-1.
:return: The effective charge exchange rate in m\\ :sup:`3` s\\ :sup:`-1`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")

Expand All @@ -101,9 +101,9 @@ cdef class _PECRate:
cpdef double evaluate(self, double density, double temperature) except? -1e999:
"""Returns a photon emissivity coefficient at given conditions.

:param density: Electron density in m^-3.
:param density: Electron density in m\\ :sup:`-3`.
:param temperature: Electron temperature in eV.
:return: The effective PEC rate in W.m^3.
:return: The effective PEC rate in W m\\ :sup:`3`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")

Expand Down Expand Up @@ -145,21 +145,21 @@ cdef class ThermalCXPEC:
cpdef double evaluate(self, double electron_density, double electron_temperature, double donor_temperature) except? -1e999:
"""Returns a CX photon emissivity coefficient at given conditions.

:param electron_density: Electron density in m^-3.
:param electron_density: Electron density in m\\ :sup:`-3`.
:param electron_temperature: Electron temperature in eV.
:param donor_temperature: Donor temperature in eV.
:return: The effective CX PEC rate in W/m^3.
:return: The effective CX PEC rate in W/m\\ :sup:`3`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")


cdef class BeamCXPEC:
r""":math:`q^{eff}_{n\rightarrow n'}` [:math:`W.m^{3}`]
r""":math:`q^\mathrm{eff}_{n\rightarrow n'}` [W/m\\ :sup:`3`]

Effective emission coefficient (or rate) for a charge-exchange line corresponding to a
transition :math:`n\rightarrow n'` of ion :math:`Z^{(\alpha+1)+}` with electron donor
:math:`H^0` in metastable state :math:`m_{i}`. Equivalent to
:math:`q^{eff}_{n\rightarrow n'}` in `adf12 <http://open.adas.ac.uk/adf12>_`.
:math:`q^\mathrm{eff}_{n\rightarrow n'}` in `adf12 <http://open.adas.ac.uk/adf12>_`.

:param donor_metastable: The metastable state of the donor species for which the rate data applies.
"""
Expand All @@ -179,7 +179,7 @@ cdef class BeamCXPEC:

:param float energy: Interaction energy in eV/amu.
:param float temperature: Receiver ion temperature in eV.
:param float density: Plasma total ion density in m^-3
:param float density: Plasma total ion density in m\\ :sup:`-3`
:param float z_effective: Plasma Z-effective.
:param float b_field: Magnetic field magnitude in Tesla.
:return: The effective rate
Expand All @@ -197,7 +197,7 @@ cdef class _BeamRate:
Returns the beam coefficient for the supplied parameters.

:param energy: Interaction energy in eV/amu.
:param density: Target electron density in m^-3
:param density: Target electron density in m\\ :sup:`-3`
:param temperature: Target temperature in eV.
:return: The beam coefficient
"""
Expand All @@ -208,34 +208,34 @@ cdef class _BeamRate:


cdef class BeamStoppingRate(_BeamRate):
""":math:`S^{e, i}_{CR}` [:math:`m^3.s^{-1}`]
""":math:`S^{\\mathrm{e}, \\mathrm{i}}_\\mathrm{CR}` [m\\ :sup:`3` s\\ :sup:`-1`]

The effective collisional radiative stopping coefficient :math:`S^{e, i}_{CR}`
[:math:`m^3.s^{-1}`] for neutral atom :math:`X^0` in a mono-energetic beam by
The effective collisional radiative stopping coefficient :math:`S^{\\mathrm{e}, \\mathrm{i}}_\\mathrm{CR}`
[m\\ :sup:`3` s\\ :sup:`-1`] for neutral atom :math:`X^0` in a mono-energetic beam by
fully stripped ions :math:`Y^i` and their electrons.

Equivalent to :math:`S^{e, i}_{CR}` as defined in ADAS `adf21 <http://open.adas.ac.uk/adf21>`_.
Equivalent to :math:`S^{\\mathrm{e}, \\mathrm{i}}_\\mathrm{CR}` as defined in ADAS `adf21 <http://open.adas.ac.uk/adf21>`_.
"""
pass


cdef class BeamPopulationRate(_BeamRate):
""":math:`bmp(X^0(m_i))` [dimensionless]
""":math:`\\mathrm{bmp}(X^0(m_i))` [dimensionless]

Relative beam population of excited state :math:`m_i` over ground state for atom :math:`X^0`, :math:`bmp(X^0(m_i))`.
Relative beam population of excited state :math:`m_i` over ground state for atom :math:`X^0`, :math:`\\mathrm{bmp}(X^0(m_i))`.

The rate :math:`bmp(X^0(m_i))` is equivalent to the :math:`BMP` rate as defined in
The rate :math:`\\mathrm{bmp}(X^0(m_i))` is equivalent to the :math:`BMP` rate as defined in
`adf22 <http://open.adas.ac.uk/adf22>`_ and is dimensionless.
"""
pass


cdef class BeamEmissionPEC(_BeamRate):
""":math:`bme(X^0(m_i))` [:math:`W.m^3`]
""":math:`\\mathrm{bme}(X^0(m_i))` [W m\\ :sup:`3`]

The effective beam emission coefficient, :math:`bme(X^0(m_i))`.
The effective beam emission coefficient, :math:`\\mathrm{bme}(X^0(m_i))`.

The rate :math:`bme(X^0(m_i))` is equivalent to the :math:`BME` rate as defined in
The rate :math:`\\mathrm{bme}(X^0(m_i))` is equivalent to the :math:`BME` rate as defined in
`adf22 <http://open.adas.ac.uk/adf22>`_.
"""
pass
Expand All @@ -260,10 +260,10 @@ cdef class TotalRadiatedPower():
"""
Evaluate the total radiated power rate at the given plasma conditions.

:param float electron_density: Electron density in m^-3.
:param float electron_density: Electron density in m\\ :sup:`-3`.
:param float electron_temperature: Electron temperature in eV.

:return: The total radiated power rate in W.m^3.
:return: The total radiated power rate in W.m\\ :sup:`3`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")

Expand All @@ -288,10 +288,10 @@ cdef class _RadiatedPower:
"""
Evaluate the radiated power at the given plasma conditions.

:param float density: Electron density in m^-3.
:param float density: Electron density in m\\ :sup:`-3`.
:param float temperature: Electron temperature in eV.

:return: The radiated power rate in W.m^3.
:return: The radiated power rate in W m\\ :sup:`3`.
"""
raise NotImplementedError("The evaluate() virtual method must be implemented.")

Expand Down Expand Up @@ -345,7 +345,7 @@ cdef class FractionalAbundance:
"""
Evaluate the fractional abundance of this ionisation stage at the given plasma conditions.

:param float electron_density: Electron density in m^-3.
:param float electron_density: Electron density in m\\ :sup:`-3`.
:param float electron_temperature: Electron temperature in eV.

:return: Fractional abundance.
Expand Down
11 changes: 6 additions & 5 deletions cherab/core/beam/model.pyx
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ cdef class BeamModel:

Models implementing this method must add their spectral response to the
supplied spectrum object. The spectrum units are spectral radiance per
meter (W/m^3/str/nm).
meter (W/m\\ :sup:`3`/str/nm).

:param beam_point: Point in beam space.
:param plasma_point: Point in plasma space.
Expand Down Expand Up @@ -187,10 +187,11 @@ cdef class BeamAttenuator:

The point is specified in beam space.

:param x: x coordinate in meters.
:param y: y coordinate in meters.
:param z: z coordinate in meters.
:return: Density in m^-3.
:param float x: x coordinate in meters.
:param float y: y coordinate in meters.
:param float z: z coordinate in meters.
:return: Density in m\\ :sup:`-3`.
:rtype: float
"""
raise NotImplementedError("Virtual function density not defined.")

Expand Down
Loading