Alamo
Public Member Functions | Static Public Member Functions | Protected Attributes
Integrator::TopOp< MODEL > Class Template Reference
Inheritance diagram for Integrator::TopOp< MODEL >:
[legend]
Collaboration diagram for Integrator::TopOp< MODEL >:
[legend]

Public Member Functions

 TopOp ()
 
 TopOp (IO::ParmParse &pp)
 
void Initialize (int lev) override
 
virtual void UpdateModel (int a_step, Set::Scalar) override
 
void Advance (int lev, Set::Scalar time, Set::Scalar dt) override
 
void Integrate (int amrlev, Set::Scalar time, int step, const amrex::MFIter &mfi, const amrex::Box &box) override
 
void TagCellsForRefinement (int lev, amrex::TagBoxArray &a_tags, Set::Scalar a_time, int a_ngrow) override
 
- Public Member Functions inherited from Integrator::Base::Mechanics< MODEL >
 Mechanics ()
 
- Public Member Functions inherited from Integrator::Integrator
 Integrator ()
 
virtual ~Integrator ()
 
void InitData ()
 
void Restart (std::string restartfile, bool a_node=false)
 
void Evolve ()
 
void SetFilename (std::string _plot_file)
 
std::string GetFilename ()
 
void regrid (int lbase, Set::Scalar time, bool initial=false) override
 
void InitFromScratch (Set::Scalar time)
 
template<class T , int d>
ALAMO_SINGLE_DEFINITION void AddField (Set::Field< T > &new_field, BC::BC< T > *new_bc, int ncomp, int nghost, std::string name, bool writeout, bool evolving)
 
template<class T >
ALAMO_SINGLE_DEFINITION void RegisterGeneralFab (Set::Field< T > &new_fab, int ncomp, int nghost, bool evolving)
 
template<class T >
ALAMO_SINGLE_DEFINITION void RegisterGeneralFab (Set::Field< T > &new_fab, int ncomp, int nghost, std::string a_name, bool evolving)
 
template<class T >
AMREX_ATTRIBUTE_WEAK void RegisterGeneralFab (Set::Field< T > &new_fab, int ncomp, int nghost, bool writeout, std::string a_name, bool evolving)
 

Static Public Member Functions

static void Parse (TopOp &value, IO::ParmParse &pp)
 
- Static Public Member Functions inherited from Integrator::Base::Mechanics< MODEL >
static void Parse (Mechanics &value, IO::ParmParse &pp)
 

Protected Attributes

MODEL model
 
IC::ICic_psi = nullptr
 
BC::BC< Set::Scalar > * bc_psi = nullptr
 
Set::Scalar m_eta_ref_threshold = NAN
 
Set::Field< Set::Scalarpsi_old_mf
 
Set::Scalar alpha = NAN
 
Set::Scalar beta = NAN
 
Set::Scalar gamma = NAN
 
Numeric::Interpolator::Linear< Set::ScalarL
 
Set::Scalar volume0 = NAN
 
Numeric::Interpolator::Linear< Set::Scalarlambda
 
Set::Scalar volume = NAN
 
Set::Scalar w_chem_potential = NAN
 
Set::Scalar w_bndry = NAN
 
Set::Scalar w_elastic = NAN
 
- Protected Attributes inherited from Integrator::Base::Mechanics< MODEL >
Set::Field< MODEL > model_mf
 
Set::Field< MATRIX4ddw_mf
 
Set::Field< Set::Scalarpsi_mf
 
bool psi_on = false
 
int m_interval = 0
 
Type m_type = Type::Static
 
Set::Field< Set::Vectordisp_mf
 
Set::Field< Set::Vectorrhs_mf
 
Set::Field< Set::Vectorres_mf
 
Set::Field< Set::Matrixstress_mf
 
Set::Field< Set::Matrixstrain_mf
 
Set::Field< Set::Vectordisp_old_mf
 
Set::Field< Set::Vectorvel_mf
 
Set::Field< Set::Vectorvel_old_mf
 
Set::Scalar rho = 1.0
 
Set::Scalar mu_dashpot = NAN
 
Set::Scalar mu_newton = NAN
 
Set::Vector trac_hi [AMREX_SPACEDIM]
 
Set::Vector disp_hi [AMREX_SPACEDIM]
 
IC::ICic_rhs = nullptr
 
BC::BC< Set::Scalar > * mybc
 
IC::ICvelocity_ic = nullptr
 
Solver::Nonlocal::Newton< MODEL > solver
 
BC::Operator::Elastic::Elasticbc
 
Set::Scalar m_elastic_ref_threshold = 0.01
 
bool m_print_model = false
 
bool m_print_residual = false
 
bool m_time_evolving = false
 
int m_max_coarsening_level = -1
 
bool m_zero_out_displacement = false
 
bool plot_disp = true
 
bool plot_stress = true
 
bool plot_strain = true
 
bool plot_psi = true
 
bool plot_rhs = true
 
Set::Scalar tstart = -1
 
- Protected Attributes inherited from Integrator::Integrator
amrex::Vector< amrex::Real > t_new
 
amrex::Vector< int > istep
 
std::string plot_file { "plt" }
 
amrex::Real timestep = NAN
 
bool integrate_variables_before_advance = true
 
bool integrate_variables_after_advance = false
 
struct {
   int   number_of_fabs = 0
 
   std::vector< Set::Field< Set::Scalar > * >   fab_array
 
   std::vector< int >   ncomp_array
 
   std::vector< int >   nghost_array
 
   std::vector< std::string >   name_array
 
   std::vector< BC::BC< Set::Scalar > * >   physbc_array
 
   std::vector< bool >   writeout_array
 
   bool   any = true
 
   bool   all = false
 
node
 
struct {
   int   number_of_fabs = 0
 
   std::vector< Set::Field< Set::Scalar > * >   fab_array
 
   std::vector< int >   ncomp_array
 
   std::vector< int >   nghost_array
 
   std::vector< std::string >   name_array
 
   std::vector< BC::BC< Set::Scalar > * >   physbc_array
 
   std::vector< bool >   writeout_array
 
   bool   any = true
 
   bool   all = false
 
cell
 
std::vector< BaseField * > m_basefields
 
std::vector< BaseField * > m_basefields_cell
 
BC::Nothing bcnothing
 
struct {
   int   interval = -1
 
   Set::Scalar   dt = NAN
 
   int   plot_int = -1
 
   Set::Scalar   plot_dt = NAN
 
   int   number = 0
 
   std::vector< Set::Scalar * >   vars
 
   std::vector< std::string >   names
 
   std::vector< bool >   extensives
 
thermo
 
int regrid_int = -1
 
int base_regrid_int = -1
 
std::string restart_file_cell = ""
 
std::string restart_file_node = ""
 
struct {
   int   on = 0
 
   std::vector< amrex::Box >   box
 
explicitmesh
 
int abort_on_nan = true
 

Additional Inherited Members

- Public Types inherited from Integrator::Base::Mechanics< MODEL >
enum  Type { Static, Dynamic, Disable }
 
- Protected Types inherited from Integrator::Base::Mechanics< MODEL >
typedef Set::Matrix4< AMREX_SPACEDIM, MODEL::sym > MATRIX4
 
- Protected Member Functions inherited from Integrator::Base::Mechanics< MODEL >
virtual void TimeStepBegin (Set::Scalar a_time, int a_step) override
 
- Protected Member Functions inherited from Integrator::Integrator
virtual void TimeStepComplete (Set::Scalar, int)
 
virtual void Regrid (int, Set::Scalar)
 
void RegisterNewFab (Set::Field< Set::Scalar > &new_fab, BC::BC< Set::Scalar > *new_bc, int ncomp, int nghost, std::string name, bool writeout)
 
void RegisterNewFab (Set::Field< Set::Scalar > &new_fab, int ncomp, std::string name, bool writeout)
 
void RegisterNodalFab (Set::Field< Set::Scalar > &new_fab, int ncomp, int nghost, std::string name, bool writeout)
 
void RegisterNodalFab (Set::Field< Set::Scalar > &new_fab, BC::BC< Set::Scalar > *new_bc, int ncomp, int nghost, std::string name, bool writeout)
 
template<class T >
void RegisterGeneralFab (Set::Field< T > &new_fab, int ncomp, int nghost, bool evolving=true)
 
template<class T >
void RegisterGeneralFab (Set::Field< T > &new_fab, int ncomp, int nghost, std::string a_name, bool evolving=true)
 
template<class T >
void RegisterGeneralFab (Set::Field< T > &new_fab, int ncomp, int nghost, bool writeout, std::string a_name, bool evolving=true)
 
template<class T , int d>
void AddField (Set::Field< T > &new_field, BC::BC< T > *new_bc, int ncomp, int nghost, std::string, bool writeout, bool evolving)
 
void SetFinestLevel (const int a_finestlevel)
 
void RegisterIntegratedVariable (Set::Scalar *integrated_variable, std::string name, bool extensive=true)
 
void SetTimestep (Set::Scalar _timestep)
 
void SetPlotInt (int plot_int)
 
void SetThermoInt (int a_thermo_int)
 
void SetThermoPlotInt (int a_thermo_plot_int)
 
void SetStopTime (Set::Scalar a_stop_time)
 
void IntegrateVariables (Set::Scalar cur_time, int step)
 
void WritePlotFile (bool initial=false) const
 
void WritePlotFile (std::string prefix, Set::Scalar time, int step) const
 
void WritePlotFile (Set::Scalar time, amrex::Vector< int > iter, bool initial=false, std::string prefix="") const
 

Detailed Description

template<class MODEL>
class Integrator::TopOp< MODEL >

Definition at line 39 of file TopOp.H.

Constructor & Destructor Documentation

◆ TopOp() [1/2]

template<class MODEL >
Integrator::TopOp< MODEL >::TopOp ( )
inline

Definition at line 43 of file TopOp.H.

◆ TopOp() [2/2]

template<class MODEL >
Integrator::TopOp< MODEL >::TopOp ( IO::ParmParse pp)
inline

Definition at line 44 of file TopOp.H.

Here is the call graph for this function:

Member Function Documentation

◆ Advance()

template<class MODEL >
void Integrator::TopOp< MODEL >::Advance ( int  lev,
Set::Scalar  time,
Set::Scalar  dt 
)
inlineoverridevirtual

Reimplemented from Integrator::Base::Mechanics< MODEL >.

Definition at line 121 of file TopOp.H.

Here is the call graph for this function:

◆ Initialize()

template<class MODEL >
void Integrator::TopOp< MODEL >::Initialize ( int  lev)
inlineoverridevirtual

Reimplemented from Integrator::Base::Mechanics< MODEL >.

Definition at line 97 of file TopOp.H.

Here is the call graph for this function:

◆ Integrate()

template<class MODEL >
void Integrator::TopOp< MODEL >::Integrate ( int  amrlev,
Set::Scalar  time,
int  step,
const amrex::MFIter &  mfi,
const amrex::Box &  box 
)
inlineoverridevirtual

Reimplemented from Integrator::Base::Mechanics< MODEL >.

Definition at line 163 of file TopOp.H.

Here is the call graph for this function:

◆ Parse()

template<class MODEL >
static void Integrator::TopOp< MODEL >::Parse ( TopOp< MODEL > &  value,
IO::ParmParse pp 
)
inlinestatic

Definition at line 51 of file TopOp.H.

Here is the call graph for this function:

◆ TagCellsForRefinement()

template<class MODEL >
void Integrator::TopOp< MODEL >::TagCellsForRefinement ( int  lev,
amrex::TagBoxArray &  a_tags,
Set::Scalar  a_time,
int  a_ngrow 
)
inlineoverridevirtual

Reimplemented from Integrator::Base::Mechanics< MODEL >.

Definition at line 188 of file TopOp.H.

Here is the call graph for this function:

◆ UpdateModel()

template<class MODEL >
virtual void Integrator::TopOp< MODEL >::UpdateModel ( int  a_step,
Set::Scalar   
)
inlineoverridevirtual

Implements Integrator::Base::Mechanics< MODEL >.

Definition at line 104 of file TopOp.H.

Here is the call graph for this function:

Field Documentation

◆ alpha

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::alpha = NAN
protected

Definition at line 234 of file TopOp.H.

◆ bc_psi

template<class MODEL >
BC::BC<Set::Scalar>* Integrator::TopOp< MODEL >::bc_psi = nullptr
protected

Definition at line 219 of file TopOp.H.

◆ beta

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::beta = NAN
protected

Definition at line 235 of file TopOp.H.

◆ gamma

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::gamma = NAN
protected

Definition at line 236 of file TopOp.H.

◆ ic_psi

template<class MODEL >
IC::IC* Integrator::TopOp< MODEL >::ic_psi = nullptr
protected

Definition at line 218 of file TopOp.H.

◆ L

template<class MODEL >
Numeric::Interpolator::Linear<Set::Scalar> Integrator::TopOp< MODEL >::L
protected

Definition at line 238 of file TopOp.H.

◆ lambda

template<class MODEL >
Numeric::Interpolator::Linear<Set::Scalar> Integrator::TopOp< MODEL >::lambda
protected

Definition at line 241 of file TopOp.H.

◆ m_eta_ref_threshold

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::m_eta_ref_threshold = NAN
protected

Definition at line 220 of file TopOp.H.

◆ model

template<class MODEL >
MODEL Integrator::TopOp< MODEL >::model
protected

Definition at line 217 of file TopOp.H.

◆ psi_old_mf

template<class MODEL >
Set::Field<Set::Scalar> Integrator::TopOp< MODEL >::psi_old_mf
protected

Definition at line 221 of file TopOp.H.

◆ volume

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::volume = NAN
protected

Definition at line 243 of file TopOp.H.

◆ volume0

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::volume0 = NAN
protected

Definition at line 239 of file TopOp.H.

◆ w_bndry

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::w_bndry = NAN
protected

Definition at line 245 of file TopOp.H.

◆ w_chem_potential

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::w_chem_potential = NAN
protected

Definition at line 244 of file TopOp.H.

◆ w_elastic

template<class MODEL >
Set::Scalar Integrator::TopOp< MODEL >::w_elastic = NAN
protected

Definition at line 246 of file TopOp.H.


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