Alamo
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
Integrator::Integrator Class Referenceabstract

#include <Integrator.H>

Inheritance diagram for Integrator::Integrator:
Integrator::Base::Mechanics< Model::Solid::Finite::NeoHookeanPredeformed > Integrator::Base::Mechanics< model_type > Integrator::AllenCahn Integrator::Base::Mechanics< MODEL > Integrator::CahnHilliard Integrator::Dendrite Integrator::Flame Integrator::Fracture Integrator::HeatConduction Integrator::PFC Integrator::SutureCrack

Public Member Functions

 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, std::vector< std::string >)
 
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)
 

Protected Member Functions

virtual void Initialize (int lev)=0
 
virtual void Advance (int lev, amrex::Real time, amrex::Real dt)=0
 
virtual void TagCellsForRefinement (int lev, amrex::TagBoxArray &tags, amrex::Real time, int ngrow)=0
 
virtual void TimeStepBegin (Set::Scalar, int)
 
virtual void TimeStepComplete (Set::Scalar, int)
 
virtual void Integrate (int, Set::Scalar, int, const amrex::MFIter &, const amrex::Box &)
 
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, std::vector< std::string > suffix={})
 
void RegisterNewFab (Set::Field< Set::Scalar > &new_fab, int ncomp, std::string name, bool writeout, std::vector< std::string > suffix={})
 
void RegisterNodalFab (Set::Field< Set::Scalar > &new_fab, int ncomp, int nghost, std::string name, bool writeout, std::vector< std::string > suffix={})
 
void RegisterNodalFab (Set::Field< Set::Scalar > &new_fab, BC::BC< Set::Scalar > *new_bc, int ncomp, int nghost, std::string name, bool writeout, std::vector< std::string > suffix={})
 
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, std::vector< std::string > suffix={})
 
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 DynamicTimestep_SyncTimeStep (int lev, Set::Scalar dt_min)
 
void DynamicTimestep_Reset ()
 
void DynamicTimestep_Update ()
 
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
 

Protected Attributes

struct { 
 
   bool   on = false 
 
   int   verbose = -1 
 
   int   nprevious = -1 
 
   Set::Scalar   cfl = NAN 
 
   Set::Scalar   min = NAN 
 
   Set::Scalar   max = NAN 
 
   std::vector< Set::Scalar >   dt_limit_min 
 
   std::vector< Set::Scalar >   previous_timesteps 
 
dynamictimestep 
 
amrex::Vector< amrex::Real > t_new
 
amrex::Vector< int > istep
 
std::string plot_file { "plt" }
 
amrex::Real timestep = NAN
 
amrex::Vector< amrex::Real > dt
 
amrex::Vector< int > nsubsteps
 
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::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::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
 

Private Member Functions

virtual void MakeNewLevelFromScratch (int lev, amrex::Real time, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm) override
 
virtual void MakeNewLevelFromCoarse (int lev, amrex::Real time, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm) override
 
virtual void RemakeLevel (int lev, amrex::Real time, const amrex::BoxArray &ba, const amrex::DistributionMapping &dm) override
 
virtual void ClearLevel (int lev) override
 
virtual void ErrorEst (int lev, amrex::TagBoxArray &tags, amrex::Real time, int ngrow) override
 
void FillPatch (int lev, amrex::Real time, amrex::Vector< std::unique_ptr< amrex::MultiFab > > &source_mf, amrex::MultiFab &destination_multifab, BC::BC< Set::Scalar > &physbc, int icomp)
 
long CountCells (int lev)
 
void TimeStep (int lev, amrex::Real time, int iteration)
 
void FillCoarsePatch (int lev, amrex::Real time, Set::Field< Set::Scalar > &mf, BC::BC< Set::Scalar > &physbc, int icomp, int ncomp)
 
void GetData (const int lev, const amrex::Real time, amrex::Vector< amrex::MultiFab * > &data, amrex::Vector< amrex::Real > &datatime)
 
std::vector< std::string > PlotFileName (int lev, std::string prefix="") const
 

Private Attributes

int max_plot_level = -1
 
amrex::Vector< amrex::Real > t_old
 
int max_step = std::numeric_limits<int>::max()
 
amrex::Real tstart = 0
 
amrex::Real stop_time = NAN
 

Detailed Description

Definition at line 73 of file Integrator.H.

Constructor & Destructor Documentation

◆ Integrator()

Integrator::Integrator::Integrator ( )

This is the constructor for the intetgrator class, which reads timestep information, simulation output and AMR, initialized time substep, and creates a new directory.

Definition at line 17 of file Integrator.cpp.

◆ ~Integrator()

Integrator::Integrator::~Integrator ( )
virtual

Virtual destructure; make sure delete any pointers that you create here.

Definition at line 165 of file Integrator.cpp.

Member Function Documentation

◆ AddField() [1/2]

template<class T , int d>
ALAMO_SINGLE_DEFINITION void Integrator::Integrator::AddField ( Set::Field< T > &  new_field,
BC::BC< T > *  new_bc,
int  ncomp,
int  nghost,
std::string  name,
bool  writeout,
bool  evolving,
std::vector< std::string >   
)

Definition at line 538 of file Integrator.H.

◆ AddField() [2/2]

template<class T , int d>
void Integrator::Integrator::AddField ( Set::Field< T > &  new_field,
BC::BC< T > *  new_bc,
int  ncomp,
int  nghost,
std::string  ,
bool  writeout,
bool  evolving,
std::vector< std::string >  suffix = {} 
)
protected

Add a field with arbitrary type (templated with T) and grid location (templated with d).

◆ Advance()

virtual void Integrator::Integrator::Advance ( int  lev,
amrex::Real  time,
amrex::Real  dt 
)
protectedpure virtual

You must override this function to inherit this class; Advance is called every time(sub)step, and implements the evolution of the system in time.

Parameters
[in]levAMR Level
[in]timeSystem time
[in]dtTimestep for this level

Implemented in Integrator::ThermoElastic, Integrator::AllenCahn, Integrator::HeatConduction, Integrator::Base::Mechanics< MODEL >, Integrator::Base::Mechanics< Model::Solid::Finite::NeoHookeanPredeformed >, Integrator::Base::Mechanics< model_type >, Integrator::CahnHilliard, Integrator::Flame, Integrator::PFC, Integrator::TopOp< MODEL >, Integrator::Dendrite, Integrator::Fracture, and Integrator::SutureCrack.

◆ ClearLevel()

void Integrator::Integrator::ClearLevel ( int  lev)
overrideprivatevirtual

Definition at line 305 of file Integrator.cpp.

◆ CountCells()

long Integrator::Integrator::CountCells ( int  lev)
private

Simple utility to count cells.

Definition at line 365 of file Integrator.cpp.

◆ DynamicTimestep_Reset()

void Integrator::Integrator::DynamicTimestep_Reset ( )
inlineprotected

Definition at line 271 of file Integrator.H.

◆ DynamicTimestep_SyncTimeStep()

void Integrator::Integrator::DynamicTimestep_SyncTimeStep ( int  lev,
Set::Scalar  dt_min 
)
inlineprotected

Params for the dynamic timestp.

Definition at line 258 of file Integrator.H.

◆ DynamicTimestep_Update()

void Integrator::Integrator::DynamicTimestep_Update ( )
inlineprotected

Definition at line 276 of file Integrator.H.

◆ ErrorEst()

void Integrator::Integrator::ErrorEst ( int  lev,
amrex::TagBoxArray &  tags,
amrex::Real  time,
int  ngrow 
)
overrideprivatevirtual

Definition at line 471 of file Integrator.cpp.

◆ Evolve()

void Integrator::Integrator::Evolve ( )

Front-end method to start simulation.

Definition at line 1011 of file Integrator.cpp.

◆ FillCoarsePatch()

void Integrator::Integrator::FillCoarsePatch ( int  lev,
amrex::Real  time,
Set::Field< Set::Scalar > &  mf,
BC::BC< Set::Scalar > &  physbc,
int  icomp,
int  ncomp 
)
private

Fill a fab at current level with the data from one level up.

Note
This is a custom method and is changeable
Parameters
[in]levAMR level
[in]timeSimulatinon time
[in]mfFab to fill
[in]physbcBC object applying to Fab
[in]icompstart component
[in]ncompend component (i.e. applies to components icomp...ncomp)

Definition at line 440 of file Integrator.cpp.

◆ FillPatch()

void Integrator::Integrator::FillPatch ( int  lev,
amrex::Real  time,
amrex::Vector< std::unique_ptr< amrex::MultiFab > > &  source_mf,
amrex::MultiFab &  destination_multifab,
BC::BC< Set::Scalar > &  physbc,
int  icomp 
)
private

This is the function that is responsible for updating patch data.

Definition at line 381 of file Integrator.cpp.

◆ GetData()

void Integrator::Integrator::GetData ( const int  lev,
const amrex::Real  time,
amrex::Vector< amrex::MultiFab * > &  data,
amrex::Vector< amrex::Real > &  datatime 
)
private

◆ GetFilename()

std::string Integrator::Integrator::GetFilename ( )
inline

Simple getter to get filename.

Definition at line 99 of file Integrator.H.

◆ InitData()

void Integrator::Integrator::InitData ( )

Front-end method to initialize simulation on all levels.

Definition at line 479 of file Integrator.cpp.

◆ InitFromScratch()

void Integrator::Integrator::InitFromScratch ( Set::Scalar  time)
inline

This creates a new levels that have not previously been used.

Definition at line 111 of file Integrator.H.

◆ Initialize()

virtual void Integrator::Integrator::Initialize ( int  lev)
protectedpure virtual

◆ Integrate()

virtual void Integrator::Integrator::Integrate ( int  ,
Set::Scalar  ,
int  ,
const amrex::MFIter &  ,
const amrex::Box &   
)
inlineprotectedvirtual

This is a function that is called by Integrator to update the variables registered in RegisterIntegratedVariable; you can override this to do your integration.

Reimplemented in Integrator::Flame, Integrator::PhaseFieldMicrostructure< model_type >, Integrator::TopOp< MODEL >, Integrator::Base::Mechanics< MODEL >, Integrator::Base::Mechanics< Model::Solid::Finite::NeoHookeanPredeformed >, Integrator::Base::Mechanics< model_type >, Integrator::SutureCrack, and Integrator::Fracture.

Definition at line 174 of file Integrator.H.

◆ IntegrateVariables()

void Integrator::Integrator::IntegrateVariables ( Set::Scalar  cur_time,
int  step 
)
protected

Definition at line 1062 of file Integrator.cpp.

◆ MakeNewLevelFromCoarse()

void Integrator::Integrator::MakeNewLevelFromCoarse ( int  lev,
amrex::Real  time,
const amrex::BoxArray &  ba,
const amrex::DistributionMapping &  dm 
)
overrideprivatevirtual

Wrapper to call FillCoarsePatch.

Note
THIS OVERRIDES A PURE VIRTUAL METHOD - DO NOT CHANGE

Definition at line 205 of file Integrator.cpp.

◆ MakeNewLevelFromScratch()

void Integrator::Integrator::MakeNewLevelFromScratch ( int  lev,
amrex::Real  time,
const amrex::BoxArray &  ba,
const amrex::DistributionMapping &  dm 
)
overrideprivatevirtual

Definition at line 687 of file Integrator.cpp.

◆ PlotFileName()

std::vector< std::string > Integrator::Integrator::PlotFileName ( int  lev,
std::string  prefix = "" 
) const
private

Definition at line 746 of file Integrator.cpp.

◆ RegisterGeneralFab() [1/6]

template<class T >
ALAMO_SINGLE_DEFINITION void Integrator::Integrator::RegisterGeneralFab ( Set::Field< T > &  new_fab,
int  ncomp,
int  nghost,
bool  evolving 
)

Definition at line 578 of file Integrator.H.

◆ RegisterGeneralFab() [2/6]

template<class T >
void Integrator::Integrator::RegisterGeneralFab ( Set::Field< T > &  new_fab,
int  ncomp,
int  nghost,
bool  evolving = true 
)
protected

Add a templated nodal field.

◆ RegisterGeneralFab() [3/6]

template<class T >
AMREX_ATTRIBUTE_WEAK void Integrator::Integrator::RegisterGeneralFab ( Set::Field< T > &  new_fab,
int  ncomp,
int  nghost,
bool  writeout,
std::string  a_name,
bool  evolving 
)

Definition at line 592 of file Integrator.H.

◆ RegisterGeneralFab() [4/6]

template<class T >
void Integrator::Integrator::RegisterGeneralFab ( Set::Field< T > &  new_fab,
int  ncomp,
int  nghost,
bool  writeout,
std::string  a_name,
bool  evolving = true 
)
protected

Add a templated nodal field (additional arguments)

◆ RegisterGeneralFab() [5/6]

template<class T >
ALAMO_SINGLE_DEFINITION void Integrator::Integrator::RegisterGeneralFab ( Set::Field< T > &  new_fab,
int  ncomp,
int  nghost,
std::string  a_name,
bool  evolving 
)

Definition at line 585 of file Integrator.H.

◆ RegisterGeneralFab() [6/6]

template<class T >
void Integrator::Integrator::RegisterGeneralFab ( Set::Field< T > &  new_fab,
int  ncomp,
int  nghost,
std::string  a_name,
bool  evolving = true 
)
protected

Add a templated nodal field (additional arguments)

◆ RegisterIntegratedVariable()

void Integrator::Integrator::RegisterIntegratedVariable ( Set::Scalar integrated_variable,
std::string  name,
bool  extensive = true 
)
protected

Register a variable to be integrated over the spatial domain using the Integrate function.

Definition at line 355 of file Integrator.cpp.

◆ RegisterNewFab() [1/2]

void Integrator::Integrator::RegisterNewFab ( Set::Field< Set::Scalar > &  new_fab,
BC::BC< Set::Scalar > *  new_bc,
int  ncomp,
int  nghost,
std::string  name,
bool  writeout,
std::vector< std::string >  suffix = {} 
)
protected

Add a new cell-based scalar field.

Definition at line 327 of file Integrator.cpp.

◆ RegisterNewFab() [2/2]

void Integrator::Integrator::RegisterNewFab ( Set::Field< Set::Scalar > &  new_fab,
int  ncomp,
std::string  name,
bool  writeout,
std::vector< std::string >  suffix = {} 
)
protected

Add a new cell-based scalar field (with additional arguments).

Definition at line 333 of file Integrator.cpp.

◆ RegisterNodalFab() [1/2]

void Integrator::Integrator::RegisterNodalFab ( Set::Field< Set::Scalar > &  new_fab,
BC::BC< Set::Scalar > *  new_bc,
int  ncomp,
int  nghost,
std::string  name,
bool  writeout,
std::vector< std::string >  suffix = {} 
)
protected

Add a new node-based scalar field (wtih additional arguments)

Definition at line 339 of file Integrator.cpp.

◆ RegisterNodalFab() [2/2]

void Integrator::Integrator::RegisterNodalFab ( Set::Field< Set::Scalar > &  new_fab,
int  ncomp,
int  nghost,
std::string  name,
bool  writeout,
std::vector< std::string >  suffix = {} 
)
protected

Add a new node-based scalar field.

Definition at line 345 of file Integrator.cpp.

◆ regrid()

void Integrator::Integrator::regrid ( int  lbase,
Set::Scalar  time,
bool  initial = false 
)
inlineoverride

This overrides an AMReX method just to allow for explicit meshing when desired.

Definition at line 103 of file Integrator.H.

◆ Regrid()

virtual void Integrator::Integrator::Regrid ( int  ,
Set::Scalar   
)
inlineprotectedvirtual

An optionally overridable method to trigger behavior whenver a regrid occurs.

Reimplemented in Integrator::Flame, Integrator::Mechanics< MODEL >, and Integrator::Mechanics< Model::Solid::Affine::Isotropic >.

Definition at line 186 of file Integrator.H.

◆ RemakeLevel()

void Integrator::Integrator::RemakeLevel ( int  lev,
amrex::Real  time,
const amrex::BoxArray &  cgrids,
const amrex::DistributionMapping &  dm 
)
overrideprivatevirtual

RESETS ALL MULTIFABS AT A GIVEN LEVEL.

(OVERRIDES PURE VIRTUAL METHOD - DO NOT CHANGE)

Parameters
[in]levAMR Level
[in]timeSimulation time
[in]cgridsCoarse grids
[in]dmDistribution mapping

Definition at line 254 of file Integrator.cpp.

◆ Restart()

void Integrator::Integrator::Restart ( std::string  restartfile,
bool  a_node = false 
)

Read in output from previous simulation and start simulation at that point - Not currently tested.

Definition at line 513 of file Integrator.cpp.

◆ SetFilename()

void Integrator::Integrator::SetFilename ( std::string  _plot_file)
inline

Simple setter to set filename.

Definition at line 96 of file Integrator.H.

◆ SetFinestLevel()

void Integrator::Integrator::SetFinestLevel ( const int  a_finestlevel)
inlineprotected

Utility to ensure that all fields know what the finest level is.

Definition at line 214 of file Integrator.H.

◆ SetPlotInt()

void Integrator::Integrator::SetPlotInt ( int  plot_int)
protected

Utility to set the frequency (in timesteps) of plotfile dumping.

Definition at line 194 of file Integrator.cpp.

◆ SetStopTime()

void Integrator::Integrator::SetStopTime ( Set::Scalar  a_stop_time)
inlineprotected

Utility to set the global stop time.

Definition at line 241 of file Integrator.H.

◆ SetThermoInt()

void Integrator::Integrator::SetThermoInt ( int  a_thermo_int)
inlineprotected

Utility to set the frequency (in timesteps) of thermo data calculation.

Definition at line 237 of file Integrator.H.

◆ SetThermoPlotInt()

void Integrator::Integrator::SetThermoPlotInt ( int  a_thermo_plot_int)
inlineprotected

Utility to set the frequency (in timesteps) of thermo data writing to file.

Definition at line 239 of file Integrator.H.

◆ SetTimestep()

void Integrator::Integrator::SetTimestep ( Set::Scalar  _timestep)
protected

Utility to set the coarse-grid timestep.

Definition at line 184 of file Integrator.cpp.

◆ TagCellsForRefinement()

virtual void Integrator::Integrator::TagCellsForRefinement ( int  lev,
amrex::TagBoxArray &  tags,
amrex::Real  time,
int  ngrow 
)
protectedpure virtual

◆ TimeStep()

void Integrator::Integrator::TimeStep ( int  lev,
amrex::Real  time,
int  iteration 
)
private

Timestep marching.

Definition at line 1142 of file Integrator.cpp.

◆ TimeStepBegin()

virtual void Integrator::Integrator::TimeStepBegin ( Set::Scalar  ,
int   
)
inlineprotectedvirtual

This optional function is called at the beginning of every timestep, and can be used to complete additional global solves, e.g.

a MLMG implicit solve.

Reimplemented in Integrator::PhaseFieldMicrostructure< model_type >, Integrator::Flame, Integrator::Base::Mechanics< MODEL >, Integrator::Base::Mechanics< Model::Solid::Finite::NeoHookeanPredeformed >, Integrator::Base::Mechanics< model_type >, Integrator::ThermoElastic, Integrator::SutureCrack, and Integrator::Fracture.

Definition at line 166 of file Integrator.H.

◆ TimeStepComplete()

virtual void Integrator::Integrator::TimeStepComplete ( Set::Scalar  ,
int   
)
inlineprotectedvirtual

This optional function is called at the end of every timestep, and can be used to complete additional global solves, e.g.

a MLMG implicit solve.

Reimplemented in Integrator::PhaseFieldMicrostructure< model_type >, Integrator::SutureCrack, Integrator::Fracture, and Integrator::Flame.

Definition at line 170 of file Integrator.H.

◆ WritePlotFile() [1/3]

void Integrator::Integrator::WritePlotFile ( bool  initial = false) const
protected

Definition at line 756 of file Integrator.cpp.

◆ WritePlotFile() [2/3]

void Integrator::Integrator::WritePlotFile ( Set::Scalar  time,
amrex::Vector< int >  iter,
bool  initial = false,
std::string  prefix = "" 
) const
protected

Definition at line 768 of file Integrator.cpp.

◆ WritePlotFile() [3/3]

void Integrator::Integrator::WritePlotFile ( std::string  prefix,
Set::Scalar  time,
int  step 
) const
protected

Definition at line 761 of file Integrator.cpp.

Field Documentation

◆ abort_on_nan

int Integrator::Integrator::abort_on_nan = true
protected

Definition at line 453 of file Integrator.H.

◆ all

bool Integrator::Integrator::all = false

Definition at line 405 of file Integrator.H.

◆ any

bool Integrator::Integrator::any = true

Definition at line 404 of file Integrator.H.

◆ base_regrid_int

int Integrator::Integrator::base_regrid_int = -1
protected

Determine how often to regrid based on coarse level only (default: 0)

Definition at line 439 of file Integrator.H.

◆ bcnothing

BC::Nothing Integrator::Integrator::bcnothing
protected

Definition at line 423 of file Integrator.H.

◆ box

std::vector<amrex::Box> Integrator::Integrator::box

Definition at line 446 of file Integrator.H.

◆ [struct]

struct { ... } Integrator::Integrator::cell

◆ cfl

Set::Scalar Integrator::Integrator::cfl = NAN

Definition at line 251 of file Integrator.H.

◆ dt [1/2]

amrex::Vector<amrex::Real> Integrator::Integrator::dt
protected

Timesteps for each level of refinement.

Definition at line 381 of file Integrator.H.

◆ dt [2/2]

Set::Scalar Integrator::Integrator::dt = NAN

Definition at line 428 of file Integrator.H.

◆ dt_limit_min

std::vector<Set::Scalar> Integrator::Integrator::dt_limit_min

Definition at line 255 of file Integrator.H.

◆ [struct]

struct { ... } Integrator::Integrator::dynamictimestep

◆ [struct]

struct { ... } Integrator::Integrator::explicitmesh

◆ extensives

std::vector<bool> Integrator::Integrator::extensives

Definition at line 434 of file Integrator.H.

◆ fab_array

std::vector<Set::Field<Set::Scalar>*> Integrator::Integrator::fab_array

Definition at line 398 of file Integrator.H.

◆ integrate_variables_after_advance

bool Integrator::Integrator::integrate_variables_after_advance = false
protected

Definition at line 393 of file Integrator.H.

◆ integrate_variables_before_advance

bool Integrator::Integrator::integrate_variables_before_advance = true
protected

Definition at line 392 of file Integrator.H.

◆ interval

int Integrator::Integrator::interval = -1

Definition at line 427 of file Integrator.H.

◆ istep

amrex::Vector<int> Integrator::Integrator::istep
protected

Keep track of where each level is.

Definition at line 339 of file Integrator.H.

◆ m_basefields

std::vector<BaseField*> Integrator::Integrator::m_basefields
protected

Definition at line 420 of file Integrator.H.

◆ m_basefields_cell

std::vector<BaseField*> Integrator::Integrator::m_basefields_cell
protected

Definition at line 421 of file Integrator.H.

◆ max

Set::Scalar Integrator::Integrator::max = NAN

Definition at line 253 of file Integrator.H.

◆ max_plot_level

int Integrator::Integrator::max_plot_level = -1
private

Definition at line 384 of file Integrator.H.

◆ max_step

int Integrator::Integrator::max_step = std::numeric_limits<int>::max()
private

Maximum allowable timestep.

Definition at line 387 of file Integrator.H.

◆ min

Set::Scalar Integrator::Integrator::min = NAN

Definition at line 252 of file Integrator.H.

◆ name_array

std::vector<std::vector<std::string> > Integrator::Integrator::name_array

Definition at line 401 of file Integrator.H.

◆ names

std::vector<std::string> Integrator::Integrator::names

Definition at line 433 of file Integrator.H.

◆ ncomp_array

std::vector<int> Integrator::Integrator::ncomp_array

Definition at line 399 of file Integrator.H.

◆ nghost_array

std::vector<int> Integrator::Integrator::nghost_array

Definition at line 400 of file Integrator.H.

◆ [struct]

struct { ... } Integrator::Integrator::node

◆ nprevious

int Integrator::Integrator::nprevious = -1

Definition at line 250 of file Integrator.H.

◆ nsubsteps

amrex::Vector<int> Integrator::Integrator::nsubsteps
protected

how many substeps on each level?

Definition at line 382 of file Integrator.H.

◆ number

int Integrator::Integrator::number = 0

Definition at line 431 of file Integrator.H.

◆ number_of_fabs

int Integrator::Integrator::number_of_fabs = 0

Definition at line 397 of file Integrator.H.

◆ on [1/2]

bool Integrator::Integrator::on = false

Definition at line 248 of file Integrator.H.

◆ on [2/2]

int Integrator::Integrator::on = 0

Definition at line 445 of file Integrator.H.

◆ physbc_array

std::vector<BC::BC<Set::Scalar>*> Integrator::Integrator::physbc_array

Definition at line 402 of file Integrator.H.

◆ plot_dt

Set::Scalar Integrator::Integrator::plot_dt = NAN

Definition at line 430 of file Integrator.H.

◆ plot_file

std::string Integrator::Integrator::plot_file { "plt" }
protected

Plotfile name.

Definition at line 341 of file Integrator.H.

◆ plot_int

int Integrator::Integrator::plot_int = -1

How frequently to dump plot file (default: never)

Definition at line 429 of file Integrator.H.

◆ previous_timesteps

std::vector<Set::Scalar> Integrator::Integrator::previous_timesteps

Definition at line 256 of file Integrator.H.

◆ regrid_int

int Integrator::Integrator::regrid_int = -1
protected

Determine how often to regrid (default: 2)

Definition at line 438 of file Integrator.H.

◆ restart_file_cell

std::string Integrator::Integrator::restart_file_cell = ""
protected

Definition at line 441 of file Integrator.H.

◆ restart_file_node

std::string Integrator::Integrator::restart_file_node = ""
protected

Definition at line 442 of file Integrator.H.

◆ stop_time

amrex::Real Integrator::Integrator::stop_time = NAN
private

Default stop time.

Definition at line 389 of file Integrator.H.

◆ t_new

amrex::Vector<amrex::Real> Integrator::Integrator::t_new
protected

Keep track of current old simulation time on each level.

Definition at line 338 of file Integrator.H.

◆ t_old

amrex::Vector<amrex::Real> Integrator::Integrator::t_old
private

Keep track of current old simulation time on each level.

Definition at line 386 of file Integrator.H.

◆ [struct]

struct { ... } Integrator::Integrator::thermo

◆ timestep

amrex::Real Integrator::Integrator::timestep = NAN
protected

Timestep for the base level of refinement.

Definition at line 380 of file Integrator.H.

◆ tstart

amrex::Real Integrator::Integrator::tstart = 0
private

Default start time (default: 0)

Definition at line 388 of file Integrator.H.

◆ vars

std::vector<Set::Scalar*> Integrator::Integrator::vars

Definition at line 432 of file Integrator.H.

◆ verbose

int Integrator::Integrator::verbose = -1

Definition at line 249 of file Integrator.H.

◆ writeout_array

std::vector<bool> Integrator::Integrator::writeout_array

Definition at line 403 of file Integrator.H.


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