|
ARTEMIS
|
#include <FieldEnergy.H>
Public Member Functions | |
| FieldEnergy (std::string rd_name) | |
| virtual void | ComputeDiags (int step) override final |
| amrex::Real | ComputeNorm2RZ (const amrex::MultiFab &field, const int lev) |
| Calculate the integral of the field squared in RZ. More... | |
Public Member Functions inherited from ReducedDiags | |
| ReducedDiags (std::string rd_name) | |
| virtual | ~ReducedDiags ()=default |
| virtual void | InitData () |
| virtual void | LoadBalance () |
| virtual void | WriteToFile (int step) const |
| void | BackwardCompatibility () |
Additional Inherited Members | |
Public Attributes inherited from ReducedDiags | |
| std::string | m_path = "./diags/reducedfiles/" |
| output path (default) More... | |
| std::string | m_extension = "txt" |
| output extension (default) More... | |
| std::string | m_rd_name |
| diags name More... | |
| utils::parser::IntervalsParser | m_intervals |
| output intervals More... | |
| int | m_IsNotRestart = 1 |
| check if it is a restart run More... | |
| std::string | m_sep = " " |
| separator in the output file More... | |
| std::vector< amrex::Real > | m_data |
| output data More... | |
This class mainly contains a function that computes the field energy.
| FieldEnergy::FieldEnergy | ( | std::string | rd_name | ) |
constructor
| [in] | rd_name | reduced diags names |
|
finaloverridevirtual |
This function computes the field energy (EF): EF = sum( 1/2 * (|E|^2 * eps0 + |B|^2 / mu0) * dV ), where E is the electric field, B is the magnetic field, eps0 is the vacuum permittivity, mu0 is the vacuum permeability, dV is the cell volume (area, in 2D) and the sum is over all cells.
| [in] | step | current time step |
Implements ReducedDiags.
| amrex::Real FieldEnergy::ComputeNorm2RZ | ( | const amrex::MultiFab & | field, |
| const int | lev | ||
| ) |
Calculate the integral of the field squared in RZ.
| field | The MultiFab to be integrated |
| lev | The refinement level |