WARPXM v1.10.0
Loading...
Searching...
No Matches
wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient Class Reference

This diffusion coefficient class calculates QL diffusion coefficients based on integrals over wavenumber space of certain classes of waves the waves are classified by dispersion relations which are app-specific. More...

#include <calc_diffusion_coefficient.h>

Inheritance diagram for wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient:
wxm::dfem::variable_adjuster::variable_adjuster_t WmPatchProcess

Detailed Description

This diffusion coefficient class calculates QL diffusion coefficients based on integrals over wavenumber space of certain classes of waves the waves are classified by dispersion relations which are app-specific.

Public Member Functions

 CalcDiffusionCoefficient ()=default
 Constructor.
 
void setup (const WxCryptSet &wxc) override
 Setup the spatial solver using the cryptset.
 
void solve (real time, variables_type &input) override
 Solves the diffusion coefficient quadrature and puts solution back into input.
 
real calcDeterminant ()
 Calculates determinant of wavenumber elements.
 
std::vector< size_t > convertToOutputIndexes (const std::vector< int > &indexes) const
 ‍**
 
- Public Member Functions inherited from wxm::dfem::variable_adjuster::variable_adjuster_t
 variable_adjuster_t ()
 Constructor.
 
void setup (const WxCryptSet &wxc) override
 Setup the spatial solver using the cryptset.
 
virtual void solve (real time, variables_type &input)=0
 applies the variable adjuster to input
 
std::vector< wxm::array::patch_array_t * > get_patch_arrays (const variables_type &in)
 
void process () override
 
virtual const std::vector< size_t > & get_input_indices () const
 
int priority () const
 Getter function for priority.
 
virtual void Barrier (const WxMsgBase &msg, const real time, variables_type &input)
 An opportunity for the variable adjuster to perform any MPI operations it needs to after solve is called.
 
- Public Member Functions inherited from WmPatchProcess
 WmPatchProcess ()
 
virtual ~WmPatchProcess ()=default
 
void step ()
 
virtual void process ()=0
 
void setPatch (const WmUnstructuredPatch *patch)
 
void setParentTaskProcessor (WmPatchProcessor *taskProcessor)
 
virtual std::string name (std::string prefix="patchedProcessor.") const
 
virtual void setup (const WxCryptSet &wxc)
 
void setParentSolver (const WmSolverBase *solver)
 
void setDt (WxStepper::time_t dt)
 
void setTime (WxStepper::time_t time)
 
WxStepper::time_t getSuggestedDt () const
 
const WmUnstructuredPatchget_patch () const
 
const WmSolverget_solver () const
 

Additional Inherited Members

- Public Types inherited from wxm::dfem::variable_adjuster::variable_adjuster_t
typedef wxm::temporal_solver::variables_type variables_type
 
- Protected Attributes inherited from wxm::dfem::variable_adjuster::variable_adjuster_t
std::vector< size_t > _var_idcs
 
std::vector< std::unique_ptr< WmApplication > > _apps
 
bool _grab_all = false
 
int _priority
 
- Protected Attributes inherited from WmPatchProcess
std::string _ppName
 
WmPatchProcessor_parentTaskProcessor
 
const WmUnstructuredPatch_patch
 
std::vector< std::string > _onSubdomains
 
WxStepper::time_t _time
 
WxStepper::time_t _dt
 
WxStepper::time_t _suggested_dt
 
WxLogStream _debStrm = WxLogger::get("warpx-root.console")->getDebugStream()
 
const WmSolverBase_parentSolver = nullptr
 

Constructor & Destructor Documentation

◆ CalcDiffusionCoefficient()

wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient::CalcDiffusionCoefficient ( )
default

Constructor.

Member Function Documentation

◆ calcDeterminant()

real wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient::calcDeterminant ( )

Calculates determinant of wavenumber elements.

◆ convertToOutputIndexes()

std::vector< size_t > wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient::convertToOutputIndexes ( const std::vector< int > &  indexes) const

‍**

◆ setup()

void wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient::setup ( const WxCryptSet wxc)
overridevirtual

Setup the spatial solver using the cryptset.

Parameters
wxcThe cryptset

Reimplemented from WmPatchProcess.

◆ solve()

void wxm::dfem::variable_adjuster::diffusion_coefficient::CalcDiffusionCoefficient::solve ( real  time,
variables_type input 
)
overridevirtual

Solves the diffusion coefficient quadrature and puts solution back into input.

Parameters
time
inputq variables, some of which are also written into

Implements wxm::dfem::variable_adjuster::variable_adjuster_t.


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