|
| | INSVCStaggeredHierarchyIntegrator (std::string object_name, SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db, bool register_for_restart=true) |
| |
| | ~INSVCStaggeredHierarchyIntegrator () |
| |
| SAMRAI::tbox::Pointer< ConvectiveOperator > | getConvectiveOperator () override |
| |
| SAMRAI::tbox::Pointer< IBTK::PoissonSolver > | getVelocitySubdomainSolver () override |
| |
| SAMRAI::tbox::Pointer< IBTK::PoissonSolver > | getPressureSubdomainSolver () override |
| |
| void | setStokesSolver (SAMRAI::tbox::Pointer< StaggeredStokesSolver > stokes_solver) |
| |
| SAMRAI::tbox::Pointer< StaggeredStokesSolver > | getStokesSolver () |
| |
| void | setStokesSolverNeedsInit () |
| |
| virtual void | initializeHierarchyIntegrator (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > gridding_alg) override |
| |
| virtual void | initializePatchHierarchy (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, SAMRAI::tbox::Pointer< SAMRAI::mesh::GriddingAlgorithm< NDIM > > gridding_alg) override |
| |
| virtual void | preprocessIntegrateHierarchy (double current_time, double new_time, int num_cycles=1) override |
| |
| virtual void | postprocessIntegrateHierarchy (double current_time, double new_time, bool skip_synchronize_new_state_data, int num_cycles=1) override |
| |
| void | removeNullSpace (const SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > &sol_vec) |
| |
| void | registerMassDensityVariable (SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > rho_var) |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getMassDensityVariable () const |
| |
| void | registerViscosityVariable (SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > mu_var) |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getViscosityVariable () const |
| |
| void | setDensityVCInterpolationType (const IBTK::VCInterpType vc_interp_type) |
| |
| void | setViscosityVCInterpolationType (const IBTK::VCInterpType vc_interp_type) |
| |
| void | registerResetFluidDensityFcn (ResetFluidPropertiesFcnPtr callback, void *ctx) |
| | Register function to reset fluid density. More...
|
| |
| void | registerResetFluidViscosityFcn (ResetFluidPropertiesFcnPtr callback, void *ctx) |
| | Register function to reset fluid viscosity. More...
|
| |
| virtual void | registerBrinkmanPenalizationStrategy (SAMRAI::tbox::Pointer< IBAMR::BrinkmanPenalizationStrategy > brinkman_force) |
| | Register BrinkmanPenalizationStrategy objects to add Brinkman penalization term in the momentum equation. More...
|
| |
| void | registerMassDensityInitialConditions (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > rho_init_fcn) |
| | Supply initial conditions for the density field, if maintained by the fluid integrator. More...
|
| |
| void | registerViscosityInitialConditions (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > mu_init_fcn) |
| | Supply initial conditions for the viscosity field, if maintained by the fluid integrator. More...
|
| |
| virtual void | registerMassDensityBoundaryConditions (SAMRAI::solv::RobinBcCoefStrategy< NDIM > *rho_bc_coef)=0 |
| |
| void | registerViscosityBoundaryConditions (SAMRAI::solv::RobinBcCoefStrategy< NDIM > *mu_bc_coef) |
| |
| void | setTransportedViscosityVariable (SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > mu_adv_diff_var, unsigned int adv_diff_idx=0) |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | getTransportedViscosityVariable () const |
| | Get the transported viscosity variable that is being manintained by an advection-diffusion integrator. More...
|
| |
| int | getLinearOperatorRhoPatchDataIndex () const |
| | Get the side-centered density patch data index, which will always be the newest one used in the linear operator i.e. rho_sc in rho_sc*u^{n+1} term. More...
|
| |
| bool | rhoIsConstant () const |
| | Get whether or not density is constant. More...
|
| |
| bool | muIsConstant () const |
| | Get whether or not viscosity is constant. More...
|
| |
| int | getLinearOperatorMuPatchDataIndex () const |
| | Get the cell-centered viscosity patch data index, which will always be the newest one used in the linear operator. More...
|
| |
| int | getInterpolatedLinearOperatorMuPatchDataIndex () const |
| | Get the interpolated viscosity patch data index, which will always be the newest one used in the linear operator. More...
|
| |
| SAMRAI::tbox::Array< double > | getScalingFactor () const |
| | Get the scaling factor used for A, p and u_rhs. More...
|
| |
| SAMRAI::solv::RobinBcCoefStrategy< NDIM > * | getViscosityBoundaryConditions () const |
| | Get the viscosity boundary conditions. More...
|
| |
| const std::vector< SAMRAI::tbox::Pointer< IBAMR::BrinkmanPenalizationStrategy > > & | getBrinkmanPenalizationStrategy () const |
| | Get the Brinkman penalization objects registered with this class. More...
|
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getOldVelocityVariable () const |
| | Get "old" velocity variable. More...
|
| |
| void | setViscousTimeSteppingType (TimeSteppingType viscous_time_stepping_type) |
| |
| TimeSteppingType | getViscousTimeSteppingType () const |
| |
| void | setConvectiveTimeSteppingType (TimeSteppingType convective_time_stepping_type) |
| |
| TimeSteppingType | getConvectiveTimeSteppingType () const |
| |
| void | setInitialConvectiveTimeSteppingType (TimeSteppingType init_convective_time_stepping_type) const |
| |
| TimeSteppingType | getInitialConvectiveTimeSteppingType () const |
| |
| void | registerAdvDiffHierarchyIntegrator (SAMRAI::tbox::Pointer< AdvDiffHierarchyIntegrator > adv_diff_hier_integrator) |
| |
| void | setStokesSpecifications (StokesSpecifications problem_coefs) |
| |
| const StokesSpecifications * | getStokesSpecifications () const |
| |
| void | registerPhysicalBoundaryConditions (const std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > &bc_coefs) |
| |
| virtual const std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > & | getVelocityBoundaryConditions () const |
| |
| virtual SAMRAI::solv::RobinBcCoefStrategy< NDIM > * | getPressureBoundaryConditions () const |
| |
| void | registerVelocityInitialConditions (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > U_init) |
| |
| void | registerPressureInitialConditions (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > P_init) |
| |
| void | registerBodyForceFunction (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > F_fcn) |
| |
| void | registerFluidSourceFunction (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > Q_fcn) |
| |
| void | registerVelocityDivergenceFunction (SAMRAI::tbox::Pointer< IBTK::CartGridFunction > Q_fcn) |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getVelocityVariable () const |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getPressureVariable () const |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getBodyForceVariable () const |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getFluidSourceVariable () const |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | getVelocityDivergenceVariable () const |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > | getAdvectionVelocityVariable () const |
| |
| std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > | getIntermediateVelocityBoundaryConditions () const |
| |
| SAMRAI::solv::RobinBcCoefStrategy< NDIM > * | getProjectionBoundaryConditions () const |
| |
| void | setConvectiveOperatorType (const std::string &op_type) |
| | Set the convective operator type to be used by the solver. More...
|
| |
| const std::string & | getConvectiveOperatorType () const |
| | Get the convective operator type used by the solver. More...
|
| |
| void | setConvectiveDifferencingType (ConvectiveDifferencingType difference_form) |
| | Set the convective differencing form to be used by the solver. More...
|
| |
| ConvectiveDifferencingType | getConvectiveDifferencingType () const |
| | Get the convective differencing form used by the solver. More...
|
| |
| void | setCreepingFlow (bool creeping_flow) |
| | Set whether the integrator solves the time-dependent (creeping) Stokes equations. Otherwise, the integrator solves the time-dependent Navier-Stokes equations. More...
|
| |
| bool | getCreepingFlow () const |
| | Get whether the integrator solves the time-dependent (creeping) Stokes equations. Otherwise, the integrator solves the time-dependent Navier-Stokes equations. More...
|
| |
| void | setConvectiveOperator (SAMRAI::tbox::Pointer< ConvectiveOperator > convective_op) |
| |
| void | setConvectiveOperatorNeedsInit () |
| |
| void | setVelocitySubdomainSolver (SAMRAI::tbox::Pointer< IBTK::PoissonSolver > velocity_solver) |
| |
| void | setVelocitySubdomainSolverNeedsInit () |
| |
| void | setPressureSubdomainSolver (SAMRAI::tbox::Pointer< IBTK::PoissonSolver > pressure_solver) |
| |
| void | setPressureSubdomainSolverNeedsInit () |
| |
| int | getNumberOfCycles () const override |
| |
| virtual double | getCurrentCFLNumber () const |
| |
| const std::string & | getName () const |
| |
| 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 > >(nullptr), bool allocate_data=true) override |
| |
| virtual void | initializeLevelData (const tbox::Pointer< hier::BasePatchHierarchy< DIM > > hierarchy, const int level_number, const double init_data_time, const bool can_be_refined, const bool initial_time, const tbox::Pointer< hier::BasePatchLevel< DIM > > old_level=tbox::Pointer< hier::BasePatchLevel< DIM > >(NULL), const bool allocate_data=true)=0 |
| |
| void | resetHierarchyConfiguration (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int coarsest_level, int finest_level) override |
| |
| virtual void | resetHierarchyConfiguration (const tbox::Pointer< hier::BasePatchHierarchy< DIM > > hierarchy, const int coarsest_level, const int finest_level)=0 |
| |
| 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 |
| |
| virtual void | applyGradientDetector (const tbox::Pointer< hier::BasePatchHierarchy< DIM > > hierarchy, const int level_number, const double error_data_time, const int tag_index, const bool initial_time, const bool uses_richardson_extrapolation_too) |
| |
| 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=nullptr, 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 >(nullptr), const bool register_for_restart=true) |
| |
| void | putToDatabase (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
| |
| virtual double | getLevelDt (const tbox::Pointer< hier::BasePatchLevel< DIM > > level, const double dt_time, const bool initial_time) |
| |
| virtual double | advanceLevel (const tbox::Pointer< hier::BasePatchLevel< DIM > > level, const tbox::Pointer< hier::BasePatchHierarchy< DIM > > 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< DIM > > level, const double new_time, const bool can_be_refined) |
| |
| virtual void | resetDataToPreadvanceState (const tbox::Pointer< hier::BasePatchLevel< DIM > > level) |
| |
| virtual void | applyRichardsonExtrapolation (const tbox::Pointer< hier::PatchLevel< DIM > > 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< DIM > > hierarchy, const int level_number, const tbox::Pointer< hier::PatchLevel< DIM > > coarser_level, const double coarsen_data_time, const bool before_advance) |
| |
|
| double | getStableTimestep (SAMRAI::tbox::Pointer< SAMRAI::hier::Patch< NDIM > > patch) const override |
| |
| void | regridHierarchyBeginSpecialized () override |
| |
| void | regridHierarchyEndSpecialized () override |
| |
| void | initializeCompositeHierarchyDataSpecialized (double init_data_time, bool initial_time) override |
| |
| 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) override |
| |
| virtual void | resetHierarchyConfigurationSpecialized (SAMRAI::tbox::Pointer< SAMRAI::hier::BasePatchHierarchy< NDIM > > hierarchy, int coarsest_level, int finest_level) override |
| |
| 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) override |
| |
| virtual void | setupPlotDataSpecialized () override |
| |
| void | copySideToFace (const int U_fc_idx, const int U_sc_idx, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy) |
| |
| virtual void | regridProjection (const bool initial_time)=0 |
| |
| virtual void | updateCurrentCFLNumber (const int data_idx, const double dt) |
| |
| double | getMaximumVorticityMagnitude (const int Omega_idx) |
| |
| void | tagCellsByVorticityMagnitude (const int level_number, const int Omega_idx, const int tag_idx) |
| |
| double | getMaximumTimeStepSizeSpecialized () override |
| |
| double | getStableTimestep (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > > level) const |
| |
| void | putToDatabaseSpecialized (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > db) override |
| |
| virtual void | integrateHierarchySpecialized (double current_time, double new_time, int cycle_num=0)=0 |
| |
| virtual double | getMinimumTimeStepSizeSpecialized () |
| |
| virtual void | synchronizeHierarchyDataSpecialized (VariableContextType ctx_type) |
| |
| virtual void | resetTimeDependentHierarchyDataSpecialized (double new_time) |
| |
| virtual void | resetIntegratorToPreadvanceStateSpecialized () |
| |
| virtual bool | atRegridPointSpecialized () const |
| |
| 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 |
| |
|
| double | d_div_U_norm_1_pre = 0.0 |
| |
| double | d_div_U_norm_2_pre = 0.0 |
| |
| double | d_div_U_norm_oo_pre = 0.0 |
| |
| double | d_div_U_norm_1_post = 0.0 |
| |
| double | d_div_U_norm_2_post = 0.0 |
| |
| double | d_div_U_norm_oo_post = 0.0 |
| |
| bool | d_do_regrid_projection = false |
| |
| SAMRAI::tbox::Pointer< SAMRAI::math::HierarchyCellDataOpsReal< NDIM, double > > | d_hier_cc_data_ops |
| |
| SAMRAI::tbox::Pointer< SAMRAI::math::HierarchyFaceDataOpsReal< NDIM, double > > | d_hier_fc_data_ops |
| |
| SAMRAI::tbox::Pointer< SAMRAI::math::HierarchySideDataOpsReal< NDIM, double > > | d_hier_sc_data_ops |
| |
| SAMRAI::tbox::Pointer< SAMRAI::math::HierarchyNodeDataOpsReal< NDIM, double > > | d_hier_nc_data_ops |
| |
| SAMRAI::tbox::Pointer< SAMRAI::math::HierarchyEdgeDataOpsReal< NDIM, double > > | d_hier_ec_data_ops |
| |
| SAMRAI::tbox::Pointer< StaggeredStokesPhysicalBoundaryHelper > | d_bc_helper |
| |
| SAMRAI::tbox::Pointer< IBTK::SideDataSynchronization > | d_side_synch_op |
| |
| SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_rho_bdry_bc_fill_op |
| |
| SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_mu_bdry_bc_fill_op |
| |
| double | d_rho_scale = 1.0 |
| |
| double | d_mu_scale = 1.0 |
| |
| bool | d_output_rho = false |
| |
| bool | d_output_mu = false |
| |
| int | d_coarsest_reset_ln |
| |
| int | d_finest_reset_ln |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_U_scratch_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_U_rhs_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_U_adv_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_N_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_P_scratch_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_P_rhs_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_sol_vec |
| |
| SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > | d_rhs_vec |
| |
| std::vector< SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > > | d_nul_vecs |
| |
| std::vector< SAMRAI::tbox::Pointer< SAMRAI::solv::SAMRAIVectorReal< NDIM, double > > > | d_U_nul_vecs |
| |
| bool | d_vectors_need_init |
| |
| bool | d_explicitly_remove_nullspace = false |
| |
| std::string | d_stokes_solver_type = StaggeredStokesSolverManager::UNDEFINED |
| |
| std::string | d_stokes_precond_type = StaggeredStokesSolverManager::UNDEFINED |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_stokes_solver_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_stokes_precond_db |
| |
| SAMRAI::tbox::Pointer< StaggeredStokesSolver > | d_stokes_solver |
| |
| bool | d_stokes_solver_needs_init |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_U_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_U_old_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_U_cc_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_P_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_F_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_F_cc_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_N_old_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_Omega_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_Div_U_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_U_regrid_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_U_src_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_indicator_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_F_div_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_Q_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_EE_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | d_rho_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::hier::Variable< NDIM > > | d_mu_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_pressure_D_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_pressure_rhs_D_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_velocity_D_cc_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_velocity_C_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_velocity_L_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_velocity_rhs_C_var |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_N_full_var |
| |
| std::string | d_N_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_N_refine_type = "CONSERVATIVE_LINEAR_REFINE" |
| |
| std::string | d_mu_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_mu_refine_type = "CONSERVATIVE_LINEAR_REFINE" |
| |
| std::string | d_mu_bdry_extrap_type = "CONSTANT" |
| |
| std::string | d_rho_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_rho_refine_type = "CONSERVATIVE_LINEAR_REFINE" |
| |
| std::string | d_rho_bdry_extrap_type = "CONSTANT" |
| |
| std::vector< ResetFluidPropertiesFcnPtr > | d_reset_rho_fcns |
| |
| std::vector< ResetFluidPropertiesFcnPtr > | d_reset_mu_fcns |
| |
| std::vector< void * > | d_reset_rho_fcns_ctx |
| |
| std::vector< void * > | d_reset_mu_fcns_ctx |
| |
| std::vector< SAMRAI::tbox::Pointer< IBAMR::BrinkmanPenalizationStrategy > > | d_brinkman_force |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::SideVariable< NDIM, double > > | d_temp_sc_var |
| |
| int | d_temp_sc_idx |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_temp_cc_var |
| |
| int | d_temp_cc_idx |
| |
| int | d_U_current_idx |
| |
| int | d_U_new_idx |
| |
| int | d_U_scratch_idx |
| |
| int | d_U_old_current_idx |
| |
| int | d_U_old_new_idx |
| |
| int | d_U_old_scratch_idx |
| |
| int | d_P_current_idx |
| |
| int | d_P_new_idx |
| |
| int | d_P_scratch_idx |
| |
| int | d_F_current_idx |
| |
| int | d_F_new_idx |
| |
| int | d_F_scratch_idx |
| |
| int | d_Q_current_idx |
| |
| int | d_Q_new_idx |
| |
| int | d_Q_scratch_idx |
| |
| int | d_N_old_current_idx |
| |
| int | d_N_old_new_idx |
| |
| int | d_N_old_scratch_idx |
| |
| int | d_mu_current_idx |
| |
| int | d_mu_new_idx |
| |
| int | d_mu_scratch_idx |
| |
| int | d_U_cc_idx |
| |
| int | d_F_cc_idx |
| |
| int | d_Omega_idx |
| |
| int | d_Div_U_idx |
| |
| int | d_EE_idx |
| |
| int | d_U_regrid_idx |
| |
| int | d_U_src_idx |
| |
| int | d_indicator_idx |
| |
| int | d_F_div_idx |
| |
| int | d_velocity_C_idx |
| |
| int | d_velocity_L_idx |
| |
| int | d_velocity_D_idx |
| |
| int | d_velocity_D_cc_idx |
| |
| int | d_pressure_D_idx |
| |
| int | d_velocity_rhs_C_idx |
| |
| int | d_velocity_rhs_D_idx |
| |
| int | d_pressure_rhs_D_idx |
| |
| int | d_mu_interp_idx |
| |
| int | d_N_full_idx |
| |
| int | d_mu_linear_op_idx |
| |
| int | d_mu_interp_linear_op_idx |
| |
| int | d_rho_linear_op_idx |
| |
| bool | d_rho_is_const = false |
| |
| bool | d_mu_is_const = false |
| |
| IBTK::VCInterpType | d_rho_vc_interp_type |
| |
| IBTK::VCInterpType | d_mu_vc_interp_type |
| |
| SAMRAI::tbox::Array< double > | d_A_scale |
| |
| int | d_precond_reinit_interval = 1 |
| |
| SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | d_rho_init_fcn |
| |
| SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | d_mu_init_fcn |
| |
| SAMRAI::solv::RobinBcCoefStrategy< NDIM > * | d_mu_bc_coef = nullptr |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::CellVariable< NDIM, double > > | d_mu_adv_diff_var |
| |
| unsigned int | d_mu_adv_diff_idx = 0 |
| |
| bool | d_integrator_is_initialized = false |
| |
| TimeSteppingType | d_viscous_time_stepping_type = TRAPEZOIDAL_RULE |
| |
| TimeSteppingType | d_convective_time_stepping_type = ADAMS_BASHFORTH |
| |
| TimeSteppingType | d_init_convective_time_stepping_type = MIDPOINT_RULE |
| |
| StokesSpecifications | d_problem_coefs |
| |
| std::vector< SAMRAI::tbox::Pointer< AdvDiffHierarchyIntegrator > > | d_adv_diff_hier_integrators |
| |
| SAMRAI::tbox::Pointer< SAMRAI::pdat::FaceVariable< NDIM, double > > | d_U_adv_diff_var |
| |
| double | d_cfl_current = std::numeric_limits<double>::quiet_NaN() |
| |
| double | d_cfl_max = 1.0 |
| |
| bool | d_using_vorticity_tagging = false |
| |
| SAMRAI::tbox::Array< double > | d_Omega_rel_thresh |
| |
| SAMRAI::tbox::Array< double > | d_Omega_abs_thresh |
| |
| bool | d_normalize_pressure = false |
| |
| bool | d_normalize_velocity = false |
| |
| bool | d_creeping_flow = false |
| |
| double | d_regrid_max_div_growth_factor = 1.1 |
| |
| double | d_U_scale = 1.0 |
| |
| double | d_P_scale = 1.0 |
| |
| double | d_F_scale = 1.0 |
| |
| double | d_Q_scale = 1.0 |
| |
| double | d_Omega_scale = 1.0 |
| |
| double | d_Div_U_scale = 1.0 |
| |
| double | d_EE_scale = 1.0 |
| |
| bool | d_output_U = true |
| |
| bool | d_output_P = true |
| |
| bool | d_output_F = false |
| |
| bool | d_output_Q = false |
| |
| bool | d_output_Omega = true |
| |
| bool | d_output_Div_U = true |
| |
| bool | d_output_EE = false |
| |
| std::string | d_U_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_U_refine_type = "CONSERVATIVE_LINEAR_REFINE" |
| |
| std::string | d_P_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_P_refine_type = "LINEAR_REFINE" |
| |
| std::string | d_F_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_F_refine_type = "CONSERVATIVE_LINEAR_REFINE" |
| |
| std::string | d_Q_coarsen_type = "CONSERVATIVE_COARSEN" |
| |
| std::string | d_Q_refine_type = "CONSTANT_REFINE" |
| |
| SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | d_U_init |
| |
| SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | d_P_init |
| |
| SAMRAI::solv::LocationIndexRobinBcCoefs< NDIM > | d_default_bc_coefs |
| |
| std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > | d_bc_coefs |
| |
| std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > | d_U_bc_coefs |
| |
| std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > | d_U_star_bc_coefs |
| |
| TractionBcType | d_traction_bc_type = TRACTION |
| |
| SAMRAI::solv::RobinBcCoefStrategy< NDIM > * | d_P_bc_coef |
| |
| std::unique_ptr< SAMRAI::solv::RobinBcCoefStrategy< NDIM > > | d_Phi_bc_coef |
| |
| SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | d_F_fcn |
| |
| SAMRAI::tbox::Pointer< IBTK::CartGridFunction > | d_Q_fcn |
| |
| SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_U_bdry_bc_fill_op |
| |
| SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_P_bdry_bc_fill_op |
| |
| SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_Q_bdry_bc_fill_op |
| |
| SAMRAI::tbox::Pointer< IBTK::HierarchyGhostCellInterpolation > | d_no_fill_op |
| |
| bool | d_use_div_sink_drag_term = false |
| |
| std::string | d_convective_op_type = "DEFAULT" |
| |
| ConvectiveDifferencingType | d_convective_difference_form = ADVECTIVE |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_convective_op_input_db |
| |
| SAMRAI::tbox::Pointer< ConvectiveOperator > | d_convective_op |
| |
| bool | d_convective_op_needs_init |
| |
| std::string | d_velocity_solver_type |
| |
| std::string | d_velocity_precond_type |
| |
| std::string | d_velocity_sub_precond_type |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_velocity_solver_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_velocity_precond_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_velocity_sub_precond_db |
| |
| SAMRAI::tbox::Pointer< IBTK::PoissonSolver > | d_velocity_solver |
| |
| bool | d_velocity_solver_needs_init |
| |
| std::string | d_pressure_solver_type |
| |
| std::string | d_pressure_precond_type |
| |
| std::string | d_pressure_sub_precond_type |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_pressure_solver_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_pressure_precond_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_pressure_sub_precond_db |
| |
| SAMRAI::tbox::Pointer< IBTK::PoissonSolver > | d_pressure_solver |
| |
| bool | d_pressure_solver_needs_init |
| |
| std::string | d_regrid_projection_solver_type |
| |
| std::string | d_regrid_projection_precond_type |
| |
| std::string | d_regrid_projection_sub_precond_type |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_regrid_projection_solver_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_regrid_projection_precond_db |
| |
| SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > | d_regrid_projection_sub_precond_db |
| |
| 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 |
| |
An optional re-scaling factor c can be specified to minimize the loss of floating point precision for poorly scaling linear systems. The scaling acts on the momentum part of the saddle-point system, yielding \( c A + G(c x_p) = c b_u\) in which the viscous block, the pressure degrees of freedom, and the velocity RHS have been scaled.
Scaling \( c \) is chosen such that \( c(\frac{\rho}{dt} - \frac{\mu}{dx^2}) \sim \frac{1}{dx} \). The above scaling is chosen from the incompressiblity operator which scales as \( (\nabla \cdot) \sim \frac{1}{dx} \). Assuming \( dt \sim dx \) and \( 1/dx = N \), we have \( c \sim \frac{1}{\rho - \mu N} \). Here \( N \) is the number of cells for a unit length of the physical domain.
Different levels of patch hierarchy can have different scaling because of the difference in the grid spacing \( dx \). Therefore, an array of scale factors is read from the input file (corresponding to different levels). If the scale array does not contain values for all the levels in the hierarchy, it is filled by the most finest scaling factor provided by the user (for the missing finer levels).