Class used to implement a genaral C n^alpha_n T^alpha_T radiative cooling de/dt = - C n^alpha_n T^alpha_T where alpha_n and alpha_T are exponents Normalizing this equation, you can work out, in normalized units (dropping tildes), you get de/dt = - C n T^4 if C0 = 1/tau n_0^(1 - alpha_n) T_0^(1-alpha_T)
More...
Class used to implement a genaral C n^alpha_n T^alpha_T radiative cooling de/dt = - C n^alpha_n T^alpha_T where alpha_n and alpha_T are exponents Normalizing this equation, you can work out, in normalized units (dropping tildes), you get de/dt = - C n T^4 if C0 = 1/tau n_0^(1 - alpha_n) T_0^(1-alpha_T)
A specific case that can be of blackbody radiative cooling, where alpha_n = 1 and alpha_T = 4 de/dt = - C n T^4 This can be related to a volumetric cooling rate defined in Mikellides MRNAS2011 de/dt = - a c rho chi_p T^4 Here: a = Stefan's constant, a = 4 sigma / c = 7.565767E-16 [J m^-3 K^-4] / kB^4 where kB = 1.380649E-23 J K^-1 to express a in units of [m^-3 J^-3] c = speed of light [m s^-1] rho = mass density [kg m^-3] chi_p = mean Planck opacity [m^2 kg^-1] such that photon mean-free-path is 1/chi_p T = temperature in [J] This gives units of [W m^-3] for de/dt Equating this formulation of de/dt = - C n T^4 for a chosen C C = a c rho chi_p / n * chosen_factor [J^-3 s^-1] This C constant is passed into this class and should be normalized (multiplied by T0_J^3 * tau)
One can also interpret C in terms of an inverse Boltzmann number where 1/B0 = eps_B * sigma * T_B^3 / (rho_B * cp_B * V_B) where eps_B, T_B, rho_B, cp_B and V_B are some Boltzmann reference surface emissivity, temperature, density, specific heat constant a pressure, and velocity. Then C = 1/B0 / (T0_J^3 / tau).
Another case is T/n radiative cooling, where alpha_n = -1 and alpha_T = 1 In this case C0 looks like 1/tau n_0^2, which in SI units would be m^-6 s^-1
|
| GeneralizednT () |
|
| ~GeneralizednT () 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 |
|