Template Class ElasticityFreqProblem¶
Defined in File elasticity_freq.h
Inheritance Relationships¶
Base Type¶
public dealii::EnableObserverPointer
Class Documentation¶
-
template<int dim, int spacedim = dim>
class ElasticityFreqProblem : public dealii::EnableObserverPointer¶ Public Types
-
using VectorType = ImmersXLA::MPI::Vector¶
-
using MatrixType = ImmersXLA::MPI::SparseMatrix¶
Public Functions
-
explicit ElasticityFreqProblem(const ElasticityFreqProblemParameters<dim, spacedim> &par)¶
-
void run()¶
-
void make_grid()¶
-
void setup_fe()¶
-
void setup_dofs()¶
-
void setup_constraints()¶
-
void refine_and_transfer()¶
-
void execute_actual_refine_and_transfer()¶
-
void print_parameters() const¶
-
void compute_internal_and_boundary_stress(bool openfilefirsttime) const¶
-
void prepare_frequency(double frequency_hz)¶
Set the frequency in Hz before registering this algebraic Problem.
-
void accept_frequency_solution(const VectorType &real, const VectorType &imaginary)¶
Accept an external harmonic solve and reconstruct essential values.
-
void output_results(unsigned int index = 0)¶
Write the accepted complex displacement using a sweep output index.
-
inline const ElasticityFreqProblemParameters<dim, spacedim> ¶meters() const¶
-
inline MPI_Comm communicator() const¶
-
inline double frequency() const¶
-
std::shared_ptr<MatrixType> make_surrogate_matrix(double volume_weight = 1.) const¶
Assemble the positive harmonic surrogate K+omega^2 M+omega D.
-
std::shared_ptr<TrilinosWrappers::PreconditionAMG> make_surrogate_amg(const MatrixType &matrix) const¶
Build the standalone solver’s elasticity AMG hierarchy.
-
inline const VectorType &real_displacement() const¶
Owned coefficients of the most recently solved complex displacement.
-
inline const VectorType &imaginary_displacement() const¶
-
inline const DoFHandler<dim, spacedim> &dof_handler() const¶
Spatial FE support, independent of the harmonic execution layout.
-
inline const IndexSet &locally_owned_dofs() const¶
-
inline const IndexSet &locally_relevant_dofs() const¶
-
inline const AffineConstraints<double> &real_constraints() const¶
-
inline const AffineConstraints<double> &imaginary_part_constraints() const¶
-
using VectorType = ImmersXLA::MPI::Vector¶