Alamo
Public Member Functions | Static Public Member Functions | Protected Attributes
BC::Operator::Elastic::Expression Class Reference
Inheritance diagram for BC::Operator::Elastic::Expression:
[legend]
Collaboration diagram for BC::Operator::Elastic::Expression:
[legend]

Public Member Functions

 Expression ()
 
 ~Expression ()
 
virtual void Init (amrex::FabArray< amrex::BaseFab< Set::Vector >> *a_rhs, const amrex::Geometry &a_geom, bool a_homogeneous=false) const override
 
virtual void Init (amrex::MultiFab *a_rhs, const amrex::Geometry &a_geom, bool a_homogeneous=false) const override
 
virtual std::array< Type, AMREX_SPACEDIM > getType (const int &i, const int &j, [[maybe_unused]] const int &k, const amrex::Box &domain) override
 
AMREX_FORCE_INLINE Set::Vector operator() (const Set::Vector &u, const Set::Matrix &gradu, const Set::Matrix &sigma, const int &i, const int &j, const int &k, const amrex::Box &domain) override
 
AMREX_FORCE_INLINE Set::Vector set (std::array< Type, AMREX_SPACEDIM > &bc_type, const Set::Vector &u, const Set::Matrix &gradu, const Set::Matrix &sigma, Set::Vector n) const
 
 Expression (IO::ParmParse &pp, std::string name)
 
virtual void Init (amrex::MultiFab *a_rhs, const amrex::Geometry &a_geom, bool a_homogeneous=false) const=0
 
virtual void Init (amrex::FabArray< amrex::BaseFab< Set::Vector >> *a_rhs, const amrex::Geometry &a_geom, bool a_homogeneous=false) const=0
 
void Init (Set::Field< Set::Scalar > &a_rhs, const amrex::Vector< amrex::Geometry > &a_geom, bool a_homogeneous=false) const
 
void Init (Set::Field< Set::Vector > &a_rhs, const amrex::Vector< amrex::Geometry > &a_geom, bool a_homogeneous=false) const
 
- Public Member Functions inherited from BC::Operator::Elastic::Elastic
void SetTime (const Set::Scalar a_time)
 
void Init (Set::Field< Set::Scalar > &a_rhs, const amrex::Vector< amrex::Geometry > &a_geom, bool a_homogeneous=false) const
 
void Init (Set::Field< Set::Vector > &a_rhs, const amrex::Vector< amrex::Geometry > &a_geom, bool a_homogeneous=false) const
 
virtual std::array< Type, AMREX_SPACEDIM > getType (const int &i, const int &j, const int &k, const amrex::Box &domain)=0
 

Static Public Member Functions

static void Parse (Expression &value, IO::ParmParse &pp)
 

Protected Attributes

std::array< std::array< Type, AMREX_SPACEDIM >, m_nfaces > m_bc_type
 
std::array< std::array< amrex::Parser, AMREX_SPACEDIM >, m_nfaces > m_bc_func_parser
 
std::array< std::array< amrex::ParserExecutor< 4 >, AMREX_SPACEDIM >, m_nfaces > m_bc_func
 
- Protected Attributes inherited from BC::Operator::Elastic::Elastic
Set::Scalar m_time = 0.0
 

Additional Inherited Members

- Public Types inherited from BC::Operator::Elastic::Elastic
enum  Type {
  Displacement, Traction, Periodic, Neumann,
  None
}
 
enum  Direction { AMREX_D_DECL =(X=0,Y=1,Z=2) }
 
- Static Public Attributes inherited from BC::Operator::Elastic::Elastic
static const int min = 1
 
static const int max = 2
 

Detailed Description

Definition at line 17 of file Expression.H.

Constructor & Destructor Documentation

◆ Expression() [1/2]

BC::Operator::Elastic::Expression::Expression ( )
inline

Definition at line 37 of file Expression.H.

◆ ~Expression()

BC::Operator::Elastic::Expression::~Expression ( )
inline

Definition at line 46 of file Expression.H.

◆ Expression() [2/2]

BC::Operator::Elastic::Expression::Expression ( IO::ParmParse pp,
std::string  name 
)
inline

Definition at line 472 of file Expression.H.

Member Function Documentation

◆ getType()

virtual std::array<Type,AMREX_SPACEDIM> BC::Operator::Elastic::Expression::getType ( const int &  i,
const int &  j,
[[maybe_unused] ] const int &  k,
const amrex::Box &  domain 
)
inlineoverridevirtual

Definition at line 229 of file Expression.H.

◆ Init() [1/6]

virtual void BC::Operator::Elastic::Expression::Init ( amrex::FabArray< amrex::BaseFab< Set::Vector >> *  a_rhs,
const amrex::Geometry &  a_geom,
bool  a_homogeneous = false 
) const
inlineoverridevirtual

Implements BC::Operator::Elastic::Elastic.

Definition at line 52 of file Expression.H.

Here is the call graph for this function:

◆ Init() [2/6]

virtual void BC::Operator::Elastic::Elastic::Init

◆ Init() [3/6]

virtual void BC::Operator::Elastic::Expression::Init ( amrex::MultiFab *  a_rhs,
const amrex::Geometry &  a_geom,
bool  a_homogeneous = false 
) const
inlineoverridevirtual

Implements BC::Operator::Elastic::Elastic.

Definition at line 140 of file Expression.H.

Here is the call graph for this function:

◆ Init() [4/6]

virtual void BC::Operator::Elastic::Elastic::Init

◆ Init() [5/6]

void BC::Operator::Elastic::Elastic::Init
inline

Definition at line 60 of file Elastic.H.

◆ Init() [6/6]

void BC::Operator::Elastic::Elastic::Init
inline

Definition at line 69 of file Elastic.H.

◆ operator()()

AMREX_FORCE_INLINE Set::Vector BC::Operator::Elastic::Expression::operator() ( const Set::Vector u,
const Set::Matrix gradu,
const Set::Matrix sigma,
const int &  i,
const int &  j,
const int &  k,
const amrex::Box &  domain 
)
inlineoverridevirtual

Implements BC::Operator::Elastic::Elastic.

Definition at line 286 of file Expression.H.

Here is the call graph for this function:

◆ Parse()

static void BC::Operator::Elastic::Expression::Parse ( Expression value,
IO::ParmParse pp 
)
inlinestatic

Definition at line 389 of file Expression.H.

Here is the call graph for this function:

◆ set()

AMREX_FORCE_INLINE Set::Vector BC::Operator::Elastic::Expression::set ( std::array< Type, AMREX_SPACEDIM > &  bc_type,
const Set::Vector u,
const Set::Matrix gradu,
const Set::Matrix sigma,
Set::Vector  n 
) const
inline

Definition at line 350 of file Expression.H.

Field Documentation

◆ m_bc_func

std::array<std::array<amrex::ParserExecutor<4>,AMREX_SPACEDIM>, m_nfaces> BC::Operator::Elastic::Expression::m_bc_func
protected

Definition at line 379 of file Expression.H.

◆ m_bc_func_parser

std::array<std::array<amrex::Parser,AMREX_SPACEDIM>, m_nfaces> BC::Operator::Elastic::Expression::m_bc_func_parser
protected

Definition at line 378 of file Expression.H.

◆ m_bc_type

std::array<std::array<Type, AMREX_SPACEDIM>, m_nfaces> BC::Operator::Elastic::Expression::m_bc_type
protected

Definition at line 376 of file Expression.H.


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