|
| AdvDiffSemiImplicitHierarchyIntegrator (const std::string &object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, bool register_for_restart=true) |
|
| ~AdvDiffSemiImplicitHierarchyIntegrator ()=default |
|
void | setDefaultConvectiveTimeSteppingType (TimeSteppingType default_convective_time_stepping_type) |
|
TimeSteppingType | getDefaultConvectiveTimeSteppingType () const |
|
void | setDefaultInitialConvectiveTimeSteppingType (TimeSteppingType default_init_convective_time_stepping_type) |
|
TimeSteppingType | getDefaultInitialConvectiveTimeSteppingType () const |
|
void | setDefaultConvectiveOperatorType (const std::string &op_type) |
| Set the default convective operator type to be used by the solver.
|
|
const std::string & | getDefaultConvectiveOperatorType () const |
| Get the default convective operator type used by the solver.
|
|
void | setDefaultConvectiveOperatorInputDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db) |
| Set the default convective operator input database to be used by the solver.
|
|
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | getDefaultConvectiveOperatorInputDatabase () const |
| Get the default convective operator input database to be used by the solver.
|
|
void | registerTransportedQuantity (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, const bool Q_output=true) override |
|
void | setConvectiveTimeSteppingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, TimeSteppingType convective_time_stepping_type) |
|
TimeSteppingType | getConvectiveTimeSteppingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setInitialConvectiveTimeSteppingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, TimeSteppingType init_convective_time_stepping_type) |
|
TimeSteppingType | getInitialConvectiveTimeSteppingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setConvectiveOperatorType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, const std::string &op_type) |
| Set the convective operator type to be used by the solver for a particular transported quantity Q.
|
|
const std::string & | getConvectiveOperatorType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
| Get the convective operator type used by the solver for a particular transported quantity Q.
|
|
void | setConvectiveOperatorInputDatabase (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db) |
| Set the convective operator input database to be used by the solver for a particular transported quantity Q.
|
|
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | getConvectiveOperatorInputDatabase (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
| Get the convective operator boundary input database used by the solver for a particular transported quantity Q.
|
|
void | setConvectiveOperator (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< ConvectiveOperator > convective_op) |
|
virtual SAMRAI::tbox::Pointer< ConvectiveOperator > | getConvectiveOperator (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) |
|
void | setConvectiveOperatorsNeedInit () |
|
void | setConvectiveOperatorNeedsInit (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) |
|
void | initializeHierarchyIntegrator (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > gridding_alg) override |
|
int | getNumberOfCycles () const override |
|
void | preprocessIntegrateHierarchy (double current_time, double new_time, int num_cycles=1) override |
|
void | postprocessIntegrateHierarchy (double current_time, double new_time, bool skip_synchronize_new_state_data, int num_cycles=1) override |
|
| ~AdvDiffHierarchyIntegrator () |
|
void | setDefaultDiffusionTimeSteppingType (TimeSteppingType default_diffusion_time_stepping_type) |
|
TimeSteppingType | getDefaultDiffusionTimeSteppingType () const |
|
void | setDefaultConvectiveDifferencingType (ConvectiveDifferencingType default_convective_difference_form) |
|
ConvectiveDifferencingType | getDefaultConvectiveDifferencingType () const |
|
virtual void | registerAdvectionVelocity (SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > u_var) |
|
void | setAdvectionVelocityIsDivergenceFree (SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > u_var, bool is_div_free) |
|
bool | getAdvectionVelocityIsDivergenceFree (SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > u_var) const |
|
void | setAdvectionVelocityFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > u_var, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > u_fcn) |
|
SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | getAdvectionVelocityFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > u_var) const |
|
virtual void | registerSourceTerm (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > F_var, const bool output_F=true) |
|
void | setSourceTermFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > F_var, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > F_fcn) |
|
SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | getSourceTermFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > F_var) const |
|
void | setAdvectionVelocity (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > u_var) |
|
SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > | getAdvectionVelocity (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setSourceTerm (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > F_var) |
|
SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | getSourceTerm (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setDiffusionTimeSteppingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, TimeSteppingType time_stepping_type) |
|
TimeSteppingType | getDiffusionTimeSteppingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setConvectiveDifferencingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, ConvectiveDifferencingType difference_form) |
|
ConvectiveDifferencingType | getConvectiveDifferencingType (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setDiffusionCoefficient (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, double kappa) |
|
double | getDiffusionCoefficient (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | registerDiffusionCoefficientVariable (SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > D_var) |
|
void | setDiffusionCoefficientFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > D_var, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > D_fcn) |
|
SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | getDiffusionCoefficientFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > D_var) const |
|
void | setDiffusionCoefficientVariable (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > D_var) |
|
SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | getDiffusionCoefficientVariable (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
bool | isDiffusionCoefficientVariable (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setDampingCoefficient (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, double lambda) |
|
double | getDampingCoefficient (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setInitialConditions (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > Q_init) |
|
SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | getInitialConditions (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setPhysicalBcCoef (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::solv::RobinBcCoefStrategy< NDIM > *Q_bc_coef) |
|
void | setPhysicalBcCoefs (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, const std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > &Q_bc_coef) |
|
std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > | getPhysicalBcCoefs (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
|
void | setHelmholtzSolver (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< IBTK::PoissonSolver > helmholtz_solver) |
|
SAMRAI::tbox::Pointer< IBTK::PoissonSolver > | getHelmholtzSolver (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) |
|
void | setHelmholtzSolversNeedInit () |
|
void | setHelmholtzSolverNeedsInit (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) |
|
void | setHelmholtzRHSOperator (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, SAMRAI::tbox::Pointer< IBTK::LaplaceOperator > helmholtz_rhs_operator) |
|
SAMRAI::tbox::Pointer< IBTK::LaplaceOperator > | getHelmholtzRHSOperator (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) |
|
void | setHelmholtzRHSOperatorsNeedInit () |
|
void | setHelmholtzRHSOperatorNeedsInit (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) |
|
void | registerResetFunction (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, ResetPropertiesFcnPtr callback, void *ctx) |
| Register a reset callback function for a specified variable.
|
|
void | setResetPriority (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var, int priority) |
| Set a reset priority for a particular variable. More...
|
|
std::vector< ResetPropertiesFcnPtr > | getResetFunctions (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
| Get the reset callback functions registered with this variable.
|
|
int | getResetPriority (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > Q_var) const |
| Get the reset priority for a particular variable.
|
|
| HierarchyIntegrator (std::string object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, bool register_for_restart) |
|
| ~HierarchyIntegrator () |
|
const std::string & | getName () const |
|
virtual void | initializePatchHierarchy (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > gridding_alg) |
|
virtual void | advanceHierarchy (double dt) |
|
double | getMinimumTimeStepSize () |
|
double | getMaximumTimeStepSize () |
|
void | synchronizeHierarchyData (VariableContextType ctx_type) |
|
void | resetTimeDependentHierarchyData (double new_time) |
|
void | resetIntegratorToPreadvanceState () |
|
virtual void | regridHierarchy () |
|
bool | atRegridPoint () const |
|
double | getIntegratorTime () const |
|
double | getStartTime () const |
|
double | getEndTime () const |
|
int | getIntegratorStep () const |
|
int | getMaxIntegratorSteps () const |
|
bool | stepsRemaining () const |
|
void | updateWorkloadEstimates () |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > | getPatchHierarchy () const |
|
SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > | getGriddingAlgorithm () const |
|
virtual void | registerLoadBalancer (SAMRAI::tbox::Pointer< SAMRAI::mesh::LoadBalancer< NDIM > > load_balancer) |
|
int | getWorkloadDataIndex () const |
|
void | registerVisItDataWriter (SAMRAI::tbox::Pointer< SAMRAI::appu::VisItDataWriter< NDIM > > visit_writer) |
|
SAMRAI::tbox::Pointer< SAMRAI::appu::VisItDataWriter< NDIM > > | getVisItDataWriter () const |
|
void | setupPlotData () |
|
virtual int | getCurrentCycleNumber () const |
|
virtual double | getCurrentTimeStepSize () const |
|
void | integrateHierarchy (double current_time, double new_time, int cycle_num=0) |
|
void | skipCycle (double current_time, double new_time, int cycle_num=0) |
|
void | registerPreprocessIntegrateHierarchyCallback (PreprocessIntegrateHierarchyCallbackFcnPtr callback, void *ctx=nullptr) |
|
void | registerIntegrateHierarchyCallback (IntegrateHierarchyCallbackFcnPtr callback, void *ctx=nullptr) |
|
void | registerPostprocessIntegrateHierarchyCallback (PostprocessIntegrateHierarchyCallbackFcnPtr callback, void *ctx=nullptr) |
|
void | registerApplyGradientDetectorCallback (ApplyGradientDetectorCallbackFcnPtr callback, void *ctx=nullptr) |
|
void | registerRegridHierarchyCallback (RegridHierarchyCallbackFcnPtr, void *ctx=nullptr) |
|
void | initializeCompositeHierarchyData (double init_data_time, bool initial_time) |
|
void | initializeLevelData (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool can_be_refined, bool initial_time, SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchLevel< NDIM > > old_level=SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchLevel< NDIM > >(NULL), bool allocate_data=true) override |
|
void | resetHierarchyConfiguration (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int coarsest_level, int finest_level) override |
|
void | applyGradientDetector (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int level_number, double error_data_time, int tag_index, bool initial_time, bool uses_richardson_extrapolation_too) override |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | getContext (VariableContextType ctx_type) const |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | getCurrentContext () const |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | getNewContext () const |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | getScratchContext () const |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | getPlotContext () const |
|
bool | isAllocatedPatchData (int data_idx, int coarsest_ln=invalid_level_number, int finest_ln=invalid_level_number) const |
|
void | allocatePatchData (int data_idx, double data_time, int coarsest_ln=invalid_level_number, int finest_ln=invalid_level_number) const |
|
void | deallocatePatchData (int data_idx, int coarsest_ln=invalid_level_number, int finest_ln=invalid_level_number) const |
|
SAMRAI::tbox::Pointer< HierarchyMathOps > | getHierarchyMathOps () const |
|
void | registerVariable (int ¤t_idx, int &new_idx, int &scratch_idx, SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > variable, const SAMRAI::hier::IntVector< NDIM > &scratch_ghosts=SAMRAI::hier::IntVector< NDIM >(0), const std::string &coarsen_name="NO_COARSEN", const std::string &refine_name="NO_REFINE", SAMRAI::tbox::Pointer< CartGridFunction > init_fcn=SAMRAI::tbox::Pointer< CartGridFunction >(NULL), const bool register_for_restart=true) |
|
void | registerVariable (int &idx, SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > variable, const SAMRAI::hier::IntVector< NDIM > &ghosts=SAMRAI::hier::IntVector< NDIM >(0), SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > ctx=SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext >(NULL), const bool register_for_restart=true) |
|
void | putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
|
Public Member Functions inherited from SAMRAI::mesh::StandardTagAndInitStrategy< NDIM > |
virtual double | getLevelDt (const tbox::Pointer< hier::BasePatchLevel< NDIM > > level, const double dt_time, const bool initial_time) |
|
virtual double | advanceLevel (const tbox::Pointer< hier::BasePatchLevel< NDIM > > level, const tbox::Pointer< hier::BasePatchHierarchy< NDIM > > hierarchy, const double current_time, const double new_time, const bool first_step, const bool last_step, const bool regrid_advance=false) |
|
virtual void | resetTimeDependentData (const tbox::Pointer< hier::BasePatchLevel< NDIM > > level, const double new_time, const bool can_be_refined) |
|
virtual void | resetDataToPreadvanceState (const tbox::Pointer< hier::BasePatchLevel< NDIM > > level) |
|
virtual void | applyRichardsonExtrapolation (const tbox::Pointer< hier::PatchLevel< NDIM > > level, const double error_data_time, const int tag_index, const double deltat, const int error_coarsen_ratio, const bool initial_time, const bool uses_gradient_detector_too) |
|
virtual void | coarsenDataForRichardsonExtrapolation (const tbox::Pointer< hier::PatchHierarchy< NDIM > > hierarchy, const int level_number, const tbox::Pointer< hier::PatchLevel< NDIM > > coarser_level, const double coarsen_data_time, const bool before_advance) |
|
|
void | integrateHierarchySpecialized (double current_time, double new_time, int cycle_num=0) override |
|
void | resetHierarchyConfigurationSpecialized (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int coarsest_level, int finest_level) override |
|
void | putToDatabaseSpecialized (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
|
| AdvDiffHierarchyIntegrator (const std::string &object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, bool register_for_restart) |
|
double | getMaximumTimeStepSizeSpecialized () override |
|
void | initializeCompositeHierarchyDataSpecialized (double init_data_time, bool initial_time) override |
|
void | registerVariables () |
|
virtual void | regridHierarchyBeginSpecialized () |
|
virtual void | regridHierarchyEndSpecialized () |
|
virtual double | getMinimumTimeStepSizeSpecialized () |
|
virtual void | synchronizeHierarchyDataSpecialized (VariableContextType ctx_type) |
|
virtual void | resetTimeDependentHierarchyDataSpecialized (double new_time) |
|
virtual void | resetIntegratorToPreadvanceStateSpecialized () |
|
virtual bool | atRegridPointSpecialized () const |
|
virtual void | setupPlotDataSpecialized () |
|
virtual void | initializeLevelDataSpecialized (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool can_be_refined, bool initial_time, SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchLevel< NDIM > > old_level, bool allocate_data) |
|
virtual void | applyGradientDetectorSpecialized (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int level_number, double error_data_time, int tag_index, bool initial_time, bool uses_richardson_extrapolation_too) |
|
virtual void | addWorkloadEstimate (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, const int workload_data_idx) |
|
virtual void | executePreprocessIntegrateHierarchyCallbackFcns (double current_time, double new_time, int num_cycles) |
|
virtual void | executeIntegrateHierarchyCallbackFcns (double current_time, double new_time, int cycle_num) |
|
virtual void | executePostprocessIntegrateHierarchyCallbackFcns (double current_time, double new_time, bool skip_synchronize_new_state_data, int num_cycles) |
|
virtual void | executeApplyGradientDetectorCallbackFcns (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int level_number, double error_data_time, int tag_index, bool initial_time, bool uses_richardson_extrapolation_too) |
|
virtual void | executeRegridHierarchyCallbackFcns (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, double data_time, bool initial_time) |
|
void | registerGhostfillRefineAlgorithm (const std::string &name, SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineAlgorithm< NDIM > > ghostfill_alg, std::unique_ptr< SAMRAI::xfer::RefinePatchStrategy< NDIM > > ghostfill_patch_strategy=nullptr) |
|
void | registerProlongRefineAlgorithm (const std::string &name, SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineAlgorithm< NDIM > > prolong_alg, std::unique_ptr< SAMRAI::xfer::RefinePatchStrategy< NDIM > > prolong_patch_strategy=nullptr) |
|
void | registerCoarsenAlgorithm (const std::string &name, SAMRAI::tbox::Pointer< SAMRAI::xfer::CoarsenAlgorithm< NDIM > > coarsen_alg, std::unique_ptr< SAMRAI::xfer::CoarsenPatchStrategy< NDIM > > coarsen_patch_strategy=nullptr) |
|
SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineAlgorithm< NDIM > > | getGhostfillRefineAlgorithm (const std::string &name) const |
|
SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineAlgorithm< NDIM > > | getProlongRefineAlgorithm (const std::string &name) const |
|
SAMRAI::tbox::Pointer< SAMRAI::xfer::CoarsenAlgorithm< NDIM > > | getCoarsenAlgorithm (const std::string &name) const |
|
const std::vector< SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineSchedule< NDIM > > > & | getGhostfillRefineSchedules (const std::string &name) const |
|
const std::vector< SAMRAI::tbox::Pointer< SAMRAI::xfer::RefineSchedule< NDIM > > > & | getProlongRefineSchedules (const std::string &name) const |
|
const std::vector< SAMRAI::tbox::Pointer< SAMRAI::xfer::CoarsenSchedule< NDIM > > > & | getCoarsenSchedules (const std::string &name) const |
|
void | registerChildHierarchyIntegrator (HierarchyIntegrator *child_integrator) |
|
void | registerParentHierarchyIntegrator (HierarchyIntegrator *parent_integrator) |
|
SAMRAI::tbox::Pointer< HierarchyMathOps > | buildHierarchyMathOps (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy) |
|
void | setupTagBuffer (SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > gridding_alg) |
|
bool | regriddingHierarchy () const |
|
bool | atRegridTimeStep () const |
|
|
TimeSteppingType | d_default_convective_time_stepping_type |
|
TimeSteppingType | d_default_init_convective_time_stepping_type |
|
std::string | d_default_convective_op_type |
|
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_default_convective_op_input_db |
|
SAMRAI::tbox::Pointer< SAMRAI::math::HierarchyFaceDataOpsReal< NDIM, double > > | d_hier_fc_data_ops |
|
std::set< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_N_var |
|
std::set< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_N_old_var |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_Q_N_map |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_Q_N_old_map |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, TimeSteppingType > | d_Q_convective_time_stepping_type |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, TimeSteppingType > | d_Q_init_convective_time_stepping_type |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, std::string > | d_Q_convective_op_type |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > > | d_Q_convective_op_input_db |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< ConvectiveOperator > > | d_Q_convective_op |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, bool > | d_Q_convective_op_needs_init |
|
bool | d_integrator_is_initialized = false |
|
double | d_cfl_max = 0.5 |
|
TimeSteppingType | d_default_diffusion_time_stepping_type = TRAPEZOIDAL_RULE |
|
ConvectiveDifferencingType | d_default_convective_difference_form = CONSERVATIVE |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > > | d_u_var |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > >, bool > | d_u_is_div_free |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > >, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > > | d_u_fcn |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_F_var |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > > | d_F_fcn |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, bool > | d_F_output |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > > | d_diffusion_coef_var |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > > | d_diffusion_coef_rhs_var |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > >, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > > | d_diffusion_coef_fcn |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > > | d_diffusion_coef_rhs_map |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_Q_var |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_Q_rhs_var |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > > | d_Q_u_map |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_Q_F_map |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > > | d_Q_Q_rhs_map |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, TimeSteppingType > | d_Q_diffusion_time_stepping_type |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, ConvectiveDifferencingType > | d_Q_difference_form |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, double > | d_Q_diffusion_coef |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > > | d_Q_diffusion_coef_variable |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, bool > | d_Q_is_diffusion_coef_variable |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, double > | d_Q_damping_coef |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, SAMRAI::tbox::Pointer< IBTK::CartGridFunction > > | d_Q_init |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > > | d_Q_bc_coef |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, bool > | d_Q_output |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, std::vector< ResetPropertiesFcnPtr > > | d_Q_reset_fcns |
|
std::map< SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > >, std::vector< void * > > | d_Q_reset_fcns_ctx |
|
std::vector< int > | d_Q_reset_priority |
|
SAMRAI::tbox::Pointer< SAMRAI::math::HierarchyCellDataOpsReal< NDIM, double > > | d_hier_cc_data_ops |
|
SAMRAI::tbox::Pointer< SAMRAI::math::HierarchySideDataOpsReal< NDIM, double > > | d_hier_sc_data_ops |
|
std::vector< SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > > | d_hier_bdry_fill_ops |
|
SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_no_fill_op |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > > | d_sol_vecs |
|
std::vector< SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > > | d_rhs_vecs |
|
std::string | d_helmholtz_solver_type |
|
std::string | d_helmholtz_precond_type |
|
std::string | d_helmholtz_sub_precond_type |
|
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_helmholtz_solver_db |
|
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_helmholtz_precond_db |
|
SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_helmholtz_sub_precond_db |
|
std::vector< SAMRAI::tbox::Pointer< IBTK::PoissonSolver > > | d_helmholtz_solvers |
|
std::vector< SAMRAI::tbox::Pointer< IBTK::LaplaceOperator > > | d_helmholtz_rhs_ops |
|
std::vector< bool > | d_helmholtz_solvers_need_init |
|
std::vector< bool > | d_helmholtz_rhs_ops_need_init |
|
int | d_coarsest_reset_ln = IBTK::invalid_level_number |
|
int | d_finest_reset_ln = IBTK::invalid_level_number |
|
std::string | d_object_name |
|
bool | d_registered_for_restart = false |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > | d_hierarchy |
|
SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > | d_gridding_alg |
|
SAMRAI::tbox::Pointer< SAMRAI::mesh::LoadBalancer< NDIM > > | d_load_balancer |
|
SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_workload_var |
|
int | d_workload_idx = IBTK::invalid_index |
|
bool | d_hierarchy_is_initialized = false |
|
bool | d_may_need_to_reset_hierarchy_configuration = false |
|
HierarchyIntegrator * | d_parent_integrator = nullptr |
|
std::set< HierarchyIntegrator * > | d_child_integrators |
|
SAMRAI::tbox::Pointer< SAMRAI::appu::VisItDataWriter< NDIM > > | d_visit_writer |
|
double | d_integrator_time = std::numeric_limits<double>::quiet_NaN() |
|
double | d_start_time = 0.0 |
|
double | d_end_time = std::numeric_limits<double>::max() |
|
double | d_dt_init = std::numeric_limits<double>::max() |
|
double | d_dt_min = 0.0 |
|
double | d_dt_max = std::numeric_limits<double>::max() |
|
double | d_dt_growth_factor = 2.0 |
|
int | d_integrator_step = 0 |
|
int | d_max_integrator_steps = std::numeric_limits<int>::max() |
|
std::deque< double > | d_dt_previous |
|
int | d_num_cycles = 1 |
|
int | d_current_num_cycles = -1 |
|
int | d_current_cycle_num = -1 |
|
double | d_current_dt = std::numeric_limits<double>::quiet_NaN() |
|
int | d_regrid_interval = 1 |
|
RegridMode | d_regrid_mode = STANDARD |
|
bool | d_enable_logging = false |
|
bool | d_enable_logging_solver_iterations = false |
|
std::string | d_bdry_extrap_type = "LINEAR" |
|
SAMRAI::tbox::Array< int > | d_tag_buffer = { 0 } |
|
SAMRAI::tbox::Pointer< HierarchyMathOps > | d_hier_math_ops |
|
bool | d_manage_hier_math_ops = true |
|
std::list< SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > > | d_state_variables |
|
std::list< SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > > | d_scratch_variables |
|
std::list< SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > > | d_copy_scratch_to_current_fast |
|
std::list< SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > > | d_copy_scratch_to_current_slow |
|
SAMRAI::hier::ComponentSelector | d_current_data |
|
SAMRAI::hier::ComponentSelector | d_new_data |
|
SAMRAI::hier::ComponentSelector | d_scratch_data |
|
SAMRAI::hier::ComponentSelector | d_plot_data |
|
std::map< SAMRAI::hier::Variable< NDIM > *, SAMRAI::tbox::Pointer< CartGridFunction > > | d_state_var_init_fcns |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | d_current_context |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | d_new_context |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | d_scratch_context |
|
SAMRAI::tbox::Pointer< SAMRAI::hier::VariableContext > | d_plot_context |
|
SAMRAI::hier::ComponentSelector | d_fill_after_regrid_bc_idxs |
|
SAMRAI::xfer::RefineAlgorithm< NDIM > | d_fill_after_regrid_prolong_alg |
|
std::unique_ptr< SAMRAI::xfer::RefinePatchStrategy< NDIM > > | d_fill_after_regrid_phys_bdry_bc_op |
|
std::vector< PreprocessIntegrateHierarchyCallbackFcnPtr > | d_preprocess_integrate_hierarchy_callbacks |
|
std::vector< void * > | d_preprocess_integrate_hierarchy_callback_ctxs |
|
std::vector< IntegrateHierarchyCallbackFcnPtr > | d_integrate_hierarchy_callbacks |
|
std::vector< void * > | d_integrate_hierarchy_callback_ctxs |
|
std::vector< PostprocessIntegrateHierarchyCallbackFcnPtr > | d_postprocess_integrate_hierarchy_callbacks |
|
std::vector< void * > | d_postprocess_integrate_hierarchy_callback_ctxs |
|
std::vector< ApplyGradientDetectorCallbackFcnPtr > | d_apply_gradient_detector_callbacks |
|
std::vector< void * > | d_apply_gradient_detector_callback_ctxs |
|
std::vector< RegridHierarchyCallbackFcnPtr > | d_regrid_hierarchy_callbacks |
|
std::vector< void * > | d_regrid_hierarchy_callback_ctxs |
|
Class AdvDiffSemiImplicitHierarchyIntegrator manages the spatial discretization and time integration of scalar- and vector-valued quantities whose dynamics are governed by the advection-diffusion equation.
Each quantity managed by the integrator may have a unique diffusion coefficient and damping coefficient , and may optionally have a forcing term . Additionally, a different advection velocity may be used with each quantity registered with the integrator.
This hierarchy integrator advances all levels of the patch hierarchy synchronously in time. In particular, subcycling in time is not performed.
Various options are available for the spatial and temporal discretizations.
- See also
- HierarchyIntegrator
-
SAMRAI::mesh::StandardTagAndInitStrategy
-
SAMRAI::algs::TimeRefinementIntegrator
-
SAMRAI::algs::TimeRefinementLevelStrategy