FillMPL Class Reference

Kynema-SGF API: kynema_sgf::FillMPL Class Reference
Kynema-SGF API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches

#include <FillMPL.H>

Inheritance diagram for kynema_sgf::FillMPL:
[legend]
Collaboration diagram for kynema_sgf::FillMPL:
[legend]

Public Member Functions

 FillMPL (Field &field, const amrex::AmrCore &mesh, const SimTime &time, const ModulatedPowerLaw &abl_mpl)
 ~FillMPL () override
void fillpatch (int lev, amrex::Real time, amrex::MultiFab &mfab, const amrex::IntVect &nghost, FieldState fstate=FieldState::New) override
 Implementation that handles filling patches on a single level as well as across a coarse-fine interface.
void fillpatch_sibling_fields (int lev, amrex::Real time, amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > &mfabs, amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > &ffabs, amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > &cfabs, const amrex::IntVect &nghost, const amrex::Vector< amrex::BCRec > &bcrec, const amrex::Vector< amrex::BCRec > &, FieldState fstate=FieldState::New) override
 Implementation that handles filling patches on a single level as well as across a coarse-fine interface, for an array of different fields.
void fillpatch_from_coarse (int lev, amrex::Real time, amrex::MultiFab &mfab, const amrex::IntVect &nghost, FieldState fstate=FieldState::New) override
 Implementation that handles filling patches from a coarse to fine level.
void fillphysbc (int lev, amrex::Real time, amrex::MultiFab &mfab, const amrex::IntVect &nghost, FieldState fstate=FieldState::New) override
 Implementation that handles filling physical boundary conditions.
Public Member Functions inherited from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >
 FieldFillPatchOps (Field &field, const amrex::AmrCore &mesh, const SimTime &time, FieldInterpolator itype=FieldInterpolator::CellConsLinear, FieldInterpolator face_itype=FieldInterpolator::FaceDivFree)
amrex::Vector< amrex::MultiFab * > get_mfab_vec (int lev)
void set_inflow (int lev, amrex::Real time, amrex::MultiFab &mfab, const amrex::IntVect &nghost, const FieldState) override
void set_inflow_sibling_fields (const int lev, const amrex::Real time, const amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > mfabs) override
Public Member Functions inherited from kynema_sgf::FieldFillPatchOpsBase
 FieldFillPatchOpsBase ()=default
virtual ~FieldFillPatchOpsBase ()=default
virtual void set_inflow_sibling_fields (int lev, amrex::Real time, amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > mfabs)=0

Protected Attributes

const ModulatedPowerLawm_abl_mpl
Protected Attributes inherited from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >
const SimTimem_time
const amrex::AmrCore & m_mesh
Fieldm_field
const FieldBCDirichlet m_op
amrex::Interpolater * m_mapper
 Function that handles interpolation from coarse to fine level.
amrex::Interpolater * m_face_mapper
 Function that handles interpolation from coarse to fine level for faces.

Additional Inherited Members

Public Types inherited from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >
using Functor
Protected Member Functions inherited from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >
Functor bc_functor ()
Functor bc_functor_face (const int face_dir)
void check_face_mapper ()

Detailed Description

Operations to perform inflow of data from boundary planes

This class contains the operations necessary to interface with ABLBoundaryPlane class and populate data at the boundaries

See also
ABLBoundaryPlane

Constructor & Destructor Documentation

◆ FillMPL()

kynema_sgf::FillMPL::FillMPL ( Field & field,
const amrex::AmrCore & mesh,
const SimTime & time,
const ModulatedPowerLaw & abl_mpl )

◆ ~FillMPL()

kynema_sgf::FillMPL::~FillMPL ( )
overridedefault

Member Function Documentation

◆ fillpatch()

void kynema_sgf::FillMPL::fillpatch ( int lev,
amrex::Real time,
amrex::MultiFab & mfab,
const amrex::IntVect & nghost,
FieldState fstate = FieldState::New )
overridevirtual

Implementation that handles filling patches on a single level as well as across a coarse-fine interface.

Reimplemented from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >.

◆ fillpatch_from_coarse()

void kynema_sgf::FillMPL::fillpatch_from_coarse ( int lev,
amrex::Real time,
amrex::MultiFab & mfab,
const amrex::IntVect & nghost,
FieldState fstate = FieldState::New )
overridevirtual

Implementation that handles filling patches from a coarse to fine level.

Reimplemented from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >.

◆ fillpatch_sibling_fields()

void kynema_sgf::FillMPL::fillpatch_sibling_fields ( int lev,
amrex::Real time,
amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > & mfabs,
amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > & ffabs,
amrex::Array< amrex::MultiFab *, AMREX_SPACEDIM > & cfabs,
const amrex::IntVect & nghost,
const amrex::Vector< amrex::BCRec > & fillpatch_bcrec,
const amrex::Vector< amrex::BCRec > & physbc_bcrec,
FieldState fstate = FieldState::New )
overridevirtual

Implementation that handles filling patches on a single level as well as across a coarse-fine interface, for an array of different fields.

Reimplemented from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >.

◆ fillphysbc()

void kynema_sgf::FillMPL::fillphysbc ( int lev,
amrex::Real time,
amrex::MultiFab & mfab,
const amrex::IntVect & nghost,
FieldState fstate = FieldState::New )
overridevirtual

Implementation that handles filling physical boundary conditions.

Reimplemented from kynema_sgf::FieldFillPatchOps< FieldBCDirichlet >.

Member Data Documentation

◆ m_abl_mpl

const ModulatedPowerLaw& kynema_sgf::FillMPL::m_abl_mpl
protected

The documentation for this class was generated from the following files:
  • /home/runner/work/kynema-sgf/kynema-sgf/src/boundary_conditions/field_boundary_fill/FillMPL.H
  • /home/runner/work/kynema-sgf/kynema-sgf/src/boundary_conditions/field_boundary_fill/FillMPL.cpp