/home/runner/work/kynema-sgf/kynema-sgf/src/core/Field.H Source File
|
Kynema-SGF API v0.1.0
CFD solver for wind plant simulations
|
Loading...
Searching...
No Matches
Field.H
Go to the documentation of this file.
Definition FieldBCOps.H:32
Definition FieldFillPatchOps.H:41
Definition Field.H:112
Field & create_state(FieldState fstate)
Create a new time state after the field has been created.
Definition Field.cpp:331
void fillphysbc(const int lev, const amrex::Real time, amrex::MultiFab &mfab, const int nghost)
Definition Field.H:386
const std::string & base_name() const
Base name (without state information)
Definition Field.H:124
bool has_fillpatch_op() const
Return a flag indicating whether a fillpatch Op has been registered.
Definition Field.H:223
void set_inflow(int lev, amrex::Real time, amrex::MultiFab &mfab, const amrex::IntVect &nghost)
Definition Field.cpp:275
bool m_fillpatch_on_regrid
Flag indicating whether fill patch operation must be performed for this field during regrid.
Definition Field.H:438
void set_inout_bndry()
Set the inout_bndry flag.
Definition Field.H:411
bool m_inout_bndry
Flag to indicate whether any of the boundaries is mass-inflow-outflow.
Definition Field.H:444
void fillpatch_sibling_fields(amrex::Real time, amrex::IntVect ng, amrex::Array< Field *, AMREX_SPACEDIM > &fields) const
Definition Field.cpp:212
std::shared_ptr< FieldInfo > m_info
Common data for all field states.
Definition Field.H:428
amrex::Vector< amrex::Vector< amrex::Real > > & bc_values()
Return reference to the host view of BC values array.
Definition Field.H:187
void set_inflow(const int lev, const amrex::Real time, amrex::MultiFab &mfab, const int nghost)
Definition Field.H:395
ViewField< Field > subview(const int scomp=0, const int ncomp=1)
Definition Field.H:303
void copy_state(FieldState to_state, FieldState from_state)
Copy a user-specified "from_state" to "to_state".
Definition Field.cpp:319
Field(const Field &)=delete
const amrex::GpuArray< BC, AMREX_SPACEDIM *2 > & bc_type() const
Definition Field.H:176
Field & operator=(const Field &)=delete
unsigned id() const
Unique integer identifier for this field.
Definition Field.H:130
amrex::Vector< amrex::BCRec > & bcrec() const
Return reference to host view of BCRec array.
Definition Field.H:193
bool has_inout_bndry() const
Check if any of the boundaries is a mass-inflow-outflow.
Definition Field.H:408
amrex::MultiFab & operator()(int lev)
Return MultiFab instance for a given level.
Definition Field.cpp:133
void fillpatch_from_coarse(int lev, amrex::Real time, amrex::MultiFab &mfab, const amrex::IntVect &nghost)
Definition Field.cpp:183
const amrex::IntVect & num_grow() const
Ghost cells.
Definition Field.H:136
FieldRepo & m_repo
Reference to the FieldRepository instance.
Definition Field.H:422
Field & state(FieldState fstate)
Return field at a different time state.
Definition Field.cpp:117
void register_fill_patch_op(Args &&... args)
Definition Field.H:313
amrex::GpuArray< BC, AMREX_SPACEDIM *2 > & bc_type()
Definition Field.H:181
amrex::Vector< amrex::MultiFab * > vec_ptrs()
Return a vector of MultiFab pointers for all levels.
Definition Field.cpp:145
FieldLoc field_location() const
Cell, node, or face centered field.
Definition Field.H:155
int num_states() const
Number of states available for this field.
Definition Field.H:145
int num_comp() const
Number of components for this field.
Definition Field.H:133
FieldState field_state() const
State of this field instance.
Definition Field.H:158
bool m_mesh_mapped
Flag to track mesh mapping (to uniform space) of field.
Definition Field.H:441
~Field()
amrex::Vector< const amrex::MultiFab * > vec_const_ptrs() const
Return vector of const MultiFab* for all levels.
Definition Field.cpp:156
void copy_bc_to_device()
Copy BC data from host to device.
Definition Field.H:214
void set_default_fillpatch_bc(const SimTime &time, amrex::BCType::mathematicalBndryTypes bctype=amrex::BCType::hoextrap)
Definition Field.cpp:373
const amrex::GpuArray< const amrex::Real *, AMREX_SPACEDIM *2 > & bc_values_device() const
Definition Field.H:199
void advance_states()
Advance timestep for fields with multiple states.
Definition Field.cpp:300
void setVal(amrex::Real value)
Set the field to a constant value at all levels.
Definition Field.cpp:341
void fillpatch(const int lev, const amrex::Real time, amrex::MultiFab &mfab, const int nghost)
Definition Field.H:368
int num_time_states() const
Number of exact time states available for this field.
Definition Field.H:142
const std::string & name() const
Name of this field (including state information)
Definition Field.H:121
FieldRepo & repo() const
FieldRepo instance that manages this field.
Definition Field.H:161
bool query_state(const FieldState fstate) const
Return true if the requested state exists for this field.
Definition Field.H:170
bool bc_initialized() const
Return flag indicating whether BCs have been initialized.
Definition Field.H:217
const amrex::Gpu::DeviceVector< amrex::BCRec > & bcrec_device() const
Definition Field.H:205
void fillpatch_from_coarse(const int lev, const amrex::Real time, amrex::MultiFab &mfab, const int nghost)
Definition Field.H:377
void set_inflow_sibling_fields(int lev, amrex::Real time, amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > mfabs)
Definition Field.cpp:288
Definition FieldRepo.H:86
Definition SimTime.H:33
Definition ViewField.H:24
This test case is intended as an evaluation of the momentum advection scheme.
Definition BCInterface.cpp:10
std::string m_basename
Field name without state information.
Definition Field.H:45
bool m_bc_copied_to_device
Flag indicating whether BCs have been initialized and copied to device.
Definition Field.H:80
int m_ncomp
Number of components (Scalar = 1, Vector = 2, etc.)
Definition Field.H:48
bool bc_initialized()
Check indicating whether BCs are being set to sane values.
Definition Field.cpp:42
amrex::Vector< std::unique_ptr< FieldBCIface > > m_bc_func
Custom boundary condition actions for this field.
Definition Field.H:77
FieldInfo(std::string basename, int ncomp, int ngrow, int nstates, FieldLoc floc)
Definition Field.cpp:15
amrex::Gpu::DeviceVector< amrex::BCRec > m_bcrec_d
Definition Field.H:67
void copy_bc_to_device()
Copy the BC information to device data structures.
Definition Field.cpp:65
~FieldInfo()
amrex::Vector< Field * > m_states
Vector holding references to available states for this field.
Definition Field.H:71
std::unique_ptr< FieldFillPatchOpsBase > m_fillpatch_op
Function that handles filling patch and physics BC data for this field.
Definition Field.H:74
amrex::Gpu::DeviceVector< amrex::Real > m_bc_values_dview
Definition Field.H:64
int m_nstates
Number of states available for this field.
Definition Field.H:54
FieldLoc m_floc
Cell, node, face centered field type.
Definition Field.H:57
static constexpr int max_field_states
Maximum number of states allowed for a field.
Definition Field.H:31
amrex::GpuArray< BC, AMREX_SPACEDIM *2 > m_bc_type
Definition Field.H:61
amrex::Vector< amrex::Vector< amrex::Real > > m_bc_values
Definition Field.H:62
amrex::GpuArray< const amrex::Real *, AMREX_SPACEDIM *2 > m_bc_values_d
Definition Field.H:63
Generated by