Reduced Lagrange Multipliers
 
Loading...
Searching...
No Matches
UtilitiesAL Namespace Reference

Classes

class  BlockPreconditionerAugmentedLagrangian
 

Functions

template<typename MatrixType = SparseMatrix<double>, typename VectorType = Vector<typename MatrixType::value_type>, typename PreconditionerType = TrilinosWrappers::PreconditionAMG>
void create_augmented_block (const MatrixType &A, const MatrixType &Ct, const VectorType &scaling_vector, const double gamma, MatrixType &augmented_matrix)
 
template<int spacedim, typename VectorType>
void set_null_space (Teuchos::ParameterList &parameter_list, std::unique_ptr< Epetra_MultiVector > &ptr_distributed_modes, const Epetra_RowMatrix &matrix, const std::vector< VectorType > &modes)
 Set the null space of the matrix using a pre-computed set of vectors. Needed for the AMG preconditioner to work properly with linear elasticity. In particular, parameter_list will be filled by this function.
 

Function Documentation

◆ create_augmented_block()

template<typename MatrixType = SparseMatrix<double>, typename VectorType = Vector<typename MatrixType::value_type>, typename PreconditionerType = TrilinosWrappers::PreconditionAMG>
void UtilitiesAL::create_augmented_block ( const MatrixType & A,
const MatrixType & Ct,
const VectorType & scaling_vector,
const double gamma,
MatrixType & augmented_matrix )

◆ set_null_space()

template<int spacedim, typename VectorType>
void UtilitiesAL::set_null_space ( Teuchos::ParameterList & parameter_list,
std::unique_ptr< Epetra_MultiVector > & ptr_distributed_modes,
const Epetra_RowMatrix & matrix,
const std::vector< VectorType > & modes )

Set the null space of the matrix using a pre-computed set of vectors. Needed for the AMG preconditioner to work properly with linear elasticity. In particular, parameter_list will be filled by this function.

Definition at line 186 of file augmented_lagrangian_preconditioner.h.

References TrilinosWrappers::global_index(), TrilinosWrappers::global_length(), and TrilinosWrappers::n_global_rows().

Referenced by ElasticityProblem< dim, spacedim >::solve().