XGC1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
Radiation Class Reference

#include <radiation.hpp>

Inheritance diagram for Radiation:
Inheritance graph
[legend]
Collaboration diagram for Radiation:
Collaboration graph
[legend]

Public Member Functions

 Radiation ()
 
 Radiation (NLReader::NamelistReader &nlr, const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field)
 
KOKKOS_INLINE_FUNCTION void Rad_Emissivity2 (double tval_ev_in, double n0_ne_in, double &Lz, double &avgZ, double &avgZ2) const
 
KOKKOS_INLINE_FUNCTION double get_impurity_fraction (const MagneticField< DeviceType > &magnetic_field, const Grid< DeviceType > &grid, const Moments &moments, int inode, double avgZ, double avgZ2) const
 
KOKKOS_INLINE_FUNCTION double power_loss (double n, double imp_frac, double Lz, double dt) const
 
KOKKOS_INLINE_FUNCTION void f_shift_from_f_heat_torque (const VelocityGrid &vgrid, double alpha, const VGridDistribution< DeviceType > &f0_f, const VGridDistribution< DeviceType > &f0_df0g, int inode_local) const
 
KOKKOS_INLINE_FUNCTION bool out_of_bounds (const Grid< DeviceType > &grid, int inode) const
 
void apply (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, const DomainDecomposition< DeviceType > &pol_decomp, const VelocityGrid &vgrid, const Moments &moments, const View< double *, CLayout, HostType > &neu_node_dens, const VGridDistribution< DeviceType > &f0_f, const VGridDistribution< HostType > &f0_df0g, double dt)
 
- Public Member Functions inherited from Source
bool is_triggered (int step)
 

Private Attributes

double psi_min
 Inner boundary for impurity radiation. More...
 
double psi_max
 Outer boundary for impurity radiation. More...
 
View< double *, CLayout, HostTyperad_Te_ev_h
 
View< double *, CLayout, HostTyperad_n0_ne_h
 
View< double **, CLayout,
HostType
rad_Lz_h
 
View< double **, CLayout,
HostType
rad_avgZ_h
 
View< double **, CLayout,
HostType
rad_avgZ2_h
 
View< double *, CLayout,
DeviceType
rad_Te_ev
 
View< double *, CLayout,
DeviceType
rad_n0_ne
 
View< double **, CLayout,
DeviceType
rad_Lz
 
View< double **, CLayout,
DeviceType
rad_avgZ
 
View< double **, CLayout,
DeviceType
rad_avgZ2
 
double impurity_fraction
 
bool use_zeff_profile
 
bool use_fix_charge
 
double fixedZ
 
int rad_species
 
Eq::Profile< DeviceTypeeq_zeff
 

Additional Inherited Members

- Public Attributes inherited from Source
StepTrigger step_trigger
 

Constructor & Destructor Documentation

Radiation::Radiation ( )
inline
Radiation::Radiation ( NLReader::NamelistReader nlr,
const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field 
)

< Start time for impurity radiation in time steps

fixed Z for impurity - Z_Carbon –> 6, Z^2 –> 36

< Inner boundary for impurity radiation

< Outer boundary for impurity radiation

Read rad file

Here is the call graph for this function:

Member Function Documentation

void Radiation::apply ( const Grid< DeviceType > &  grid,
const MagneticField< DeviceType > &  magnetic_field,
const DomainDecomposition< DeviceType > &  pol_decomp,
const VelocityGrid vgrid,
const Moments moments,
const View< double *, CLayout, HostType > &  neu_node_dens,
const VGridDistribution< DeviceType > &  f0_f,
const VGridDistribution< HostType > &  f0_df0g,
double  dt 
)

Here is the call graph for this function:

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION void Radiation::f_shift_from_f_heat_torque ( const VelocityGrid vgrid,
double  alpha,
const VGridDistribution< DeviceType > &  f0_f,
const VGridDistribution< DeviceType > &  f0_df0g,
int  inode_local 
) const

Here is the call graph for this function:

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION double Radiation::get_impurity_fraction ( const MagneticField< DeviceType > &  magnetic_field,
const Grid< DeviceType > &  grid,
const Moments moments,
int  inode,
double  avgZ,
double  avgZ2 
) const

Here is the call graph for this function:

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION bool Radiation::out_of_bounds ( const Grid< DeviceType > &  grid,
int  inode 
) const

Here is the call graph for this function:

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION double Radiation::power_loss ( double  n,
double  imp_frac,
double  Lz,
double  dt 
) const

Here is the caller graph for this function:

KOKKOS_INLINE_FUNCTION void Radiation::Rad_Emissivity2 ( double  tval_ev_in,
double  n0_ne_in,
double &  Lz,
double &  avgZ,
double &  avgZ2 
) const

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

Eq::Profile<DeviceType> Radiation::eq_zeff
private
double Radiation::fixedZ
private
double Radiation::impurity_fraction
private
double Radiation::psi_max
private

Outer boundary for impurity radiation.

double Radiation::psi_min
private

Inner boundary for impurity radiation.

View<double**, CLayout, DeviceType> Radiation::rad_avgZ
private
View<double**, CLayout, DeviceType> Radiation::rad_avgZ2
private
View<double**, CLayout, HostType> Radiation::rad_avgZ2_h
private
View<double**, CLayout, HostType> Radiation::rad_avgZ_h
private
View<double**, CLayout, DeviceType> Radiation::rad_Lz
private
View<double**, CLayout, HostType> Radiation::rad_Lz_h
private
View<double*, CLayout, DeviceType> Radiation::rad_n0_ne
private
View<double*, CLayout, HostType> Radiation::rad_n0_ne_h
private
int Radiation::rad_species
private
View<double*, CLayout, DeviceType> Radiation::rad_Te_ev
private
View<double*, CLayout, HostType> Radiation::rad_Te_ev_h
private
bool Radiation::use_fix_charge
private
bool Radiation::use_zeff_profile
private

The documentation for this class was generated from the following files: