Template Class FiberReinforcedElastodynamics¶
Defined in File fiber_reinforced_elastodynamics.h
Class Documentation¶
-
template<int dim>
class FiberReinforcedElastodynamics¶ Standalone coupled driver for a matrix and an embedded excess fiber.
The matrix is an
ElastodynamicsSolver<dim, dim>and the fiber is an independently meshedElastodynamicsSolver<1, dim>. The driver owns the coupled time loop. With SUNDIALS enabled, it uses the public IDA execution adapter; without SUNDIALS, it uses the explicit Schur-complement backward-Euler path.Public Types
-
using Parameters = FiberReinforcedElastodynamicsParameters<dim>¶
-
using MatrixProblem = ElastodynamicsSolver<dim, dim>¶
-
using FiberProblem = ElastodynamicsSolver<1, dim>¶
-
using Problem = MatrixProblem¶
-
using VectorType = typename MatrixProblem::VectorType¶
-
using MatrixType = typename MatrixProblem::MatrixType¶
Public Functions
-
explicit FiberReinforcedElastodynamics(const Parameters ¶meters)¶
-
void setup()¶
Create both meshes and assemble both Problems.
The coupling is prepared by initialization or by the execution adapter.
-
void set_initial_conditions()¶
Set both configured initial states and check displacement compatibility.
-
void advance_one_timestep()¶
Advance one coupled backward-Euler step.
-
void run()¶
Run setup, initialization, output, and the coupled time loop.
-
inline const MatrixProblem &matrix_problem() const¶
-
inline const FiberProblem &fiber_problem() const¶
-
const VectorType &multiplier() const¶
-
inline const FiberReinforcedElastodynamicsResiduals &residuals() const¶
-
inline double current_time() const¶
Current coupled time and accepted-step number.
-
inline unsigned int time_step_number() const¶
-
double fiber_excess_elastic_energy() const¶
Elastic energy carried by the additive/excess fiber Problem.
-
double matrix_only_displacement_difference() const¶
Difference from a matrix-only backward-Euler reference response.
-
using Parameters = FiberReinforcedElastodynamicsParameters<dim>¶