WarpX
Public Member Functions | List of all members
FieldEnergy Class Reference

#include <FieldEnergy.H>

Inheritance diagram for FieldEnergy:
ReducedDiags

Public Member Functions

 FieldEnergy (const std::string &rd_name)
 
void ComputeDiags (int step) final
 
amrex::Real ComputeNorm2RZ (const amrex::MultiFab &field, int lev)
 Calculate the integral of the field squared in RZ. More...
 
- Public Member Functions inherited from ReducedDiags
 ReducedDiags (const std::string &rd_name)
 
virtual ~ReducedDiags ()=default
 
 ReducedDiags (const ReducedDiags &)=default
 
ReducedDiagsoperator= (const ReducedDiags &)=default
 
 ReducedDiags (ReducedDiags &&)=default
 
ReducedDiagsoperator= (ReducedDiags &&)=default
 
virtual void InitData ()
 
virtual void LoadBalance ()
 
virtual void WriteToFile (int step) const
 
void BackwardCompatibility () const
 

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...
 
bool m_write_header = false
 check if header should be written More...
 
std::string m_sep = " "
 separator in the output file More...
 
int m_precision = 14
 precision for data in the output file More...
 
std::vector< amrex::Real > m_data
 output data More...
 

Detailed Description

This class mainly contains a function that computes the field energy.

Constructor & Destructor Documentation

◆ FieldEnergy()

FieldEnergy::FieldEnergy ( const std::string &  rd_name)

constructor

Parameters
[in]rd_namereduced diags names

Member Function Documentation

◆ ComputeDiags()

void FieldEnergy::ComputeDiags ( int  step)
finalvirtual

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.

Parameters
[in]stepcurrent time step

Implements ReducedDiags.

◆ ComputeNorm2RZ()

amrex::Real FieldEnergy::ComputeNorm2RZ ( const amrex::MultiFab field,
int  lev 
)

Calculate the integral of the field squared in RZ.

Parameters
fieldThe MultiFab to be integrated
levThe refinement level
Returns
The integral

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