XGCa
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | Public Attributes | List of all members
Equilibrium< Device > Class Template Reference

#include <equil.hpp>

Public Member Functions

 Equilibrium (double eq_min_r, double eq_max_r, double eq_min_z, double eq_max_z, double eq_x_psi, double epsil_psi_in, double eq_x_r, double eq_x_slope, double eq_x_z, double eq_x2_r, double eq_x2_slope, double eq_x2_z, double eq_x2_psi, double eq_axis_r, double eq_axis_z, int eq_mpsi)
 
 Equilibrium (PsiOption psi_opt)
 
 Equilibrium ()
 
KOKKOS_INLINE_FUNCTION bool is_in_region_1_or_2 (double r, double z, double psi) const
 
KOKKOS_INLINE_FUNCTION void check_boundaries (const Simd< double > &r, const Simd< double > &z, Simd< bool > &rz_outside) const
 
void set_decay_factors (double out_decay_factor_in, double priv_flux_decay_factor_in, double out_decay_width_in, double priv_flux_decay_width_in, bool set_xpt2_in)
 

Public Attributes

double min_r
 Minimum r. More...
 
double max_r
 Maximum r. More...
 
double min_z
 Minimum z. More...
 
double max_z
 Maximum z. More...
 
double xpt_psi
 Psi coordinate of 1st X-point. More...
 
double epsil_psi
 Not sure? More...
 
double xpt_r
 r coordinate of 1st X-point More...
 
double xpt_slope
 Slope (which slope?) at 1st X-point. More...
 
double xpt_z
 z coordinate of 1st X-point More...
 
double xpt2_r
 r coordinate of 2nd X-point More...
 
double xpt2_slope
 Slope (which slope?) at 2nd X-point. More...
 
double xpt2_z
 z coordinate at 2nd X-point More...
 
double xpt2_psi
 psi coordinate at 2nd X-point More...
 
double axis_r
 r coordinate of axis More...
 
double axis_z
 z coordinate of axis More...
 
int mpsi
 Not sure? More...
 
double out_decay_factor
 profiles decay exponentially to f(sml_outpsi)/decay_factor for psi>sml_outpsi More...
 
double priv_flux_decay_factor
 profiles decay exponentially to f(sml_outpsi)/decay_factor in priv. flux region More...
 
double out_decay_width
 width for exponential decay for psi>sml_outpsi More...
 
double priv_flux_decay_width
 width for exponential decay in private flux region More...
 
bool set_xpt2
 whether xpt2 is set More...
 

Constructor & Destructor Documentation

template<class Device >
Equilibrium< Device >::Equilibrium ( double  eq_min_r,
double  eq_max_r,
double  eq_min_z,
double  eq_max_z,
double  eq_x_psi,
double  epsil_psi_in,
double  eq_x_r,
double  eq_x_slope,
double  eq_x_z,
double  eq_x2_r,
double  eq_x2_slope,
double  eq_x2_z,
double  eq_x2_psi,
double  eq_axis_r,
double  eq_axis_z,
int  eq_mpsi 
)

Constructor for equilibrium class

template<class Device >
Equilibrium< Device >::Equilibrium ( PsiOption  psi_opt)
inline
template<class Device >
Equilibrium< Device >::Equilibrium ( )
inline

Member Function Documentation

template<class Device >
KOKKOS_INLINE_FUNCTION void Equilibrium< Device >::check_boundaries ( const Simd< double > &  r,
const Simd< double > &  z,
Simd< bool > &  rz_outside 
) const

Check whether vector of (r,z) locations is outside of the equilibrium

Parameters
[in]rr coordinates
[in]zz coordinates
[out]rz_outsideWhether they are outside or not
template<class Device >
KOKKOS_INLINE_FUNCTION bool Equilibrium< Device >::is_in_region_1_or_2 ( double  r,
double  z,
double  psi 
) const

Check whether a location is in region 1 or 2 of the tokamak

Parameters
[in]rr coordinate
[in]zz coordinate
[in]psipsi coordinate
Returns
True if the location is in region 1 or 2
template<class Device >
void Equilibrium< Device >::set_decay_factors ( double  out_decay_factor_in,
double  priv_flux_decay_factor_in,
double  out_decay_width_in,
double  priv_flux_decay_width_in,
bool  set_xpt2_in 
)

Assigns factors needed for eq profile calculations

Member Data Documentation

template<class Device >
double Equilibrium< Device >::axis_r

r coordinate of axis

template<class Device >
double Equilibrium< Device >::axis_z

z coordinate of axis

template<class Device >
double Equilibrium< Device >::epsil_psi

Not sure?

template<class Device >
double Equilibrium< Device >::max_r

Maximum r.

template<class Device >
double Equilibrium< Device >::max_z

Maximum z.

template<class Device >
double Equilibrium< Device >::min_r

Minimum r.

template<class Device >
double Equilibrium< Device >::min_z

Minimum z.

template<class Device >
int Equilibrium< Device >::mpsi

Not sure?

template<class Device >
double Equilibrium< Device >::out_decay_factor

profiles decay exponentially to f(sml_outpsi)/decay_factor for psi>sml_outpsi

template<class Device >
double Equilibrium< Device >::out_decay_width

width for exponential decay for psi>sml_outpsi

template<class Device >
double Equilibrium< Device >::priv_flux_decay_factor

profiles decay exponentially to f(sml_outpsi)/decay_factor in priv. flux region

template<class Device >
double Equilibrium< Device >::priv_flux_decay_width

width for exponential decay in private flux region

template<class Device >
bool Equilibrium< Device >::set_xpt2

whether xpt2 is set

template<class Device >
double Equilibrium< Device >::xpt2_psi

psi coordinate at 2nd X-point

template<class Device >
double Equilibrium< Device >::xpt2_r

r coordinate of 2nd X-point

template<class Device >
double Equilibrium< Device >::xpt2_slope

Slope (which slope?) at 2nd X-point.

template<class Device >
double Equilibrium< Device >::xpt2_z

z coordinate at 2nd X-point

template<class Device >
double Equilibrium< Device >::xpt_psi

Psi coordinate of 1st X-point.

template<class Device >
double Equilibrium< Device >::xpt_r

r coordinate of 1st X-point

template<class Device >
double Equilibrium< Device >::xpt_slope

Slope (which slope?) at 1st X-point.

template<class Device >
double Equilibrium< Device >::xpt_z

z coordinate of 1st X-point


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