26 #ifndef OOMPH_TRILINOS_OPERATORS_HEADER
27 #define OOMPH_TRILINOS_OPERATORS_HEADER
31 #include <oomph-lib-config.h>
42 #include "ml_include.h"
43 #include "ml_MultiLevelPreconditioner.h"
111 void setup(Epetra_CrsMatrix* epetra_matrix_pt);
134 Epetra_CrsMatrix* epetra_matrix_pt) = 0;
220 ML_parameters.set(
"smoother: damping factor", smoother_damping);
238 ML_parameters.set(
"smoother: type",
"symmetric Gauss-Seidel");
Definition: double_vector.h:58
Definition: preconditioner.h:54
Definition: trilinos_preconditioners.h:268
double & ilut_fill_level()
Access function for ILUT_fill_level.
Definition: trilinos_preconditioners.h:310
virtual ~TrilinosIFPACKPreconditioner()
Destructor – empty, cleanup is done in base class.
Definition: trilinos_preconditioners.h:283
double Absolute_threshold
Value of absolute threshold, used to peturb diagonal.
Definition: trilinos_preconditioners.h:345
int & ilu_fill_level()
Access function for ILU_fill_level.
Definition: trilinos_preconditioners.h:304
double & absolute_threshold()
Access function for the absolute threshold.
Definition: trilinos_preconditioners.h:316
TrilinosIFPACKPreconditioner()
Constructor.
Definition: trilinos_preconditioners.h:271
string Preconditioner_type
Type of ILU preconditioner.
Definition: trilinos_preconditioners.h:333
int ILU_fill_level
Level of fill for "ILU".
Definition: trilinos_preconditioners.h:336
void set_preconditioner_ILU()
Broken assignment operator.
Definition: trilinos_preconditioners.h:292
void setup_trilinos_preconditioner(Epetra_CrsMatrix *epetra_matrix_pt)
Definition: trilinos_preconditioners.cc:237
void set_preconditioner_ILUT()
Function to set Preconditioner_type to "ILUT".
Definition: trilinos_preconditioners.h:298
double ILUT_fill_level
Level of fill for "ILUT".
Definition: trilinos_preconditioners.h:339
double Relative_threshold
Value of relative threshold, used to pertub diagonal.
Definition: trilinos_preconditioners.h:348
int Overlap
Value of overlap level - used in parallel ILU.
Definition: trilinos_preconditioners.h:342
double & relative_threshold()
Access function for the relative threshold.
Definition: trilinos_preconditioners.h:322
TrilinosIFPACKPreconditioner(const TrilinosIFPACKPreconditioner &)=delete
Broken copy constructor.
Definition: trilinos_preconditioners.h:152
void set_smoother_sweeps(int smoother_sweeps)
Function to set Smoother_sweeps.
Definition: trilinos_preconditioners.h:224
void set_smoother_gauss_seidel()
Function to set smoother type to "symmetric Gauss-Seidel".
Definition: trilinos_preconditioners.h:236
void set_max_levels(int max_levels)
Function to set maximum number of levels.
Definition: trilinos_preconditioners.h:206
virtual ~TrilinosMLPreconditioner()
Destructor empty – clean up is done in base class.
Definition: trilinos_preconditioners.h:167
void set_n_cycles(int n_cycles)
Function to set the number of cycles used.
Definition: trilinos_preconditioners.h:212
static int Default_n_cycles
Definition: trilinos_preconditioners.h:250
TrilinosMLPreconditioner()
Definition: trilinos_preconditioners.h:157
Teuchos::ParameterList ML_parameters
Definition: trilinos_preconditioners.h:258
void set_NSSA_default_values()
Broken assignment operator.
Definition: trilinos_preconditioners.h:177
void set_DDML_default_values()
Definition: trilinos_preconditioners.h:193
void set_smoother_damping(double smoother_damping)
Function to set Smoother_damping.
Definition: trilinos_preconditioners.h:218
void set_output(int output)
Function to set output - controls level of information output by ML.
Definition: trilinos_preconditioners.h:242
void set_SA_default_values()
Definition: trilinos_preconditioners.h:200
void set_DD_default_values()
Definition: trilinos_preconditioners.h:185
TrilinosMLPreconditioner(const TrilinosMLPreconditioner &)=delete
Broken copy constructor.
void setup_trilinos_preconditioner(Epetra_CrsMatrix *epetra_matrix_pt)
Definition: trilinos_preconditioners.cc:196
void set_smoother_jacobi()
Function to set smoother type to "Jacobi".
Definition: trilinos_preconditioners.h:230
Base class for Trilinos preconditioners as oomph-lib preconditioner.
Definition: trilinos_preconditioners.h:56
Epetra_Operator * Epetra_preconditioner_pt
Definition: trilinos_preconditioners.h:138
Epetra_Operator * epetra_operator_pt() const
Definition: trilinos_preconditioners.h:125
void preconditioner_solve(const DoubleVector &r, DoubleVector &z)
applies the preconditioner
Definition: trilinos_preconditioners.cc:126
Epetra_Operator *& epetra_operator_pt()
Definition: trilinos_preconditioners.h:118
Epetra_CrsMatrix * Epetra_matrix_pt
Definition: trilinos_preconditioners.h:142
virtual ~TrilinosPreconditionerBase()
Destructor.
Definition: trilinos_preconditioners.h:67
void clean_up_memory()
deletes the preconditioner, matrices and maps
Definition: trilinos_preconditioners.h:78
static double Cumulative_preconditioner_solve_time
Definition: trilinos_preconditioners.h:75
void setup()
Broken assignment operator.
Definition: trilinos_preconditioners.cc:53
virtual void setup_trilinos_preconditioner(Epetra_CrsMatrix *epetra_matrix_pt)=0
TrilinosPreconditionerBase()
Constructor.
Definition: trilinos_preconditioners.h:59
TrilinosPreconditionerBase(const TrilinosPreconditionerBase &)=delete
Broken copy constructor.
DRAIG: Change all instances of (SPATIAL_DIM) to (DIM-1).
Definition: AnisotropicHookean.h:10
void output(std::ostream &outfile)
Output with default number of plot points.
Definition: gen_axisym_advection_diffusion_elements.h:161