Class used to implement Bremsstrahlung radiative cooling de/dt ~ -n^2 T^0.5 Specifically see Goldston & Rutherford (1995) Sec.
11.5 Eq. 11.57 This can be formulated as de/dt = -C Zeff Zbar^2 ni_tot^2 Te^1/2 where C = 2 pi^2 qe^6 / (sqrt(3)(4 pi eps0)^3 me^3/2 c^3 hbar * QE * n0 tau / sqrt(T0_J)) QE = Quantum effect correction = 0.75 hbar = reduced Planck constant = h / (2pi) Zeff = (sum_i Zi^2 ni) / (sum_i Zi ni) where i refers to all ion species Zbar = ne / ni_tot where i refers to all ion species and ni_tot = sum_i ni where i refers to all ion species ne = sum_i Zi ni by quasineutrality Te = Ti = T
|
| | Bremsstrahlung () |
| |
| | ~Bremsstrahlung () override |
| |
| void | setup (const WxCryptSet &wxc) override |
| |
| const std::vector< int > & | getInputVariableIndexes (int flag) const override |
| |
| const std::vector< int > & | getOutputVariableIndexes (int flag) const override |
| |
| real | source (const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const override |
| |
| | WmApplication () |
| |
| virtual | ~WmApplication ()=default |
| |
| virtual void | setup (const WxCryptSet &wxc) |
| |
| virtual const std::vector< int > & | getAuxiliaryVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const |
| |
| virtual const std::vector< int > & | getCrossVariableIndexes (int flag=WMAPPLICATIONFLAG_NONE) const |
| |
| const std::vector< std::string > & | getBoundaryNames () const |
| |
| bool | isOnBoundary (const std::string &boundaryName) const |
| |
| bool | has (int flag) const |
| |
| virtual real | numerical_flux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const |
| |
| virtual real | internal_flux (const real *q, const real *aux, const solverVariables_t *pSV, std::vector< std::vector< real > > &internalFlux) const |
| |
| virtual real | source (const real *q, const real *aux, const elementGeometry_t *pEG, real *source) const |
| |
| virtual void | bc_q (const real *q_in, const real *aux_in, const real *aux_out, const solverVariables_t *pFV, real *q_out) const |
| | Boundary Condition Application which sets the boundary condition on ghost nodes.
|
| |
| virtual real | bcNumericalFlux (const real *q_l, const real *q_r, const real *aux_l, const real *aux_r, const solverVariables_t *pFV, real *numericalFlux) const |
| |
| virtual void | conserved_to_primitive (const real *q, const real *aux, real *w) const |
| |
| virtual void | primitive_to_conserved (const real *w, const real *aux, real *q) const |
| |
| virtual void | evaluate_function (const real *q, const real *aux, const solverVariables_t *pSV, real *result) const |
| |
| virtual void | bc_q_kinetic (const real *q_in, const real *aux_in, const solverVariables_t *pFV, real *q_out) const |
| |
| std::shared_ptr< std::string > | app_name () |
| |
| virtual const std::vector< int > & | getInputVariableIndexes (int flag=0) const |
| |
| virtual const std::vector< int > & | getOutputVariableIndexes (int flag=0) const |
| |