Cardinal
|
#include <FieldTransferBase.h>
Public Member Functions | |
FieldTransferBase (const InputParameters ¶meters) | |
~FieldTransferBase () | |
virtual void | sendDataToNek () |
Send data to Nek. More... | |
virtual void | readDataFromNek () |
Read data from Nek. More... | |
const MooseEnum & | direction () const |
Get the direction of the transfer. More... | |
Static Public Member Functions | |
static InputParameters | validParams () |
static std::map< unsigned int, std::string > | usrwrkMap () |
Protected Member Functions | |
void | fillAuxVariable (const unsigned int var_number, const double *value) |
void | addExternalVariable (const std::string name) |
void | addExternalVariable (const unsigned int slot, const std::string name) |
void | addExternalPostprocessor (const std::string name, const Real initial) |
void | checkAllocatedUsrwrkSlot (const unsigned int &u) const |
Protected Attributes | |
std::string | _variable |
Variable name (or prefix of names) to create in MOOSE to facilitate data passing. More... | |
std::vector< unsigned int > | _usrwrk_slot |
Slot in usrwrk array to use for writing data, if 'direction = to_nek'. More... | |
std::map< std::string, unsigned int > | _variable_number |
Internal number for the variable(s) created in MOOSE (name, number) More... | |
int | _n_per_surf |
Number of points on the MOOSE mesh to write per element surface. More... | |
int | _n_per_vol |
Number of points on the MOOSE mesh to write per element volume. More... | |
double * | _v_face = nullptr |
MOOSE data interpolated onto the (boundary) data transfer mesh. More... | |
double * | _v_elem = nullptr |
MOOSE data interpolated onto the (volume) data transfer mesh. More... | |
double * | _external_data = nullptr |
Scratch space to place external NekRS fields before writing into auxiliary variables. More... | |
NekRSProblem & | _nek_problem |
The NekRSProblem using the field transfer interface. More... | |
NekRSMesh * | _nek_mesh |
The underlying NekRSMesh mirror. More... | |
const MooseEnum & | _direction |
Direction of the transfer. More... | |
Static Protected Attributes | |
static std::map< unsigned int, std::string > | _field_usrwrk_map |
Base class for facilitating a data transfer between MOOSE and the NekRS code internals for a field (a variable defined at the GLL points).
FieldTransferBase::FieldTransferBase | ( | const InputParameters & | parameters | ) |
FieldTransferBase::~FieldTransferBase | ( | ) |
|
protectedinherited |
Add a postprocessor to facilitate coupling
[in] | name | postprocessor name |
[in] | initial | initial value to use for the postprocessor |
|
protected |
Add a MOOSE variable to facilitate coupling
[in] | name | variable name |
|
protected |
Add a MOOSE variable to facilitate coupling
[in] | slot | slot in usrwrk array holding this field |
[in] | name | variable name |
|
protectedinherited |
Check if a specified slot in the usrwrk array has been allocated
[in] | u | slice in usrwrk array |
|
inlineinherited |
Get the direction of the transfer.
|
protected |
Fill an outgoing auxiliary variable field with nekRS solution data
[in] | var_number | auxiliary variable number |
[in] | value | nekRS solution data to fill the variable with |
|
inlinevirtualinherited |
Read data from Nek.
Reimplemented in NekBoundaryFlux, and NekFieldVariable.
|
inlinevirtualinherited |
Send data to Nek.
Reimplemented in NekBoundaryFlux, NekVolumetricSource, NekFieldVariable, NekMeshDeformation, NekPostprocessorValue, and NekScalarValue.
|
inlinestatic |
Get the mapping of usrwrk slots to variable names for all field transfers
|
static |
|
protectedinherited |
Direction of the transfer.
|
protected |
Scratch space to place external NekRS fields before writing into auxiliary variables.
|
staticprotected |
Information about data stored in the usrwrk array for error checking and diagnostics; stored as (slot, variable name in MOOSE)
|
protected |
Number of points on the MOOSE mesh to write per element surface.
|
protected |
Number of points on the MOOSE mesh to write per element volume.
|
protectedinherited |
The NekRSProblem using the field transfer interface.
|
protected |
Slot in usrwrk array to use for writing data, if 'direction = to_nek'.
|
protected |
MOOSE data interpolated onto the (volume) data transfer mesh.
|
protected |
MOOSE data interpolated onto the (boundary) data transfer mesh.
|
protected |
Variable name (or prefix of names) to create in MOOSE to facilitate data passing.
|
protected |
Internal number for the variable(s) created in MOOSE (name, number)