4#ifndef TRILINOS_LINEAR_ALGEBRA_H
5#define TRILINOS_LINEAR_ALGEBRA_H
7#include "LinearAlgebra.h"
21 virtual void check_options(
const consts::PreconditionerType prec_cond_type,
const consts::LinearAlgebraType assembly_type);
23 virtual void set_assembly(consts::LinearAlgebraType atype);
28 static std::set<consts::LinearAlgebraType> valid_assemblers;
30 bool use_fsils_assembly =
false;
The Array3 template class implements a simple interface to 3D arrays.
Definition Array3.h:25
The ComMod class duplicates the data structures in the Fortran COMMOD module defined in MOD....
Definition ComMod.h:1514
The LinearAlgebra class provides an abstract interface to linear algebra frameworks: FSILS,...
Definition LinearAlgebra.h:13
Definition trilinos_impl.cpp:1089
The TrilinosLinearAlgebra class implements the LinearAlgebra interface for the Trilinos numerical lin...
Definition TrilinosLinearAlgebra.h:12
virtual void solve(ComMod &com_mod, eqType &lEq, const Vector< int > &incL, const Vector< double > &res)
Solve a system of linear equations.
Definition TrilinosLinearAlgebra.cpp:169
virtual void set_preconditioner(consts::PreconditionerType prec_type)
Set the proconditioner.
Definition TrilinosLinearAlgebra.cpp:156
virtual void assemble(ComMod &com_mod, const int num_elem_nodes, const Vector< int > &eqN, const Array3< double > &lK, const Array< double > &lR)
Assemble local element arrays.
Definition TrilinosLinearAlgebra.cpp:74
virtual void set_assembly(consts::LinearAlgebraType atype)
Set the linear algebra package for assmbly.
Definition TrilinosLinearAlgebra.cpp:136
virtual void initialize(ComMod &com_mod, eqType &lEq)
Initialize Trilinos framework.
Definition TrilinosLinearAlgebra.cpp:111
virtual void check_options(const consts::PreconditionerType prec_cond_type, const consts::LinearAlgebraType assembly_type)
Check the validity of the precondition and assembly options.
Definition TrilinosLinearAlgebra.cpp:88
virtual void alloc(ComMod &com_mod, eqType &lEq)
Allocate data arrays.
Definition TrilinosLinearAlgebra.cpp:59
The Vector template class is used for storing int and double data.
Definition Vector.h:23
Equation type.
Definition ComMod.h:1069