Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nlte and p1 model rebase #239

Draft
wants to merge 18 commits into
base: main
Choose a base branch
from
Draft

Nlte and p1 model rebase #239

wants to merge 18 commits into from

Conversation

malamast
Copy link
Contributor

developments for the nlte case for Argon and P1 radiation model.

Specifically, a new class called RadiativeDecay derived from Reaction has been added. This class deals with radiative decay reactions which are different from standard Arrhenius-type reactions. In RediativeDecay we calculate the get temperature and number densities as arguments, then we evaluate the number densities of the internal levels of a lumped species assuming Boltzmann distributed levels. Then, we calculate the escape factors for each transition and finally, we evaluate the effective Einstein A coefficient for the radiative reaction between lumped species. Changes also needed to be made in chemistry.cpp because the new class takes different arguments.

A new class called FieldInterpolator has been added. This is to convert the solution from a DG finite element collection (FEC) to an H1 FEC and vice versa. This is used in the solution of radiation transport and can be used also in the electromagnetics solver.

Developments for the P1 model. A new class was added in radiation.hpp. This is to handle radiation transport with the P1 model. The call for the P1 model is done in Mul2phys.cpp before the SolveStep. The used defines how after we solve the P1 equations. It does not support the evaluation of the radiation source term at internal rk substeps.

…odduc due to interpolation error so we force this value to zero in face_integrator.cpp and BCintegrator.cpp. We also check for negative values at the end of the iteration with Check_undershoot. undershoot can occur due to discretisation error in the solution of the transport equation. The use of a TVD scheme could mitigate this effect.
… electron number density approaches zero at remote regions and Te goes to inf. We need to think how to address this one.
…field is to be read by the P1 stand-alone code.
…s been modified to add options for the P1 model. some h5 files related to P1 have been added to test/rad-data
…tions. It is a low level class. Currently it can huddle specific reactions for our specific chemistry model like Ar(4p) -> Ar(r), Ar(4p) -> Ar(m), and Ar(r) -> Ar(g). It calculates the effective Einstein A coefficients for these reactions based on the A coef of the transitions involved with these lumped species. For the number densities of the internal states, we just assume that they are bolzmann distributed at a given Te evaluated by the model. The method also calculates the escape factors and consider them in the evaluation of the effective A coef.
… SetStateIndices and SetSpeciesIndices in class GasMixture to set an idenx system for the sate variables and species variables. These indeces are used in GasMixture and derived classes.
…changes in h5ReadTable. h5ReadTable now gets groupName as an extra argument.
… radiation_ class that was causing some tests to fail.
…diation model that caused some tests to fail.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant