|
| | IBStandardForceGen (SAMRAI::tbox::Pointer< SAMRAI::tbox::Database > input_db=SAMRAI::tbox::Pointer< SAMRAI::tbox::Database >()) |
| | Default constructor. More...
|
| |
| void | registerSpringForceFunction (int force_fcn_index, const SpringForceFcnPtr spring_force_fcn_ptr, const SpringForceDerivFcnPtr spring_force_deriv_fcn_ptr=nullptr) |
| | Register a spring force specification function with the force generator. More...
|
| |
| void | setUniformBodyForce (IBTK::Vector F, int structure_id, int level_number) |
| | Set a uniform body force that is applied on each point in the structure with the given structure_id. More...
|
| |
| void | initializeLevelData (SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool initial_time, IBTK::LDataManager *l_data_manager) override |
| | Setup the data needed to compute the forces on the specified level of the patch hierarchy. More...
|
| |
| void | computeLagrangianForce (SAMRAI::tbox::Pointer< IBTK::LData > F_data, SAMRAI::tbox::Pointer< IBTK::LData > X_data, SAMRAI::tbox::Pointer< IBTK::LData > U_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
| | Compute the force generated by the Lagrangian structure on the specified level of the patch hierarchy. More...
|
| |
| void | computeLagrangianForceJacobianNonzeroStructure (std::vector< int > &d_nnz, std::vector< int > &o_nnz, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, IBTK::LDataManager *l_data_manager) override |
| | Compute the non-zero structure of the force Jacobian matrix. More...
|
| |
| void | computeLagrangianForceJacobian (Mat &J_mat, MatAssemblyType assembly_type, double X_coef, SAMRAI::tbox::Pointer< IBTK::LData > X_data, double U_coef, SAMRAI::tbox::Pointer< IBTK::LData > U_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
| | Compute the Jacobian of the force with respect to the present structure configuration. More...
|
| |
| double | computeLagrangianEnergy (SAMRAI::tbox::Pointer< IBTK::LData > X_data, SAMRAI::tbox::Pointer< IBTK::LData > U_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) override |
| | Compute the potential energy with respect to the present structure configuration and velocity. More...
|
| |
| virtual void | setTimeInterval (double current_time, double new_time) |
| | Set the current and new times for the present timestep. More...
|
| |
|
| std::vector< SpringData > | d_spring_data |
| |
| std::vector< BeamData > | d_beam_data |
| |
| std::vector< TargetPointData > | d_target_point_data |
| |
| std::map< int, std::map< int, IBTK::Vector > > | d_uniform_body_force_data |
| |
| std::vector< SAMRAI::tbox::Pointer< IBTK::LData > > | d_X_ghost_data |
| |
| std::vector< SAMRAI::tbox::Pointer< IBTK::LData > > | d_F_ghost_data |
| |
| std::vector< SAMRAI::tbox::Pointer< IBTK::LData > > | d_dX_data |
| |
| std::vector< bool > | d_is_initialized |
| |
| std::map< int, SpringForceFcnPtr > | d_spring_force_fcn_map |
| | Spring force functions. More...
|
| |
| std::map< int, SpringForceDerivFcnPtr > | d_spring_force_deriv_fcn_map |
| |
| bool | d_log_target_point_displacements = false |
| | Logging settings. More...
|
| |
| void | initializeSpringLevelData (std::set< int > &nonlocal_petsc_idx_set, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool initial_time, IBTK::LDataManager *l_data_manager) |
| |
| void | computeLagrangianSpringForce (SAMRAI::tbox::Pointer< IBTK::LData > F_data, SAMRAI::tbox::Pointer< IBTK::LData > X_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) |
| |
| void | initializeBeamLevelData (std::set< int > &nonlocal_petsc_idx_set, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool initial_time, IBTK::LDataManager *l_data_manager) |
| |
| void | computeLagrangianBeamForce (SAMRAI::tbox::Pointer< IBTK::LData > F_data, SAMRAI::tbox::Pointer< IBTK::LData > X_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) |
| |
| void | initializeTargetPointLevelData (std::set< int > &nonlocal_petsc_idx_set, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double init_data_time, bool initial_time, IBTK::LDataManager *l_data_manager) |
| |
| void | computeLagrangianTargetPointForce (SAMRAI::tbox::Pointer< IBTK::LData > F_data, SAMRAI::tbox::Pointer< IBTK::LData > X_data, SAMRAI::tbox::Pointer< IBTK::LData > U_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) |
| |
| void | computeLagrangianBodyForce (SAMRAI::tbox::Pointer< IBTK::LData > F_data, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchHierarchy< NDIM > > hierarchy, int level_number, double data_time, IBTK::LDataManager *l_data_manager) |
| |
Class IBStandardForceGen provides support for linear and nonlinear spring forces, linear beam forces, and target point penalty forces.
- Note
- By default, function default_linear_spring_force() is associated with spring force_fcn_idx 0. This is the default spring force function index used by class IBStandardInitializer in cases in which a force function index is not specified in a spring input file. Users may override this default force function with any function that implements the interface required by registerSpringForceFunction(). Users may also specify additional force functions that may be associated with arbitrary integer indices.