ML  Version of the Day
Functions
ml_amesos_wrap.h File Reference

Interface to the Trilinos package Amesos. More...

#include "ml_include.h"
Include dependency graph for ml_amesos_wrap.h:
This graph shows which files directly or indirectly include this file:

Functions

int ML_Amesos_Gen (ML *ml, int curr_level, int choice, int MaxProcs, double AddToDiag, Amesos_Handle_Type *Amesos_Handle)
 
int ML_Amesos_Solve (void *Amesos_Handle, double x[], double rhs[])
 
void ML_Amesos_Destroy (void *Amesos_Handle)
 
int ML_isKLUAvailable ()
 

Detailed Description

Interface to the Trilinos package Amesos.

The ML/Amesos interface can be used to solve the coarse problem with some of the sparse direct solvers supported by Amesos:

For serial solvers, Amesos will take care to redistribute all required data to process 0, solve the linear system on process 0, then broadcast the solution back to all the processes.

For parallel solvers (like SuperLU_DIST and MUMPS), the user can tell Amesos how many processes should be used for the coarse solution. This number can be:

In its current implementation, ML/Amesos converts the ML_Operator for the coarse level to and Epetra matrix ("heavy conversion").

Note
If ML_AMESOS_DEBUG is defined, some checks are performed to verify that the linear system has been solved up to machine precision.
We experienced some problems with out on TFLOPS. These problems were solved by replacing cout with puts().
Date
Last update to Doxygen: 21-Jun-05

Function Documentation

◆ ML_Amesos_Destroy()

void ML_Amesos_Destroy ( void *  Amesos_Handle)

Destroy the Amesos object. Prints out some timing.

◆ ML_Amesos_Gen()

int ML_Amesos_Gen ( ML ml,
int  curr_level,
int  choice,
int  MaxProcs,
double  AddToDiag,
Amesos_Handle_Type *  Amesos_Handle 
)

Generates the direct solver using Amesos.

This function performs several operations:

  • wrap the ML_Operator for the given level to an Epetra_CrsMatrix
  • creates the Amesos object;
  • compute the symbolic and numeric factorzation.
Parameters
ml(InOut) : ML_Structure
curr_level(In) : specifies the level for which we have to define the direct solver;
choice(In) : integer variable, that can be ML_AMESOS_KLU, ML_AMESOS_UMFPACK, ML_AMESOS_SUPERLUDIST, ML_AMESOS_MUMPS, ML_AMESOS_SCALAPACK;
MaxProcs(In) : integer defining the maximum number of processes to use in the coarse solution (only for some of the supported Amesos solvers);
Amesos(In) : add the specified value to the diagonal elements of the matrix.
Amesos_Handle(Out) : it will contain a pointer to the Amesos object (casted to void *).

If the required solver is not available, ML_Amesos_Gen will create a KLU solver. KLU is distributed with Amesos, and is enabled by default.

◆ ML_Amesos_Solve()

int ML_Amesos_Solve ( void *  Amesos_Handle,
double  x[],
double  rhs[] 
)

Solves using Amesos, and the factorization computed by ML_Amesos_Gen.

ML_Operator_Subspace_Struct::VAVdone
int VAVdone
Definition: ml_operator.h:88
ML_Epetra::ML_Epetra_PtAP
int ML_Epetra_PtAP(const Epetra_CrsMatrix &A, const Epetra_CrsMatrix &P, Epetra_CrsMatrix *&Result, bool verbose=false)
Does an P^TAP for Epetra_CrsMatrices using ML's kernels.
ML_Epetra::MultiLevelPreconditioner::SetOwnership
int SetOwnership(bool ownership)
Sets ownership.
Definition: ml_MultiLevelPreconditioner.h:497
MLAPI::GetShiftedLaplacian1D
Operator GetShiftedLaplacian1D(const int NX, const double Factor=0.99)
Creates a 1D shifted Laplacian.
Epetra_Operator::Comm
virtual const Epetra_Comm & Comm() const=0
MLAPI::TimeObject
Class to track time spent in an object.
Definition: MLAPI_TimeObject.h:25
MLAPI::MultiLevelAdaptiveSA
Black-box multilevel adaptive smoothed aggregation preconditioner.
Definition: MLAPI_MultiLevelAdaptiveSA.h:91
Epetra_CrsMatrix::NumMyRowEntries
int NumMyRowEntries(int MyRow, int &NumEntries) const
ML_Epetra::MultiLevelPreconditioner::GetList
Teuchos::ParameterList & GetList()
Gets a reference to the internally stored parameters' list.
Definition: ml_MultiLevelPreconditioner.h:419
ML_Aggregate_Struct::aggr_viz_and_stats
void * aggr_viz_and_stats
Definition: ml_aggregate.h:84
ML_Epetra::Apply_BCsToMatrixColumns
void Apply_BCsToMatrixColumns(const int *dirichletRows, int numBCRows, const Epetra_CrsMatrix &Matrix)
Applies Dirichlet conditions to columns that rows already have.
MLAPI::Operator::Operator
Operator(const Operator &RHS)
Copy constructor.
Definition: MLAPI_Operator.h:72
MLAPI::Init
void Init()
Initialize the MLAPI workspace.
MLAPI::InverseOperator::operator=
InverseOperator & operator=(const InverseOperator &RHS)
Operator =.
Epetra_Object
ML_Epetra::ML_RefMaxwell_11_Operator::Comm
virtual const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: ml_RefMaxwell_11_Operator.h:121
Epetra_SerialDenseMatrix::M
int M() const
ML_Epetra::CrsGraphWrapper::Filled
bool Filled() const
If FillComplete() has been called, this query returns true, otherwise it returns false.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:213
ML_Epetra::MultiLevelPreconditioner::PrintStencil2D
int PrintStencil2D(const int nx, const int ny, int NodeID=-1, const int EquationID=0)
Prints the computational stencil for the specified row and equation (for 2D Cartesian grids only)
Definition: ml_MultiLevelPreconditioner.cpp:3982
Epetra_CrsMatrix::NumGlobalRows
int NumGlobalRows() const
MLAPI::EpetraBaseOperator::~EpetraBaseOperator
virtual ~EpetraBaseOperator()
Destructor.
Definition: MLAPI_EpetraBaseOperator.h:54
MLAPI::MultiLevelAdaptiveSA::GetMaxLevels
int GetMaxLevels() const
Returns the actual number of levels.
Definition: MLAPI_MultiLevelAdaptiveSA.h:192
MLAPI::MultiLevelAdaptiveSA::SetNullSpace
void SetNullSpace(MultiVector &NullSpace)
Sets the null space multi-vector to NullSpace.
Definition: MLAPI_MultiLevelAdaptiveSA.h:210
ML_Epetra::FindLocalDirichletColumnsFromRows
Epetra_IntVector * FindLocalDirichletColumnsFromRows(const int *dirichletRows, int numBCRows, const Epetra_CrsMatrix &Matrix)
Finds Dirichlet the local Dirichlet columns, given the local Dirichlet rows.
MLAPI::GetJacobiIterationOperator
Operator GetJacobiIterationOperator(const Operator &Amat, double Damping)
Returns an operator defined as (I - Damping A).
Epetra_CrsGraph::NumMyIndices
int NumMyIndices(int Row) const
Epetra_CrsGraph::NumGlobalCols
int NumGlobalCols() const
Epetra_VbrMatrix::ColMap
const Epetra_BlockMap & ColMap() const
ML_Epetra::CrsGraphWrapper::ExtractMyRowCopy
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:135
MLAPI::Operator::GetNumMyRows
int GetNumMyRows() const
Returns the number of local rows.
Definition: MLAPI_Operator.h:212
ML_Epetra::MultiLevelPreconditioner::Print
void Print(int level=-2)
Print the individual operators in the multigrid hierarchy.
Definition: ml_MultiLevelPreconditioner.cpp:2722
MLAPI::MultiVector::GetRCPValues
Teuchos::RefCountPtr< DoubleVector > & GetRCPValues(const int v)
Returns a pointer to the double array (non-const version)
Definition: MLAPI_MultiVector.h:431
Epetra_Time::ResetStartTime
void ResetStartTime(void)
MLAPI::BaseObject::BaseObject
BaseObject()
Constructor with empty label.
Definition: MLAPI_BaseObject.h:39
MLAPI::MultiVector::MultiVector
MultiVector(const Space &VectorSpace, double **Values, const int NumVectors=1)
Constructor with a given Space, and user-provided array of values.
Definition: MLAPI_MultiVector.h:136
MLAPI::InverseOperator::Apply
int Apply(const MultiVector &x, MultiVector &y) const
Applies this object to vector lhs, returns values in rhs.
MLAPI::GetGlobalAggregates
int GetGlobalAggregates(Epetra_RowMatrix &A, Teuchos::ParameterList &List, double *thisns, Epetra_IntVector &aggrinfo)
Call ML aggregation on A according to parameters supplied in List. Return aggregates in aggrinfo.
Epetra_CrsMatrix::RightScale
int RightScale(const Epetra_Vector &x)
ML_Epetra::SetDefaultsMaxwell
int SetDefaultsMaxwell(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets default parameters for the eddy current equations equations.
Epetra_BlockMap::NumMyElements
int NumMyElements() const
MLAPI_MATLABStream.h
Basic stream to save in a MATLAB-compatible file MLAPI objects.
ML_Epetra::SetDefaults
int SetDefaults(std::string ProblemType, Teuchos::ParameterList &List, int *options=0, double *params=0, const bool OverWrite=true)
Sets default parameters for aggregation-based preconditioners.
MLAPI::LoadBalanceOperator::GetDomainSpace
const Space GetDomainSpace() const
Returns a reference to the internally stored domain space.
Definition: MLAPI_LoadBalanceOperator.h:227
ML_Epetra::MultiLevelPreconditioner::NumGlobalRows
int NumGlobalRows() const
Returns the global number of rows in the matrix.
Definition: ml_MultiLevelPreconditioner.h:537
ML_Epetra::Ifpack_ML::ApplyInverse
virtual int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Applies the preconditioner to vector X, returns the result in Y.
Definition: ml_Ifpack_ML.h:122
MLAPI::MultiLevelSA::Compute
void Compute()
Computes the hierarchy.
Definition: MLAPI_MultiLevelSA.h:134
MLAPI::GetPtent1D
Operator GetPtent1D(const MultiVector &D, const int offset=0)
Returns a newly created operator, containing D on the diagonal.
ML_Epetra::ML_RefMaxwell_11_Operator::OperatorDomainMap
virtual const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: ml_RefMaxwell_11_Operator.h:124
ML_Aggregate_Struct::smooth_existing_P_tentative
int smooth_existing_P_tentative
Definition: ml_aggregate.h:79
MLAPI::MultiVector::Reshape
void Reshape()
Resets this object.
Definition: MLAPI_MultiVector.h:199
ML_Epetra::EdgeMatrixFreePreconditioner::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Apply the inverse of the preconditioner to an Epetra_MultiVector (NOT AVAILABLE)
Definition: ml_EdgeMatrixFreePreconditioner.h:100
MLAPI_Defaults.h
Function to set default values in a parameter list.
ML_Epetra::RowMatrix::NumGlobalDiagonals64
virtual long long NumGlobalDiagonals64() const
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
MLAPI::MultiLevelAdaptiveSA::GetOperatorDomainSpace
const Space GetOperatorDomainSpace() const
Returns a copy of the internally stored domain space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:120
Epetra_Comm::NumProc
virtual int NumProc() const=0
MLAPI::MultiLevelSA::A
const Operator & A(const int i) const
Returns a reference to the operator of level i.
Definition: MLAPI_MultiLevelSA.h:101
MLAPI::Operator::Apply
int Apply(const MultiVector &X, MultiVector &Y) const
Applies this operator to LHS, returns the result in RHS.
Definition: MLAPI_Operator.h:294
ML_Epetra::RowMatrix::RightScale
virtual int RightScale(const Epetra_Vector &x)
Scales the Epetra_RowMatrix on the right with a Epetra_Vector x.
Definition: ml_RowMatrix.h:211
MLAPI::TimeObject::~TimeObject
~TimeObject()
Destructor.
Definition: MLAPI_TimeObject.h:38
Epetra_CrsGraph::LowerTriangular
bool LowerTriangular() const
ML_Amesos_Destroy
void ML_Amesos_Destroy(void *Amesos_Handle)
ML_Operator_Subspace_Struct::pivots
int * pivots
Definition: ml_operator.h:87
MLAPI::InverseOperator::GetRCPMLPrec
Teuchos::RefCountPtr< ML_Epetra::MultiLevelPreconditioner > & GetRCPMLPrec()
Returns a pointer to the internally stored IFPACK preconditioner.
ML_Epetra::Ifpack_ML::Matrix
virtual const Epetra_RowMatrix & Matrix() const
Returns a pointer to the matrix to be preconditioned.
Definition: ml_Ifpack_ML.h:130
ML_Aggregate_Struct::threshold
double threshold
Definition: ml_aggregate.h:52
ML_Epetra::CrsGraphWrapper::RowMatrixColMap
const Epetra_Map & RowMatrixColMap() const
Returns the Epetra_Map object associated with the columns of this matrix.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:271
MLAPI_MultiVector_Utils.h
Utilities for MultiVector's.
MLAPI::EpetraBaseOperator::HasNormInf
virtual bool HasNormInf() const
NOT IMPLEMENTED.
Definition: MLAPI_EpetraBaseOperator.h:123
ML_Epetra::Ifpack_ML::NumCompute
virtual int NumCompute() const
Returns the number of calls to Compute().
Definition: ml_Ifpack_ML.h:142
MLAPI::ReadMatrix
Operator ReadMatrix(const char *FileName)
Reads a matrix in MATLAB format.
MLAPI::MultiLevelAdaptiveSA::Apply
int Apply(const MultiVector &b_f, MultiVector &x_f) const
Applies the preconditioner to b_f, returns the result in x_f.
Definition: MLAPI_MultiLevelAdaptiveSA.h:758
ML_Epetra::MultiLevelOperator::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
Definition: ml_MultiLevelOperator.h:174
MLAPI::LoadBalanceOperator::LoadBalanceOperator
LoadBalanceOperator(const LoadBalanceOperator &RHS)
Copy constructor.
Definition: MLAPI_LoadBalanceOperator.h:79
MLAPI::BaseOperator::GetOperatorDomainSpace
virtual const Space GetOperatorDomainSpace() const =0
Returns a copy of the domain space of this object.
MLAPI::PrintSparsity
void PrintSparsity(const Operator &A, int NumPDEEquations=1)
Prints on file the sparsity structure of input operator.
MLAPI_CompObject.h
Class to count flops.
MLAPI::MultiVector::operator=
MultiVector & operator=(double rhs)
Sets all elements of this vector to rhs.
Definition: MLAPI_MultiVector.h:292
MLAPI::MultiLevelAdaptiveSA::GetComplexity
double GetComplexity()
Returns the multigrid preconditioner operator complexity.
Definition: MLAPI_MultiLevelAdaptiveSA.h:287
MLAPI::MultiVectorScaled::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
Epetra_CrsGraph::NumGlobalRows
int NumGlobalRows() const
ML_Epetra::RowMatrix::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
Definition: ml_RowMatrix.h:316
MLAPI::ML_Operator_Box::GetData
ML_Operator * GetData() const
Returns a pointer to the internally stored ML_Operator.
Definition: MLAPI_Operator_Box.h:50
MLAPI::MultiLevelAdaptiveSA::Compute
void Compute()
Creates an hierarchy using the provided or default null space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:304
Epetra_RowMatrix::NumGlobalRows
virtual int NumGlobalRows() const=0
ML_Aggregate_Struct::Restriction_smoothagg_transpose
int Restriction_smoothagg_transpose
Definition: ml_aggregate.h:81
MLAPI::Operator::Operator
Operator()
Default constructor.
Definition: MLAPI_Operator.h:50
MLAPI::GetShiftedLaplacian2D
Operator GetShiftedLaplacian2D(const int NX, const int NY, const double Factor=0.99, const bool RandomScale=false)
Creates a 2D shifted Laplacian.
ML_Epetra::ML_RMP::UseTranspose
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: ml_RefMaxwell.h:153
MLAPI::Residual::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
ML_Epetra::RowMatrix::SetOwnership
int SetOwnership(bool ownership)
Sets ownership.
Definition: ml_RowMatrix.h:298
ML_Epetra_matvec
int ML_Epetra_matvec(ML_Operator *data, int in, double *p, int out, double *ap)
Matrix-vector function for Epetra matrices.
ML_Epetra::ML_Epetra_RAP
int ML_Epetra_RAP(const Epetra_CrsMatrix &A, const Epetra_CrsMatrix &P, const Epetra_CrsMatrix &R, Epetra_CrsMatrix *&Result, bool verbose)
Does an RAP for Epetra_CrsMatrices using ML's kernels.
MLAPI::EpetraBaseOperator::NormInf
virtual double NormInf() const
NOT IMPLEMENTED.
Definition: MLAPI_EpetraBaseOperator.h:105
ML_Epetra::MultiLevelOperator::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Operator applied to a Epetra_MultiVector X in Y.
Definition: ml_MultiLevelOperator.h:121
ML_Epetra::Ifpack_ML::Condest
virtual double Condest() const
Returns the computed condition number estimate, or -1.0 if not computed.
Definition: ml_Ifpack_ML.h:115
Epetra_SerialDenseMatrix::N
int N() const
ML_Epetra::Remove_Zeroed_Rows
void Remove_Zeroed_Rows(const Epetra_CrsMatrix &Matrix, double tol=0.0)
Drops a 1 on the diagonal of zero'd our rows.
MLAPI::SerialMatrix::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints basic information about this object.
Definition: MLAPI_SerialMatrix.h:400
Add
Add
ML_Epetra::ML_RMP::Comm
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: ml_RefMaxwell.h:159
Epetra_MultiVector::PutScalar
int PutScalar(double ScalarConstant)
MLAPI::LoadBalanceInverseOperator::Reshape
void Reshape()
Resets this object.
ML_Epetra::Ifpack_ML::UseTranspose
bool UseTranspose() const
Returns true if the transpose is used.
Definition: ml_Ifpack_ML.h:223
Epetra_CrsGraph::NumMyDiagonals
int NumMyDiagonals() const
ML_Epetra::RowMatrix::NormOne
virtual double NormOne() const
Returns the one norm of the global matrix.
Definition: ml_RowMatrix.h:236
Epetra_CrsMatrix::ReplaceMyValues
int ReplaceMyValues(int MyRow, int NumEntries, const double *Values, const int *Indices)
Epetra_MultiVector::Random
int Random()
ML_Epetra::RowMatrix::NumGlobalRows64
virtual long long NumGlobalRows64() const
Returns the number of global matrix rows.
Epetra_CrsMatrix::NumGlobalCols
int NumGlobalCols() const
MLAPI::MultiLevelAdaptiveSA::A
const Operator & A(const int i) const
Returns a reference to the operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:162
ML_Epetra::EdgeMatrixFreePreconditioner::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &B, Epetra_MultiVector &X) const
Apply the preconditioner to RHS B to get result X (X is also initial guess)
MLAPI::Operator::GetDomainSpace
const Space GetDomainSpace() const
Returns a reference to the internally stored domain space.
Definition: MLAPI_Operator.h:190
ML_Aggregate_Struct::operator_complexity
double operator_complexity
Definition: ml_aggregate.h:73
Epetra_MultiVector::ExtractView
int ExtractView(double **A, int *MyLDA) const
MLAPI::Operator::GetRCPRowMatrix
const Teuchos::RefCountPtr< Epetra_RowMatrix > & GetRCPRowMatrix() const
Returns the RefCountPtr of RowMatrix_.
Definition: MLAPI_Operator.h:265
ML_Epetra::CrsGraphWrapper::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
returns ref to the OperatorDomainMap associated with this class
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:323
MLAPI::Operator::GetGRID
int GetGRID(const int LRID) const
Returns the global ID of local row ID LRID.
Definition: MLAPI_Operator.h:271
ML_Epetra::RowMatrix::NumGlobalNonzeros64
virtual long long NumGlobalNonzeros64() const
Returns the number of nonzero entries in the global matrix.
MLAPI::MultiLevelAdaptiveSA::R
const Operator & R(const int i) const
Returns a reference to the restriction operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:150
ML_Epetra::CrsGraphWrapper::NormInf
double NormInf() const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:219
amalg_drop
Definition: ml_operator.h:184
Epetra_SrcDistObject
ML_Epetra::RowMatrix::Print
int Print() const
Print the global matrix. This uses a potentially artificial numbering.
MLAPI::Operator::GetRangeSpace
const Space GetRangeSpace() const
Returns a reference to the internally stored range space.
Definition: MLAPI_Operator.h:195
MLAPI::StackEntry
Definition: MLAPI_Error.h:13
ML_Function_Struct
Definition: ml_operator.h:51
MLAPI::MultiVector::operator=
MultiVector & operator=(const MultiVector &rhs)
Copies the rhs into this object.
Definition: MLAPI_MultiVector.h:306
ML_Aggregate_Struct::ordering
int ordering
Definition: ml_aggregate.h:49
MLAPI::Space::Space
Space()
Default constructor, defines an empty space.
Definition: MLAPI_Space.h:47
ML_Operator_WrapEpetraCrsMatrix
int ML_Operator_WrapEpetraCrsMatrix(Epetra_CrsMatrix *A, ML_Operator *newMatrix, bool verbose=false)
Wraps an Epetra_CrsMatrix into an ML_Operator, for the given level.
ML_agg_indx_comm_struct
Definition: ml_aggregate.h:169
MLAPI::LoadBalanceInverseOperator::GetOperatorDomainSpace
const Space GetOperatorDomainSpace() const
Returns a reference to the domain space of this object.
MLAPI::Space
Specifies the number and distribution among processes of elements.
Definition: MLAPI_Space.h:40
ML_Epetra::MatrixFreePreconditioner::NumProc
int NumProc() const
Returns the number of processors in the communicator.
Definition: ml_MatrixFreePreconditioner.h:169
ML_Epetra::Ifpack_ML::Ifpack_ML
Ifpack_ML(Epetra_RowMatrix *A)
Constructor.
Definition: ml_Ifpack_ML.h:47
ML_Epetra::MatrixFreePreconditioner::C
const Epetra_RowMatrix & C() const
Returns the coarser-level operator as an Epetra_RowMatrix.
Definition: ml_MatrixFreePreconditioner.h:134
MLAPI_BaseLinearCombination.h
Base class for all operator overloading related operations.
ML_Epetra::RowMatrix::ExtractDiagonalCopy
virtual int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
Returns a copy of the main diagonal in a user-provided vector.
ML_Aggregate_Struct::nullspace_vect
double * nullspace_vect
Definition: ml_aggregate.h:63
MLAPI::BaseObject
Basic class for MLAPI objects.
Definition: MLAPI_BaseObject.h:35
Epetra_DistObject::Map
const Epetra_BlockMap & Map() const
MLAPI::MultiLevelSA::S
const InverseOperator & S(const int i) const
Returns a reference to the inverse operator of level i.
Definition: MLAPI_MultiLevelSA.h:113
MLAPI_Krylov.h
MLAPI interface to AztecOO's solvers.
ML_Epetra::CrsGraphWrapper::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:303
MLAPI::MultiVector::MultiVector
MultiVector(const Space &VectorSpace, const int NumVectors=1, bool SetToZero=true)
Constructor for a given Space.
Definition: MLAPI_MultiVector.h:116
ML_Epetra::SetDefaultsDD
int SetDefaultsDD(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets default parameters for aggregation-based 2-level domain decomposition preconditioners.
Epetra_FECrsMatrix
MLAPI::MultiVector::Norm2
double Norm2(int v=-1) const
Computes the 2-norm of this vector.
Definition: MLAPI_MultiVector.h:648
MLVec
Definition: ml_MultiLevelPreconditioner.h:958
ML_Epetra::MultiLevelPreconditioner::UseTranspose
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: ml_MultiLevelPreconditioner.h:506
MLAPI::operator+
MultiVectorCombination operator+(const MultiVector &x, const MultiVector &y)
Creates a new MultiVector, defined as x + y.
ML_Epetra::MultiLevelPreconditioner::AnalyzeCycle
int AnalyzeCycle(const int NumCycles=1)
Analyze the effect of the ML cycle on a random std::vector.
Definition: ml_MultiLevelPreconditioner_Analyze.cpp:342
ML_Epetra::Ifpack_ML::Print
virtual std::ostream & Print(std::ostream &os) const
Prints basic information on iostream. This function is used by operator<<.
Definition: ml_Ifpack_ML.h:190
Epetra_CrsGraph::UpperTriangular
bool UpperTriangular() const
MLAPI::LoadBalanceOperator::GetNumGlobalRows
int GetNumGlobalRows() const
Returns the number of global rows.
Definition: MLAPI_LoadBalanceOperator.h:243
MLAPI::CompObject::UpdateFlops
void UpdateFlops(double Flops) const
Updates internal counter by summing Flops.
Definition: MLAPI_CompObject.h:57
ML_Epetra::MultiLevelPreconditioner::Map
const Epetra_BlockMap & Map() const
Returns a reference to RowMatrix->Map().
Definition: ml_MultiLevelPreconditioner.h:531
MLAPI::MultiVector::operator()
double & operator()(const int i, const int v)
Returns the value of local element i (non-const version)
Definition: MLAPI_MultiVector.h:378
MLAPI::BaseOperatorTimesMultiVector::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
MLAPI::MultiLevelSA::GetOperatorRangeSpace
const Space GetOperatorRangeSpace() const
Returns a copy of the internally stored range space.
Definition: MLAPI_MultiLevelSA.h:77
MLAPI::DistributedMatrix::Apply
int Apply(const MultiVector &X, MultiVector &Y) const
Applies the operator to X, using Y as starting solution. Returns the solution in Y.
Definition: MLAPI_DistributedMatrix.h:228
MLAPI::LoadBalanceOperator::Reshape
void Reshape()
Resets this object.
Definition: MLAPI_LoadBalanceOperator.h:108
ML_Epetra::CrsGraphWrapper::Solve
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:169
ML_Epetra::CrsGraphWrapper::NormOne
double NormOne() const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:227
ML_Epetra::CrsGraphWrapper::SetUseTranspose
int SetUseTranspose(bool UseTranspose)
not implemented, method will always return -1
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:289
MLAPI::Epetra_SerialMatrix
Definition: MLAPI_SerialMatrix.h:33
ML_Aggregate_Struct::P_tentative
struct ML_Operator_Struct ** P_tentative
Definition: ml_aggregate.h:78
MLAPI::MultiVector::Scale
void Scale(const double Factor, int v=-1)
Scales each element by the specified factor.
Definition: MLAPI_MultiVector.h:752
Epetra_CrsMatrix::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
ML_Epetra::MultiLevelOperator::MultiLevelOperator
MultiLevelOperator(ML *ml_handle, const Epetra_Comm &myComm, const Epetra_Map &DomainMap, const Epetra_Map &RangeMap)
Uses an ML instance to implement the Epetra_Operator interface.
Epetra_BlockMap::LID
int LID(int GID) const
MLAPI::MultiLevelAdaptiveSA::R
Operator & R(const int i)
Returns a reference to the restriction operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:144
MLAPI::MultiVectorScaled
Definition: MLAPI_LinearCombinations.h:104
ML_Epetra::CrsGraphWrapper::Comm
const Epetra_Comm & Comm() const
returns ref to the Epetra_Comm associated with this class
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:320
ML_Epetra::CrsGraphWrapper::NumGlobalCols
long long NumGlobalCols() const
Returns the number of global matrix columns.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:241
MLAPI::CompObject
Class to count flops.
Definition: MLAPI_CompObject.h:31
Epetra_CrsMatrix::UseTranspose
bool UseTranspose() const
ML_Epetra::EdgeMatrixFreePreconditioner::Comm
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: ml_EdgeMatrixFreePreconditioner.h:125
ML_Epetra::EdgeMatrixFreePreconditioner
Definition: ml_EdgeMatrixFreePreconditioner.h:50
ML_Epetra::SetDefaultsSA
int SetDefaultsSA(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets default parameters for classical smoothed aggregation.
MLAPI::SetDefaults
void SetDefaults(Teuchos::ParameterList &List)
Sets default values in input List.
ML_Aggregate_Struct::phase3_agg_creation
double phase3_agg_creation
Definition: ml_aggregate.h:92
MLAPI::MultiVector::~MultiVector
~MultiVector()
Destructor.
Definition: MLAPI_MultiVector.h:189
ML_Epetra::CrsGraphWrapper::MaxNumEntries
int MaxNumEntries() const
Returns the maximum of NumMyRowEntries() over all rows.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:114
MLAPI::MultiVector::operator=
MultiVector & operator=(const std::string &Label)
Sets the name of this object, does not touch vector elements or space.
Definition: MLAPI_MultiVector.h:342
MLAPI::Operator::GetRCPOperatorBox
const Teuchos::RefCountPtr< ML_Operator_Box > & GetRCPOperatorBox() const
Returns the RefCountPtr of OperatorBox_.
Definition: MLAPI_Operator.h:254
ML_Gen_Smoother_Ifpack
int ML_Gen_Smoother_Ifpack(ML *ml, const char *Type, int Overlap, int nl, int pre_or_post, void *List, void *Comm)
Epetra_VbrMatrix::DomainMap
const Epetra_BlockMap & DomainMap() const
MLAPI::MultiLevelSA::GetDomainSpace
const Space GetDomainSpace() const
Returns a copy of the internally stored domain space.
Definition: MLAPI_MultiLevelSA.h:83
MLAPI::LoadBalanceInverseOperator::GetRCPData
Teuchos::RCP< Ifpack_Preconditioner > & GetRCPData()
Returns a pointer to the internally stored IFPACK preconditioner.
ML_Epetra::ML_RefMaxwell_11_Operator
Definition: ml_RefMaxwell_11_Operator.h:42
ML_Epetra::MultiLevelPreconditioner::VisualizeSmoothers
int VisualizeSmoothers(int NumPrecCycles=1, int NumPostCycles=1)
Visualizes the effect of smoothers on a random std::vector.
Definition: ml_MultiLevelPreconditioner_Viz.cpp:86
ML_Epetra::AMGType
AMGType
Enumerated type indicating the type of AMG solver to be used.
Definition: ml_MultiLevelPreconditioner.h:167
MLAPI::MultiVectorCombination::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
ML_Epetra::Ifpack_ML::InitializeFlops
virtual double InitializeFlops() const
Returns the number of flops in the initialization phase.
Definition: ml_Ifpack_ML.h:172
MLAPI::Space::operator()
int operator()(int i) const
Returns the global ID of local element i.
Definition: MLAPI_Space.h:231
ML_SuperNode_Struct
Definition: ml_aggregate.h:143
MLAPI::MultiVector::operator=
MultiVector & operator=(const BaseLinearCombination &rhs)
Sets the elements from the input BaseLinearCombination.
Definition: MLAPI_MultiVector.h:325
MLAPI::LoadBalanceOperator::LoadBalanceOperator
LoadBalanceOperator(const Space &DomainSpace, const Space &RangeSpace, Epetra_RowMatrix *Matrix, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Constructor with given already FillComplete()'d object.
Definition: MLAPI_LoadBalanceOperator.h:68
ML_Aggregate_Struct::min_nodes_per_aggregate
int min_nodes_per_aggregate
Definition: ml_aggregate.h:50
Epetra_VbrMatrix::NumMyRows
int NumMyRows() const
Epetra_RowMatrix::NumMyCols
virtual int NumMyCols() const=0
ML_Epetra::MatrixFreePreconditioner::Label
const char * Label() const
Returns the label of this operator.
Definition: ml_MatrixFreePreconditioner.h:98
MLAPI::LoadBalanceInverseOperator::RowMatrix
Epetra_RowMatrix * RowMatrix() const
Returns pointer of the internally stored ML_Epetra::RowMatrix object.
MLAPI::GetMyPID
int GetMyPID()
Returns the ID of the calling process.
Epetra_MatrixAdd
Epetra_CrsMatrix * Epetra_MatrixAdd(Epetra_RowMatrix *B, Epetra_RowMatrix *Bt, double scalar)
Adds two Epetra_RowMatrix's, returns the result as an Epetra_CrsMatrix.
Epetra_VbrMatrix::RowMap
const Epetra_BlockMap & RowMap() const
ML_Epetra::MatrixFreePreconditioner::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Applies the operator to a std::vector (NOT SUPPORTED).
Epetra_IntVector
Epetra_VbrMatrix::MaxNumEntries
int MaxNumEntries() const
ML_Epetra::MatrixFreePreconditioner::~MatrixFreePreconditioner
virtual ~MatrixFreePreconditioner()
destructor
ml_RowMatrix.h
Wrapper from ML_Operator to Epetra_RowMatrix.
MLAPI::MultiLevelAdaptiveSA::MultiLevelAdaptiveSA
MultiLevelAdaptiveSA(const Operator &FineMatrix, Teuchos::ParameterList &List, const int NumPDEEqns, const int MaxLevels=20)
Constructs the hierarchy for given Operator and parameters.
Definition: MLAPI_MultiLevelAdaptiveSA.h:98
MLAPI::MultiVector::MultiVector
MultiVector(const Space &VectorSpace, std::vector< Teuchos::RefCountPtr< DoubleVector > > RCPValues)
Constructor with a given Space, and user-provided array of values.
Definition: MLAPI_MultiVector.h:164
MLAPI::MultiVector::Print
virtual std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints basic information about this object on std::ostream.
Definition: MLAPI_MultiVector.h:825
Copy
Copy
MLAPI::EpetraBaseOperator::Apply
virtual int Apply(const Epetra_MultiVector &X_Epetra, Epetra_MultiVector &Y_Epetra) const
Applies the operator to X, returns the results in Y.
Definition: MLAPI_EpetraBaseOperator.h:72
ML_Amesos_Solve
int ML_Amesos_Solve(void *Amesos_Handle, double x[], double rhs[])
ML_Epetra::RowMatrix::Multiply
virtual int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_RowMatrix multiplied by a Epetra_MultiVector X in Y.
EpetraMatrix2MLMatrix
int EpetraMatrix2MLMatrix(ML *ml_handle, int level, Epetra_RowMatrix *Amat)
Wraps an Epetra_RowMatrix into an ML_Operators.
ML_Operator_Subspace_Struct::data_destroy
void(* data_destroy)(void *)
Definition: ml_operator.h:85
Epetra_FECrsMatrix::GlobalAssemble
int GlobalAssemble(bool callFillComplete=true, Epetra_CombineMode combineMode=Add, bool save_off_and_reuse_map_exporter=false)
MLAPI::InverseOperator::InverseOperator
InverseOperator()
Empty constructor.
Definition: MLAPI_InverseOperator.h:52
ML_Aggregate_Struct::fine_complexity
double fine_complexity
Definition: ml_aggregate.h:74
Epetra_CrsMatrix::ExtractMyRowCopy
int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
MLAPI::GetEpetra_Comm
Epetra_Comm & GetEpetra_Comm()
Returns a reference to the Epetra_Comm object defined on MPI_COMM_WORLD.
MLAPI::MultiVector::Update
void Update(double alpha, const MultiVector &rhs, double beta)
Sets this = alpha * rhs + beta * this.
Definition: MLAPI_MultiVector.h:548
ML_Aggregate_Struct::smoothP_type
int smoothP_type
Definition: ml_aggregate.h:58
MLAPI_DistributedMatrix.h
MLAPI wrapper for Epetra_FECrsMatrix, which allows MATLAB-like syntax.
ML_BreakForDebugger
void ML_BreakForDebugger(const Epetra_Comm &comm)
Stops the code, waiting for a debugger to attach.
MLAPI_BaseObject.h
Base MLAPI object.
ML_Epetra::ML_RefMaxwell_11_Operator::~ML_RefMaxwell_11_Operator
virtual ~ML_RefMaxwell_11_Operator()
Destructor.
MLAPI::Gallery
Operator Gallery(const std::string ProblemType, const Space &MySpace)
Creates a matrix using the TRIUTILS gallery.
MLAPI::MultiLevelSA::GetOperatorDomainSpace
const Space GetOperatorDomainSpace() const
Returns a copy of the internally stored domain space.
Definition: MLAPI_MultiLevelSA.h:71
ML_Epetra::MultiLevelPreconditioner::GetML_Aggregate
const ML_Aggregate * GetML_Aggregate() const
Returns a pointer to the internally stored agg pointer.
Definition: ml_MultiLevelPreconditioner.h:612
ML_Epetra::MultiLevelPreconditioner::NormInf
double NormInf() const
Returns the infinity norm (not implemented).
Definition: ml_MultiLevelPreconditioner.h:503
MLAPI::InverseOperator::GetDomainSpace
const Space GetDomainSpace() const
Returns a reference to the domain space of this object.
MLAPI::Operator::operator=
Operator & operator=(const Operator &RHS)
Makes this object equivalent to RHS.
Definition: MLAPI_Operator.h:150
ML_Epetra::ML_RefMaxwell_11_Operator::MatrixMatrix_Multiply
virtual int MatrixMatrix_Multiply(const Epetra_CrsMatrix &A, Epetra_CrsMatrix **C) const
Computes C= <me> * A. OptimizeStorage must be called for both A and the.
ML_Aggregate_Struct::coarsen_scheme
int coarsen_scheme
Definition: ml_aggregate.h:59
MLAPI::MultiVector::MultiVector
MultiVector(const MultiVector &rhs)
Copy constructor.
Definition: MLAPI_MultiVector.h:179
MLAPI::EpetraBaseOperator::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &X_Epetra, Epetra_MultiVector &Y_Epetra) const
Applies the operator to X, returns the results in Y.
Definition: MLAPI_EpetraBaseOperator.h:59
ML_Aggregate_Struct::nodal_coord
double ** nodal_coord
Definition: ml_aggregate.h:101
ML_Epetra::Ifpack_ML::ComputeTime
virtual double ComputeTime() const
Returns the time spent in Compute().
Definition: ml_Ifpack_ML.h:160
ML_Operator_Subspace_Struct
Definition: ml_operator.h:81
MLAPI::LoadBalanceOperator::Reshape
void Reshape(const Space &DomainSpace, const Space &RangeSpace, ML_Operator *Op, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Reshape with given already computed ML_Operator pointer.
Definition: MLAPI_LoadBalanceOperator.h:114
ML_Epetra::MultiLevelPreconditioner::PrintUnused
void PrintUnused() const
Prints unused parameters in the input ParameterList on standard output.
Definition: ml_MultiLevelPreconditioner.h:399
MLAPI::ML_Operator_Box::~ML_Operator_Box
~ML_Operator_Box()
Destructor.
Definition: MLAPI_Operator_Box.h:43
MLAPI::CompObject::~CompObject
~CompObject()
Destructor.
Definition: MLAPI_CompObject.h:42
MLAPI::LoadBalanceOperator::GetNumMyCols
int GetNumMyCols() const
Returns the number of local columns.
Definition: MLAPI_LoadBalanceOperator.h:262
ML_Aggregate_Struct::nullspace_corrupted
int nullspace_corrupted
Definition: ml_aggregate.h:64
ML_PrintControl_Struct
Definition: ml_struct.h:131
MLAPI::MultiLevelAdaptiveSA::GetNumItersCoarse
int GetNumItersCoarse()
Returns the maximum number of applications on the coarser levels.
Definition: MLAPI_MultiLevelAdaptiveSA.h:275
MLAPI::MultiVector::NormOne
double NormOne(int v=-1) const
Computes the one norm of this vector.
Definition: MLAPI_MultiVector.h:706
ML_Epetra::CrsGraphWrapper::InvColSums
int InvColSums(Epetra_Vector &x) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:194
MLAPI::MultiVector::Random
void Random(int v=-1)
Populates the vector with random elements.
Definition: MLAPI_MultiVector.h:778
MLAPI::EpetraBaseOperator::UseTranspose
virtual bool UseTranspose() const
Returns false.
Definition: MLAPI_EpetraBaseOperator.h:117
ML_Epetra::MatrixFreePreconditioner::NormInf
double NormInf() const
Returns the infinite norm of the operator (NOT SUPPORTED).
Definition: ml_MatrixFreePreconditioner.h:92
MLAPI::LoadBalanceOperator::GetNumGlobalCols
int GetNumGlobalCols() const
Returns the number of global columns.
Definition: MLAPI_LoadBalanceOperator.h:255
MLAPI::Finalize
void Finalize()
Destroys the MLAPI workspace.
MLAPI::MultiVector::Reshape
void Reshape(const Space &S, const int NumVectors=1, const bool SetToZero=true)
Sets the space of this vector.
Definition: MLAPI_MultiVector.h:213
ML_Struct::ML_num_transfers
int ML_num_transfers
Definition: ml_struct.h:78
ML_Epetra::Ifpack_ML::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns a reference to the operator range map.
Definition: ml_Ifpack_ML.h:247
MLAPI::MultiLevelAdaptiveSA::IsComputed
bool IsComputed() const
Returns true if the hierarchy has been successfully computed.
Definition: MLAPI_MultiLevelAdaptiveSA.h:216
MLAPI::SetPrintLevel
void SetPrintLevel(int Level)
Sets the level of output (from 0 to 10, 0 being verbose).
Epetra_BlockMap::NumGlobalElements
int NumGlobalElements() const
ML_Epetra::CrsGraphWrapper::NumMyRowEntries
int NumMyRowEntries(int MyRow, int &NumEntries) const
Returns the number of nonzero entries in MyRow.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:106
Epetra_Comm
MLAPI::MultiVector::Update
void Update(double alpha, const MultiVector &x, double beta, const MultiVector &y)
Sets this = alpha * x + beta * y.
Definition: MLAPI_MultiVector.h:522
MLAPI::Space::~Space
~Space()
Destructor.
Definition: MLAPI_Space.h:105
Epetra_CrsMatrix::NumMyDiagonals
int NumMyDiagonals() const
RefMaxwellPreconditioner
Class for Reformulated Maxwell's Equations solvers. Inherited from ML_Epetra_Operator.
MLAPI::Operator::GetNumMyCols
int GetNumMyCols() const
Returns the number of local columns.
Definition: MLAPI_Operator.h:224
MLAPI::MultiVector::GetNumVectors
int GetNumVectors() const
Returns the number of vectors.
Definition: MLAPI_MultiVector.h:401
MLAPI::DistributedMatrix
Definition: MLAPI_DistributedMatrix.h:29
ML_Epetra::Ifpack_ML::IsInitialized
virtual bool IsInitialized() const
Returns true if the preconditioner has been successfully initialized, false otherwise.
Definition: ml_Ifpack_ML.h:80
ML_Epetra::SetDefaultsDD_3Levels_LU
int SetDefaultsDD_3Levels_LU(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets default parameters for aggregation-based 3-level domain decomposition preconditioners with LU.
ML_Epetra::MatrixFreePreconditioner::GetBlockDiagonal
int GetBlockDiagonal(const Epetra_CrsGraph &Graph, std::string DiagonalColoringType)
Probes for the block diagonal of the given operator.
Epetra_RowMatrix::NumGlobalCols
virtual int NumGlobalCols() const=0
Epetra_VbrMatrix::NumMyBlockRows
int NumMyBlockRows() const
MLAPI_Expressions.h
Overloaded operators for MultiVector's, Operator's, and InverseOpereator's.
ML_Operator_Struct
Definition: ml_operator.h:118
MLAPI::InverseOperator::operator()
MultiVector operator()(const MultiVector &LHS)
Applies the operator to LHS, returns the results.
MLAPI::GetPtent
void GetPtent(const Operator &A, Teuchos::ParameterList &List, const MultiVector &ThisNS, Operator &Ptent, MultiVector &NextNS)
Builds the tentative prolongator using aggregation.
ML_Epetra::SetDefaultsNSSA
int SetDefaultsNSSA(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets defaults for energy minimization preconditioning for nonsymmetric problems.
ML_Epetra::Ifpack_ML::NumInitialize
virtual int NumInitialize() const
Returns the number of calls to Initialize().
Definition: ml_Ifpack_ML.h:136
ML_Epetra::ML_RMP::HasNormInf
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: ml_RefMaxwell.h:156
MLAPI::LoadBalanceOperator::GetRowMatrix
const Epetra_RowMatrix * GetRowMatrix() const
Returns the RefCountPtr of OperatorBox_.
Definition: MLAPI_LoadBalanceOperator.h:283
ML_Anasazi_Get_SpectralNorm_Anasazi
int ML_Anasazi_Get_SpectralNorm_Anasazi(ML_Operator *Amat, ML_Smoother *smoother, int MaxIters, double Tolerance, int IsProblemSymmetric, int UseDiagonalScaling, double *LambdaMax)
Interface from C code to Anasazi to compute the maximum eigenvalue.
ML_Aux_Data
Definition: ml_operator.h:92
ML_Epetra::Ifpack_ML::Initialize
virtual int Initialize()
Initialize the preconditioner.
Definition: ml_Ifpack_ML.h:74
MLAPI::MultiVector::operator()
const double & operator()(const int i, const int v) const
Returns the value of local element i.
Definition: MLAPI_MultiVector.h:369
MLAPI::LoadBalanceOperator::operator=
LoadBalanceOperator & operator=(const LoadBalanceOperator &RHS)
Makes this object equivalent to RHS.
Definition: MLAPI_LoadBalanceOperator.h:176
ML_Aggregate_Struct::aggr_info
int ** aggr_info
Definition: ml_aggregate.h:69
ML_Epetra::CrsGraphWrapper::LeftScale
int LeftScale(const Epetra_Vector &x)
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:186
MLAPI::LinearCombinationAdd
Definition: MLAPI_LinearCombinations.h:26
Epetra_CrsMatrix::NumMyRows
int NumMyRows() const
MLAPI::MATLABStream::SetUseSparse
void SetUseSparse(const bool UseSparse)
Toggles the use of sparse MATLAB formats.
Definition: MLAPI_MATLABStream.h:234
MLAPI::BaseLinearCombination
Definition: MLAPI_BaseLinearCombination.h:24
ML_Epetra::MultiLevelPreconditioner::Label
const char * Label() const
Prints label associated to this object.
Definition: ml_MultiLevelPreconditioner.h:396
ML_Epetra::RowMatrix::NumGlobalCols64
virtual long long NumGlobalCols64() const
Returns the number of global matrix columns.
MLAPI::MultiVector::GetMyLength
int GetMyLength() const
Returns the local length of each vector.
Definition: MLAPI_MultiVector.h:407
ML_Epetra::MatrixFreePreconditioner::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Applies the preconditioner to std::vector X, returns the result in Y.
Epetra_RowMatrix::RowMatrixRowMap
virtual const Epetra_Map & RowMatrixRowMap() const=0
MLAPI::MultiLevelAdaptiveSA::GetInputNumPDEEqns
int GetInputNumPDEEqns()
Returns the number of PDE equations on the current level.
Definition: MLAPI_MultiLevelAdaptiveSA.h:246
ML_Aggregate_Struct::smoothP_damping_sweeps
int * smoothP_damping_sweeps
Definition: ml_aggregate.h:57
MLAPI::MultiVector::Update
void Update(const double alpha, int v=-1)
Sets this(v) = rhs.
Definition: MLAPI_MultiVector.h:459
ML_Epetra::RowMatrix::ExtractMyRowCopy
virtual int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const
Returns a copy of the specified local row in user-provided arrays.
ML_Epetra::MultiLevelPreconditioner::Visualize
int Visualize(bool VizAggre, bool VizPreSmoother, bool VizPostSmoother, bool VizCycle, int NumApplPreSmoother, int NumApplPostSmoother, int NumCycleSmoother)
Generic interface to visualization methods.
Definition: ml_MultiLevelPreconditioner_Viz.cpp:148
ML_Epetra::MatrixFreePreconditioner::Coarsen
int Coarsen(ML_Operator *A, ML_Aggregate **aggr, ML_Operator **P, ML_Operator **R, ML_Operator **C, int NumPDEEqns=1, int NullSpaceDim=1, double *NullSpace=NULL)
Performs coarsening for a given operator A.
MLAPI::Duplicate
MultiVector Duplicate(const MultiVector &y)
Creates a new vector, x, such that x = y.
MLAPI::LoadBalanceOperator::GetParticipation
virtual bool GetParticipation() const
Returns a bool indicating whether this proc participates in the operator application.
Definition: MLAPI_LoadBalanceOperator.h:212
MLAPI::MultiLevelSA::GetMaxLevels
int GetMaxLevels() const
Returns the actual number of levels.
Definition: MLAPI_MultiLevelSA.h:119
Epetra_CrsGraph::Importer
const Epetra_Import * Importer() const
ML_Struct::dble_options
double * dble_options
Definition: ml_struct.h:114
ML_Epetra::CrsGraphWrapper::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
returns ref to the OperatorRangeMap associated with this class
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:326
ML_Epetra::MatrixFreePreconditioner::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns the domain map of the operator.
Definition: ml_MatrixFreePreconditioner.h:122
MLAPI_MultiLevelAdaptiveSA.h
Adaptive smoothed aggregation preconditioner.
ML_Anasazi
ML_Anasazi: default namespace for all Anasazi interfaces.
Definition: ml_anasazi.h:39
ML_Epetra::Ifpack_ML::ComputeFlops
virtual double ComputeFlops() const
Returns the number of flops in the computation phase.
Definition: ml_Ifpack_ML.h:178
ML_Epetra::Ifpack_ML::Condest
virtual double Condest(const Ifpack_CondestType CT=Ifpack_Cheap, const int MaxIters=1550, const double Tol=1e-9, Epetra_RowMatrix *matrix=0)
Computes the condition number estimate, returns its value.
Definition: ml_Ifpack_ML.h:106
MLAPI::MultiLevelSA::SolveMultiLevelSA
int SolveMultiLevelSA(const MultiVector &b_f, MultiVector &x_f, int level) const
Recursively called core of the multi level preconditioner.
Definition: MLAPI_MultiLevelSA.h:312
ML_Epetra::RowMatrix::RowMatrix
RowMatrix(ML_Operator *Op, const Epetra_Comm *Comm=0, const bool cheap=false, const USR_COMM=MPI_COMM_WORLD)
Constructor, constructs Comm object if not provided.
MLAPI::DistributedMatrix::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints information on stream.
MLAPI::LoadBalanceOperator::LoadBalanceOperator
LoadBalanceOperator()
Default constructor.
Definition: MLAPI_LoadBalanceOperator.h:50
MLAPI::Operator::Operator
Operator(const Space &DomainSpace, const Space &RangeSpace, ML_Operator *Op, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Constructor with given already computed ML_Operator pointer.
Definition: MLAPI_Operator.h:56
MLAPI::TimeObject::ResetTimer
void ResetTimer() const
Resets the internal timer.
Definition: MLAPI_TimeObject.h:41
MLAPI::EpetraBaseOperator
Basic class to wrap MLAPI::InverseOperator into Epetra_Operator.
Definition: MLAPI_EpetraBaseOperator.h:42
MLAPI::Operator::GetGCID
int GetGCID(const int LCID) const
Returns the global ID of local column ID LCID.
Definition: MLAPI_Operator.h:281
MLAPI::AnalyzeCheap
void AnalyzeCheap(const Operator &A)
Performs a cheap analysis of the properties of the input operator.
MLAPI::EpetraBaseOperator::OperatorDomainMap
virtual const Epetra_Map & OperatorDomainMap() const
Returns a reference to the OperatorDomainMap.
Definition: MLAPI_EpetraBaseOperator.h:135
Epetra_CrsMatrix
Epetra_DataAccess.h
MLAPI::MATLABStream::operator<<
MATLABStream & operator<<(const int obj)
Writes on file the specified integer (on process 0 only).
Definition: MLAPI_MATLABStream.h:71
ML_Epetra::MatrixFreePreconditioner::UseTranspose
bool UseTranspose() const
Returns true if the tranpose of the operator is considerd (NOT SUPPORTED).
Definition: ml_MatrixFreePreconditioner.h:104
ML_Epetra::MatrixFreePreconditioner::MatrixFreePreconditioner
MatrixFreePreconditioner(const Epetra_Operator &Operator, const Epetra_CrsGraph &Graph, Epetra_MultiVector &NullSpace, const Epetra_Vector &PointDiagonal, Teuchos::ParameterList &List)
Constructor.
MLAPI::InverseOperator::RCPRowMatrix
const Teuchos::RefCountPtr< Epetra_RowMatrix > RCPRowMatrix() const
Returns pointer of the internally stored ML_Epetra::RowMatrix object.
MLAPI::MultiLevelAdaptiveSA::IncrementNullSpace
bool IncrementNullSpace()
Increments the null space dimension by one.
Definition: MLAPI_MultiLevelAdaptiveSA.h:548
ML_Epetra::Ifpack_ML::NumApplyInverse
virtual int NumApplyInverse() const
Returns the number of calls to ApplyInverse().
Definition: ml_Ifpack_ML.h:148
ML_Epetra::MultiLevelPreconditioner::VisualizeAggregates
int VisualizeAggregates()
Visualizes the shape of the aggregates.
Definition: ml_MultiLevelPreconditioner_Viz.cpp:71
MLAPI::SerialMatrix
Definition: MLAPI_SerialMatrix.h:373
ML_Epetra::Ifpack_ML::IsComputed
virtual bool IsComputed() const
Returns true if the preconditioner has been successfully computed, false otherwise.
Definition: ml_Ifpack_ML.h:100
MLAPI::Operator::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints basic information about this object.
Definition: MLAPI_Operator.h:330
MLAPI::MultiVector::GetGlobalLength
int GetGlobalLength() const
Returns the global length of each vector.
Definition: MLAPI_MultiVector.h:413
MLAPI::InverseOperator::Reshape
void Reshape()
Resets this object.
ML_Epetra::RowMatrix::HasNormInf
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: ml_RowMatrix.h:307
ML_Epetra::EdgeMatrixFreePreconditioner::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: ml_EdgeMatrixFreePreconditioner.h:128
Epetra_RowMatrix::NumMyRows
virtual int NumMyRows() const=0
ML_Epetra::MatrixFreePreconditioner
MatrixFreePreconditioner: a class to define preconditioners for Epetra_Operator's.
Definition: ml_MatrixFreePreconditioner.h:64
ML_Smoother_Ifpack
int ML_Smoother_Ifpack(ML_Smoother *sm, int inlen, double x[], int outlen, double rhs[])
ML_Epetra::RowMatrix::NumMyRows
virtual int NumMyRows() const
Returns the number of matrix rows owned by the calling processor.
MLAPI::MultiLevelAdaptiveSA::GetDomainSpace
const Space GetDomainSpace() const
Returns a copy of the internally stored domain space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:132
ML_Aggregate_Struct::vblock_data
void * vblock_data
Definition: ml_aggregate.h:106
ML_Epetra::RowMatrix
Basic wrapper from ML_Operator to Epetra_RowMatrix.
Definition: ml_RowMatrix.h:44
MLAPI::ReadSAMISKernel
void ReadSAMISKernel(const char *myKerFileName, MultiVector &A, const int limKer=-1)
Reads null space vectors from SAMIS binary format.
Epetra_CrsMatrix::Filled
bool Filled() const
ML_Epetra::Ifpack_ML
Wraps an ML preconditioner as an Ifpack_Preconditioner.
Definition: ml_Ifpack_ML.h:42
MLAPI::GetRAP
Operator GetRAP(const Operator &R, const Operator &A, const Operator &P)
Performs a triple matrix-matrix product, res = R * A *P.
wrappedCommStruct
Definition: ml_MultiLevelPreconditioner.h:1147
ML_Anasazi_Get_FieldOfValuesBox_Interface
int ML_Anasazi_Get_FieldOfValuesBox_Interface(ML_Operator *Amat, struct ML_Field_Of_Values *fov)
Interface from C code to Anasazi to compute the field of values.
MLShove
int MLShove(ML_Operator *Mat, MLVec< int > &rowPtr, MLVec< int > &cols, MLVec< double > &vals, int invec_leng, int(*commfunc)(double *vec, void *data), struct wrappedCommStruct &framework, int nGhost)
Take Crs std::vec's, make arrays and shove them into an ML Operator.
Definition: ml_MultiLevelPreconditioner.cpp:4447
ML_Epetra::ML_RMP::SetUseTranspose
int SetUseTranspose(bool UseTranspose)
Sets use transpose (not implemented).
Definition: ml_RefMaxwell.h:147
MLAPI::MultiVector::MultiVector
MultiVector()
Default constructor.
Definition: MLAPI_MultiVector.h:110
MLAPI::Operator::Reshape
void Reshape()
Resets this object.
Definition: MLAPI_Operator.h:94
ML_Epetra::ReadXML
int ReadXML(const std::string &FileName, Teuchos::ParameterList &List, const Epetra_Comm &Comm)
Reads in parameter list options from file.
MLAPI::MATLABStream::GetUseSparse
bool GetUseSparse() const
Returns true if the stream uses sparse MATLAB format.
Definition: MLAPI_MATLABStream.h:228
ML_Epetra::CrsGraphWrapper::~CrsGraphWrapper
virtual ~CrsGraphWrapper()
Destructor.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:91
MLAPI::Operator::GetRCPAuxOperatorBox
const Teuchos::RefCountPtr< ML_Operator_Box > & GetRCPAuxOperatorBox() const
Returns the RefCountPtr of AuxOperatorBox_.
Definition: MLAPI_Operator.h:260
ML_Timing
Definition: ml_struct.h:120
ML_Epetra::MultiLevelPreconditioner::AnalyzeCoarse
int AnalyzeCoarse()
Analyze the effect of the coarse solver on a random std::vector.
Definition: ml_MultiLevelPreconditioner_Analyze.cpp:281
ML_Epetra::CrsGraphWrapper::NumMyNonzeros
int NumMyNonzeros() const
Returns the number of nonzero entries in the calling processor's portion of the matrix.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:247
ml_amesos_wrap.h
Interface to the Trilinos package Amesos.
ML_Epetra::ML_RefMaxwell_11_Operator::SM_Matrix
virtual const Epetra_CrsMatrix & SM_Matrix()
EXPERIMENTAL: Return SM Matrix.
Definition: ml_RefMaxwell_11_Operator.h:130
MLAPI::LoadBalanceOperator::GetNumMyNonzeros
int GetNumMyNonzeros() const
Returns the local number of nonzeros.
Definition: MLAPI_LoadBalanceOperator.h:276
MLAPI::LoadBalanceOperator::GetRCPOperatorBox
const Teuchos::RCP< ML_Operator_Box > & GetRCPOperatorBox() const
Returns the RefCountPtr of OperatorBox_.
Definition: MLAPI_LoadBalanceOperator.h:297
Epetra_MsrMatrix::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Epetra_BlockMap::NumMyPoints
int NumMyPoints() const
MLAPI::Space::GetOffset
int GetOffset() const
Returns the global ID of the first element on the calling process (for linear distributions only).
Definition: MLAPI_Space.h:259
MLAPI::LoadBalanceOperator::GetRangeSpace
const Space GetRangeSpace() const
Returns a reference to the internally stored range space.
Definition: MLAPI_LoadBalanceOperator.h:232
Epetra_CrsMatrix::LeftScale
int LeftScale(const Epetra_Vector &x)
ML_Aggregate_Struct::keep_P_tentative
int keep_P_tentative
Definition: ml_aggregate.h:77
ML_Epetra::EdgeMatrixFreePreconditioner::HasNormInf
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: ml_EdgeMatrixFreePreconditioner.h:122
Epetra_MpiComm::Comm
MPI_Comm Comm() const
ML_Epetra::RowMatrix::RowMatrixColMap
virtual const Epetra_Map & RowMatrixColMap() const
Returns the Epetra_Map object associated with the columns of this matrix.
Epetra_CrsMatrix::NumGlobalDiagonals
int NumGlobalDiagonals() const
MLAPI_MultiLevelSA.h
Standard smoothed aggregation multilevel preconditioner.
Epetra_CrsGraph::MaxNumIndices
int MaxNumIndices() const
MLAPI::MultiVector::operator()
const double & operator()(const int i) const
Returns the value of local element i (const version).
Definition: MLAPI_MultiVector.h:349
ML_Epetra::CrsGraphWrapper::RowMatrixRowMap
const Epetra_Map & RowMatrixRowMap() const
Returns the Epetra_Map object associated with the rows of this matrix.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:265
ml_RefMaxwell_11_Operator.h
ML_Struct::ML_num_levels
int ML_num_levels
Definition: ml_struct.h:74
ML_Epetra::RowMatrix::Solve
virtual int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns result of a local-only solve using a triangular Epetra_RowMatrix with Epetra_MultiVectors X a...
Definition: ml_RowMatrix.h:140
ML_Epetra::MultiLevelPreconditioner::Complexities
void Complexities(double &complexity, double &fineNnz)
Return operator complexity and #nonzeros in fine grid matrix.
Definition: ml_MultiLevelPreconditioner.cpp:1520
MLAPI::LoadBalanceOperator::GetNumMyRows
int GetNumMyRows() const
Returns the number of local rows.
Definition: MLAPI_LoadBalanceOperator.h:249
ML_Epetra::RowMatrix::Filled
virtual bool Filled() const
If FillComplete() has been called, this query returns true, otherwise it returns false.
Definition: ml_RowMatrix.h:221
ML_Aggregate_Struct::curr_threshold
double curr_threshold
Definition: ml_aggregate.h:53
MLAPI::LoadBalanceOperator::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints basic information about this object.
Definition: MLAPI_LoadBalanceOperator.h:378
MLunamalgP
int MLunamalgP(const MLVec< int > &amalgRowPtr, const MLVec< int > &amalgCols, const MLVec< double > &amalgVals, int maxDofPerNode, const MLVec< char > &status, bool fineIsPadded, MLVec< int > &rowPtr, MLVec< int > &cols, MLVec< double > &vals)
Unamalgamate prolongator so that it is suitable for PDE systems.
Definition: ml_MultiLevelPreconditioner.cpp:5080
Epetra_CrsMatrix::ColMap
const Epetra_Map & ColMap() const
Epetra_CrsMatrix::HasNormInf
bool HasNormInf() const
MLAPI::MultiLevelSA::MultiLevelSA
MultiLevelSA(const Operator &FineMatrix, Teuchos::ParameterList &List, const bool ConstructNow=true)
Constructs the hierarchy for given Operator and parameters.
Definition: MLAPI_MultiLevelSA.h:54
ML_Epetra::Ifpack_ML::Apply
int Apply(const Epetra_MultiVector &, Epetra_MultiVector &) const
Applies the matrix to a vector (NOT SUPPORTED)
Definition: ml_Ifpack_ML.h:205
ML_Epetra::MultiLevelPreconditioner::IsPreconditionerComputed
int IsPreconditionerComputed() const
Queries whether multilevel hierarchy has been computed or not.
Definition: ml_MultiLevelPreconditioner.h:489
Epetra_CrsMatrix::RowMatrixRowMap
const Epetra_Map & RowMatrixRowMap() const
ML_Epetra::MatrixFreePreconditioner::IsComputed
bool IsComputed() const
Returns true if the preconditioner has been successfully computed.
Definition: ml_MatrixFreePreconditioner.h:175
ML_Epetra::ML_RefMaxwell_11_Operator::ML_RefMaxwell_11_Operator
ML_RefMaxwell_11_Operator(const Epetra_CrsMatrix &SM_Matrix, const Epetra_CrsMatrix &D0_Matrix, const Epetra_CrsMatrix &M0inv_Matrix, const Epetra_CrsMatrix &M1_Matrix)
Constructor - All the matrices needed for Maxwell. OptimizeStorage must
MLAPI::BaseLinearCombination::GetVectorSpace
virtual const Space GetVectorSpace() const =0
Returns the vector space of the underlying object.
ML_Epetra::EdgeMatrixFreePreconditioner::~EdgeMatrixFreePreconditioner
~EdgeMatrixFreePreconditioner()
Destructor.
MLAPI::Operator::GetOperatorRangeSpace
const Space GetOperatorRangeSpace() const
Returns a reference to the internally stored range space.
Definition: MLAPI_Operator.h:185
MLAPI::Operator::GetRowMatrix
const Epetra_RowMatrix * GetRowMatrix() const
Returns the RefCountPtr of OperatorBox_.
Definition: MLAPI_Operator.h:242
MLAPI::GetTranspose
Operator GetTranspose(const Operator &A, const bool byrow=true)
Returns a newly created transpose of A.
MLAPI::Operator::GetNumGlobalCols
int GetNumGlobalCols() const
Returns the number of global columns.
Definition: MLAPI_Operator.h:218
MLAPI::MATLABStream::~MATLABStream
~MATLABStream()
Finally closes the output file.
Definition: MLAPI_MATLABStream.h:58
MLAPI::MultiVector::GetVectorSpace
Space & GetVectorSpace()
Returns the Space on which this vector is defined (non-const)
Definition: MLAPI_MultiVector.h:396
ML_Epetra::CrsGraphWrapper::LowerTriangular
bool LowerTriangular() const
If matrix is lower triangular in local index space, this query returns true, otherwise it returns fal...
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:259
ML_Amesos_Gen
int ML_Amesos_Gen(ML *ml, int curr_level, int choice, int MaxProcs, double AddToDiag, Amesos_Handle_Type *Amesos_Handle)
MLAPI::MultiLevelSA::P
const Operator & P(const int i) const
Returns a reference to the prolongator operator of level i.
Definition: MLAPI_MultiLevelSA.h:107
MLAPI::InverseOperator::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints out basic information about this object.
MLAPI::EpetraBaseOperator::SetUseTranspose
virtual int SetUseTranspose(bool UseTransposeFlag)
Sets the use of tranpose (NOT IMPLEMENTED).
Definition: MLAPI_EpetraBaseOperator.h:66
Epetra_CrsMatrix::NumMyCols
int NumMyCols() const
Epetra_CrsMatrix::RowMatrixColMap
const Epetra_Map & RowMatrixColMap() const
ML_Epetra::MatrixFreePreconditioner::Comm
const Epetra_Comm & Comm() const
Returns a reference to the communicator object.
Definition: ml_MatrixFreePreconditioner.h:116
Epetra_CrsMatrix::Comm
const Epetra_Comm & Comm() const
MLAPI::TimeObject::Time_
Epetra_Time Time_
Object used to track time.
Definition: MLAPI_TimeObject.h:67
Epetra_CrsGraph::NumGlobalNonzeros
int NumGlobalNonzeros() const
ML_Epetra::RowMatrix::NumGlobalNonzeros
virtual int NumGlobalNonzeros() const
Returns the number of nonzero entries in the global matrix.
MLAPI::MATLABStream::MATLABStream
MATLABStream(const std::string &FileName, bool UseSparse=true)
Opens the specified file for writing.
Definition: MLAPI_MATLABStream.h:44
ML_Epetra::RowMatrix::NumMyRowEntries
virtual int NumMyRowEntries(int MyRow, int &NumEntries) const
Returns the number of nonzero entries in MyRow.
MLAPI::GetIdentity
Operator GetIdentity(const Space &DomainSpace, const Space &RangeSpace)
Returns the identity matrix.
ML_Epetra::Ifpack_ML::ApplyInverseFlops
virtual double ApplyInverseFlops() const
Returns the number of flops in the application of the preconditioner.
Definition: ml_Ifpack_ML.h:184
ML_Epetra::MultiLevelOperator::SetOwnership
int SetOwnership(bool ownership)
If set true, the multigrid hierarchy is destroyed when the Operator is destroyed.
Definition: ml_MultiLevelOperator.h:91
MLAPI_InverseOperator.h
Base class for smoothers and coarse solvers.
MLAPI::operator*
Operator operator*(const Operator &A, const Operator &B)
Creates a new Operator, defined as A * B.
MLAPI::Barrier
void Barrier()
Calls Mpi_Barrier() if MPI is enabled.
Epetra_IntSerialDenseMatrix
ML_Epetra::MultiLevelPreconditioner::CreateLabel
int CreateLabel()
Definition: ml_MultiLevelPreconditioner.cpp:2829
MLAPI::InverseOperator::GetRCPData
Teuchos::RefCountPtr< Ifpack_Preconditioner > & GetRCPData()
Returns a pointer to the internally stored IFPACK preconditioner.
Epetra_BlockMap::GID
int GID(int LID) const
Epetra_MultiVector::Scale
int Scale(double ScalarValue)
MLAPI::CompObject::SetFlops
void SetFlops(double Flops) const
Sets internal counter to Flops.
Definition: MLAPI_CompObject.h:51
MLAPI_Operator_Utils.h
Suite of utilities for MLAPI::Operator objects.
ML_Epetra::EdgeMatrixFreePreconditioner::UseTranspose
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: ml_EdgeMatrixFreePreconditioner.h:119
MLAPI::LoadBalanceInverseOperator::~LoadBalanceInverseOperator
virtual ~LoadBalanceInverseOperator()
Destructor.
Definition: MLAPI_LoadBalanceInverseOperator.h:59
MLAPI::MultiLevelAdaptiveSA::P
Operator & P(const int i)
Returns a reference to the prolongator operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:168
ML_Epetra::CrsGraphWrapper::InvRowSums
int InvRowSums(Epetra_Vector &x) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:178
MLAPI::LoadBalanceOperator::GetNumGlobalNonzeros
int GetNumGlobalNonzeros() const
Returns the global number of nonzeros.
Definition: MLAPI_LoadBalanceOperator.h:269
ML_Epetra::EdgeMatrixFreePreconditioner::ComputePreconditioner
int ComputePreconditioner(const bool CheckFiltering=false)
Computes the multilevel hierarchy.
Epetra_RowMatrix
ML_Epetra::RowMatrix::UpperTriangular
virtual bool UpperTriangular() const
If matrix is upper triangular in local index space, this query returns true, otherwise it returns fal...
MLAPI::MultiLevelAdaptiveSA::SetList
void SetList(Teuchos::ParameterList &List)
Sets the internally stored list to List.
Definition: MLAPI_MultiLevelAdaptiveSA.h:222
MLAPI::LoadBalanceOperator::GetRCPAuxOperatorBox
const Teuchos::RCP< ML_Operator_Box > & GetRCPAuxOperatorBox() const
Returns the RefCountPtr of AuxOperatorBox_.
Definition: MLAPI_LoadBalanceOperator.h:303
ML_Epetra::MultiLevelPreconditioner::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Apply the preconditioner to an Epetra_MultiVector X, puts the result in Y.
Definition: ml_MultiLevelPreconditioner.cpp:2886
ML_GetrowFunc_Struct
Definition: ml_operator.h:62
ML_Epetra::RowMatrix::~RowMatrix
virtual ~RowMatrix()
Destructor.
MLAPI::EpetraBaseOperator::OperatorRangeMap
virtual const Epetra_Map & OperatorRangeMap() const
Returns a reference to the OperatorRangeMap.
Definition: MLAPI_EpetraBaseOperator.h:141
MLAPI::MultiLevelAdaptiveSA::SetInputNumPDEEqns
void SetInputNumPDEEqns(const int n)
Returns the number of PDE equations on the finest level.
Definition: MLAPI_MultiLevelAdaptiveSA.h:240
ML_Epetra::Apply_BCsToGradient
void Apply_BCsToGradient(const Epetra_RowMatrix &EdgeMatrix, const Epetra_RowMatrix &T)
Applies boundary conditions to gradient matrix. (Maxwell's equations)
MLAPI::TimeObject::UpdateTime
void UpdateTime(double t) const
Updates the internal timer with input value t.
Definition: MLAPI_TimeObject.h:53
Epetra_DataAccess
Epetra_DataAccess
ML_Epetra::Ifpack_ML::HasNormInf
bool HasNormInf() const
Returns true if the class furnishes an infinite norm.
Definition: ml_Ifpack_ML.h:229
MLAPI::Operator::GetColumnSpace
const Space GetColumnSpace() const
Returns a reference to the internally stored column space.
Definition: MLAPI_Operator.h:200
Epetra_CrsMatrix::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
ML_Epetra::CrsGraphWrapper::UpperTriangular
bool UpperTriangular() const
If matrix is upper triangular in local index space, this query returns true, otherwise it returns fal...
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:262
ML_Epetra::CrsGraphWrapper::NumMyDiagonals
int NumMyDiagonals() const
Returns the number of local nonzero diagonal entries, based on global row/column index comparisons.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:256
Epetra_MultiVector::NormInf
int NormInf(double *Result) const
Epetra_MultiVector::Norm2
int Norm2(double *Result) const
MLAPI::MultiLevelSA::GetRangeSpace
const Space GetRangeSpace() const
Returns a copy of the internally stored range space.
Definition: MLAPI_MultiLevelSA.h:89
MLAPI_Operator.h
Basic class to define operators within MLAPI.
MLAPI::LoadBalanceOperator::GetOperatorRangeSpace
const Space GetOperatorRangeSpace() const
Returns a reference to the internally stored range space.
Definition: MLAPI_LoadBalanceOperator.h:222
ML_Aggregate_Struct::max_neigh_already_selected
int max_neigh_already_selected
Definition: ml_aggregate.h:51
MLAPI::ReadParameterList
Teuchos::ParameterList ReadParameterList(const char *FileName)
Populates a list from specified file.
ML_Epetra::MultiLevelPreconditioner::VisualizeCycle
int VisualizeCycle(int NumCycles=1)
Visualizes the effect of the ML cycle on a random std::vector.
Definition: ml_MultiLevelPreconditioner_Viz.cpp:120
Epetra_CrsMatrix::ExtractMyRowView
int ExtractMyRowView(int MyRow, int &NumEntries, double *&Values, int *&Indices) const
MLAPI::Space::IsLinear
bool IsLinear() const
Returns true if the decomposition among processors is linear.
Definition: MLAPI_Space.h:265
MLAPI::BaseObject::GetLabel
const std::string & GetLabel() const
Returns the Label of this object.
Definition: MLAPI_BaseObject.h:61
ML_Epetra::Apply_BCsToMatrixRows
void Apply_BCsToMatrixRows(const int *dirichletRows, int numBCRows, const Epetra_CrsMatrix &Matrix)
Applies Dirichlet conditions to matrix rows.
ML_Epetra::MatrixFreePreconditioner::Comm_ML
ML_Comm * Comm_ML()
Returns the ML communicator of this object.
Definition: ml_MatrixFreePreconditioner.h:157
ML_Epetra::ML_RefMaxwell_11_Operator::UseTranspose
virtual bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: ml_RefMaxwell_11_Operator.h:112
ML_Operator_Struct::aux_data
ML_Aux_Data * aux_data
Definition: ml_operator.h:163
Epetra_CrsGraph::NumMyCols
int NumMyCols() const
Epetra_FECrsMatrix::ReplaceGlobalValues
int ReplaceGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
MLAPI::LoadBalanceInverseOperator::GetOperator
const LoadBalanceOperator & GetOperator() const
Returns a reference to the Operator of which this object defines the inverse.
ML_Aggregate_Struct::begin_level
int begin_level
Definition: ml_aggregate.h:71
MLAPI::InverseOperator::RowMatrix
Epetra_RowMatrix * RowMatrix() const
Returns pointer of the internally stored ML_Epetra::RowMatrix object.
ML_Epetra::MultiLevelPreconditioner::SetParameterList
int SetParameterList(const Teuchos::ParameterList &List)
Copies List into the internally stored parameter list object.
Definition: ml_MultiLevelPreconditioner.cpp:2819
amalg_drop::vblock_data
void * vblock_data
Definition: ml_operator.h:193
ML_Epetra::RowMatrix::NumGlobalCols
virtual int NumGlobalCols() const
Returns the number of global matrix columns.
Epetra_BlockMap::NumGlobalPoints
int NumGlobalPoints() const
Epetra_CrsGraph::NumGlobalDiagonals
int NumGlobalDiagonals() const
Epetra_CrsMatrix::SetUseTranspose
int SetUseTranspose(bool UseTranspose_in)
ML_Aggregate_Struct::nvblocks
int nvblocks
Definition: ml_aggregate.h:75
ML_Epetra::RowMatrix::RowMatrixImporter
virtual const Epetra_Import * RowMatrixImporter() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
ML_Aggregate_Struct::aggr_options
void * aggr_options
Definition: ml_aggregate.h:83
ML_Epetra::ML_RefMaxwell_11_Operator::OperatorRangeMap
virtual const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
Definition: ml_RefMaxwell_11_Operator.h:127
MLAPI::Space::operator!=
bool operator!=(const Space &RHS) const
Returns true if this Space is not equivalent to RHS.
Definition: MLAPI_Space.h:218
MLAPI::Operator::~Operator
~Operator()
Destructor.
Definition: MLAPI_Operator.h:85
Epetra_MpiComm
ML_Epetra::RowMatrix::MaxNumEntries
virtual int MaxNumEntries() const
Returns the maximum of NumMyRowEntries() over all rows.
MLAPI::InverseOperator
InverseOperator: basic class to define smoother and coarse solvers.
Definition: MLAPI_InverseOperator.h:46
ML_Epetra::MultiLevelOperator::NormInf
double NormInf() const
Returns the infinity norm of the global matrix.
Definition: ml_MultiLevelOperator.h:154
Epetra_CrsGraph::Filled
bool Filled() const
MLAPI_Eig.h
MLAPI interfaces to eigensolvers.
Epetra_CrsMatrix::ExtractDiagonalCopy
int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
ML_Epetra::CrsGraphWrapper::HasNormInf
bool HasNormInf() const
always returns false
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:317
ML_Struct::ML_num_actual_levels
int ML_num_actual_levels
Definition: ml_struct.h:75
ML_Epetra::CrsGraphWrapper::NumGlobalDiagonals
long long NumGlobalDiagonals() const
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:244
MLAPI::MultiLevelAdaptiveSA::GetSmootherType
std::string GetSmootherType()
Returns the smoother solver type.
Definition: MLAPI_MultiLevelAdaptiveSA.h:228
Epetra_Import::SourceMap
const Epetra_BlockMap & SourceMap() const
ML_Epetra::MultiLevelPreconditioner::NumMyCols
int NumMyCols() const
Returns the local number of columns in the matrix.
Definition: ml_MultiLevelPreconditioner.h:555
MLAPI::LinearCombinationScaled
Definition: MLAPI_LinearCombinations.h:82
ML_Struct::ML_init_flag
int ML_init_flag
Definition: ml_struct.h:72
ml_matscale
Definition: ml_operator.h:202
ML_Epetra::ML_RefMaxwell_11_Operator::Label
virtual const char * Label() const
Prints label associated to this object.
Definition: ml_RefMaxwell_11_Operator.h:118
ML_Epetra
ML_Epetra: default namespace for all Epetra interfaces.
Definition: ml_epetra_utils.h:249
ML_Epetra::CrsGraphWrapper
ML_Epetra::CrsGraphWrapper: a class to wrap an Epetra_CrsGraph as Epetra_RowMatrix.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:62
ml_ifpack_wrap.h
Interface to the Trilinos package Ifpack.
MLAPI::Space::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints on std::ostream basic information about this object.
Definition: MLAPI_Space.h:281
ML_Epetra::RowMatrix::Map
const Epetra_BlockMap & Map() const
Returns a reference to RowMatrix->Map().
Definition: ml_RowMatrix.h:329
MLAPI::MATLABStream
Basic stream to save in a MATLAB-compatible file MLAPI objects.
Definition: MLAPI_MATLABStream.h:37
Epetra_LinearProblem
ML_Epetra::MatrixFreePreconditioner::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns the range map of the operator.
Definition: ml_MatrixFreePreconditioner.h:128
MLAPI::MultiLevelAdaptiveSA::GetMaxCoarseSize
int GetMaxCoarseSize()
Returns the maximum allowed coarse size.
Definition: MLAPI_MultiLevelAdaptiveSA.h:263
MLAPI::MultiVector::Delete
void Delete(const int v)
Deletes the last vector.
Definition: MLAPI_MultiVector.h:268
ML_Epetra::MultiLevelOperator::Label
const char * Label() const
Returns a character string describing the operator.
Definition: ml_MultiLevelOperator.h:160
ML_Epetra::RowMatrix::LowerTriangular
virtual bool LowerTriangular() const
If matrix is lower triangular in local index space, this query returns true, otherwise it returns fal...
MLAPI::MultiVector::GetValues
const double * GetValues(const int v) const
Returns a pointer to the double array (const version)
Definition: MLAPI_MultiVector.h:425
MLAPI::EpetraBaseOperator::EpetraBaseOperator
EpetraBaseOperator(const Epetra_Map &inMap, const BaseOperator &Op)
Constructor.
Definition: MLAPI_EpetraBaseOperator.h:47
MLAPI_MultiVector.h
MLAPI wrapper for double vectors.
MLAPI::BaseOperatorTimesMultiVector
Definition: MLAPI_LinearCombinations.h:182
Epetra_BlockMap::MyGlobalElements
int MyGlobalElements(int *MyGlobalElementList) const
ML_Epetra::MultiLevelPreconditioner
MultiLevelPreconditioner: a class to define black-box multilevel preconditioners using aggregation me...
Definition: ml_MultiLevelPreconditioner.h:234
ML_Epetra::CrsGraphWrapper::NumGlobalRows
long long NumGlobalRows() const
Returns the number of global matrix rows.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:238
MLAPI::Extract
MultiVector Extract(const MultiVector &y, const int v)
Extracts a component from a vector.
MLAPI::Operator::GetNumGlobalRows
int GetNumGlobalRows() const
Returns the number of global rows.
Definition: MLAPI_Operator.h:206
MLAPI::MultiLevelSA::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints basic information about this preconditioner.
Definition: MLAPI_MultiLevelSA.h:355
Epetra_CrsMatrix::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
ML_Operator_WrapEpetraMatrix
int ML_Operator_WrapEpetraMatrix(Epetra_RowMatrix *A, ML_Operator *Result)
Wraps an Epetra_RowMatrix into an ML_Operators, for the given level.
MLAPI_BaseOperator.h
Base MLAPI operator.
ML_Epetra::LocalRowstoColumns
Epetra_IntVector * LocalRowstoColumns(int *Rows, int numRows, const Epetra_CrsMatrix &Matrix)
Returns the local column numbers of the local rows passed in.
ml_matvscale
Definition: ml_operator.h:213
MLAPI::Space::Reshape
void Reshape(const int NumGlobalElements, const int NumMyElements, const int *MyGlobalElements)
Reset the dimension of the space by specifying the local number of elements and their global numberin...
Definition: MLAPI_Space.h:151
Epetra_CrsMatrix::UpperTriangular
bool UpperTriangular() const
ML_Epetra::MultiLevelPreconditioner::ReComputePreconditioner
int ReComputePreconditioner(bool keepFineLevelSmoother=false)
Recompute the preconditioner (not implemented for Maxwell).
Definition: ml_MultiLevelPreconditioner.cpp:2584
Epetra_CrsMatrix::RowMatrixImporter
const Epetra_Import * RowMatrixImporter() const
MLAPI::MultiVector
Basic class for distributed double-precision vectors.
Definition: MLAPI_MultiVector.h:103
MLAPI::MultiVector::Reciprocal
void Reciprocal(int v=-1)
Replaces each element of the vector with its reciprocal.
Definition: MLAPI_MultiVector.h:730
MLAPI::MultiLevelSA
Black-box multilevel smoothed aggregation preconditioner.
Definition: MLAPI_MultiLevelSA.h:47
MLAPI::InverseOperator::GetOperatorRangeSpace
const Space GetOperatorRangeSpace() const
Returns a reference to the range space of this object.
MLAPI::Operator::operator=
Operator & operator=(const std::string &Label)
Sets the label of this object.
Definition: MLAPI_Operator.h:170
MLAPI::BaseOperator::~BaseOperator
virtual ~BaseOperator()
Virtual destructor.
Definition: MLAPI_BaseOperator.h:41
ML_Epetra::EdgeMatrixFreePreconditioner::NormInf
double NormInf() const
Returns the infinity norm (not implemented).
Definition: ml_EdgeMatrixFreePreconditioner.h:116
MLAPI::LoadBalanceOperator::GetRCPRowMatrix
const Teuchos::RCP< Epetra_RowMatrix > & GetRCPRowMatrix() const
Returns the RefCountPtr of RowMatrix_.
Definition: MLAPI_LoadBalanceOperator.h:308
MLAPI::MultiLevelAdaptiveSA::GetCoarseType
std::string GetCoarseType()
Returns the coarse solver type.
Definition: MLAPI_MultiLevelAdaptiveSA.h:234
Epetra_BlockMap::SameAs
bool SameAs(const Epetra_BlockMap &Map) const
ML_Aggregate_Struct::nullspace_dim
int nullspace_dim
Definition: ml_aggregate.h:62
Epetra_CrsMatrix::InvColSums
int InvColSums(Epetra_Vector &x) const
MLAPI::MultiLevelSA::~MultiLevelSA
virtual ~MultiLevelSA()
Destructor.
Definition: MLAPI_MultiLevelSA.h:64
ML_Epetra::EdgeMatrixFreePreconditioner::ReComputePreconditioner
int ReComputePreconditioner()
Recomputes the preconditioner.
Definition: ml_EdgeMatrixFreePreconditioner.h:97
ML_Anasazi::Interface
int Interface(const Epetra_RowMatrix *RowMatrix, Epetra_MultiVector &EigenVectors, double RealEigenvalues[], double ImagEigenvalues[], Teuchos::ParameterList &List, double RealEigenvectors[]=0, double ImagEigenvectors[]=0, int *NumRealEigenvectors=0, int *NumImagEigenvectors=0, ML *ml=0)
Interface to Anasazi to eigen-computations.
Epetra_BlockMap
Epetra_CrsGraph::ExtractMyRowCopy
int ExtractMyRowCopy(int LocalRow, int LenOfIndices, int &NumIndices, int *Indices) const
MLAPI::InverseOperator::GetRangeSpace
const Space GetRangeSpace() const
Returns a reference to the range space of this object.
ML_Epetra::MultiLevelPreconditioner::MultiLevelPreconditioner
MultiLevelPreconditioner(const Epetra_RowMatrix &RowMatrix, const bool ComputePrec=true)
Constructs a MultiLevelPreconditioner with default values.
Definition: ml_MultiLevelPreconditioner.cpp:317
MLAPI::DoubleVector
Definition: MLAPI_MultiVector.h:36
Epetra_Vector
MLAPI::Space::Space
Space(const Space &RHS)
Copy constructor.
Definition: MLAPI_Space.h:95
MLAPI::Space::Reshape
void Reshape()
Resets this object.
Definition: MLAPI_Space.h:111
Epetra_Comm::SumAll
virtual int SumAll(double *PartialSums, double *GlobalSums, int Count) const=0
Epetra_RowMatrix::RowMatrixImporter
virtual const Epetra_Import * RowMatrixImporter() const=0
MLAPI::LoadBalanceInverseOperator::GetRangeSpace
const Space GetRangeSpace() const
Returns a reference to the range space of this object.
MLAPI_Space.h
Class to specify the number and distribution among processes of elements.
Epetra_MatrixMult
Epetra_CrsMatrix * Epetra_MatrixMult(Epetra_RowMatrix *B, Epetra_RowMatrix *Bt)
Multiplies two Epetra_RowMatrix's, returns the results as an Epetra_CrsMatrix.
Epetra_MultiVector::MyLength
int MyLength() const
ML_Epetra::Ifpack_ML::InitializeTime
virtual double InitializeTime() const
Returns the time spent in Initialize().
Definition: ml_Ifpack_ML.h:154
MLAPI::MultiVector::Append
void Append(const MultiVector &rhs)
Appends a new vector.
Definition: MLAPI_MultiVector.h:253
ML_Epetra::MultiLevelPreconditioner::AnalyzeSmoothers
int AnalyzeSmoothers(const int NumPreCycles=1, const int NumPostCycles=1)
Analyze the effect of each level's smoother on a random std::vector.
Definition: ml_MultiLevelPreconditioner_Analyze.cpp:173
Epetra_CrsMatrix::Solve
int Solve(bool Upper, bool Trans, bool UnitDiagonal, const Epetra_Vector &x, Epetra_Vector &y) const
MLAPI::MultiLevelSA::Apply
int Apply(const MultiVector &b_f, MultiVector &x_f) const
Applies the preconditioner to b_f, returns the result in x_f.
Definition: MLAPI_MultiLevelSA.h:297
ML_Epetra::CrsGraphWrapper::UseTranspose
bool UseTranspose() const
returns the usetranspose_ flag
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:314
MLAPI::LinearCombinationMixed::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
ML_Epetra::MultiLevelOperator::~MultiLevelOperator
~MultiLevelOperator()
Destructor.
ML_Epetra::EdgeMatrixFreePreconditioner::Print
void Print(int whichHierarchy=-2)
Print the individual operators in the multigrid hierarchy.
MLAPI::LoadBalanceOperator::~LoadBalanceOperator
~LoadBalanceOperator()
Destructor.
Definition: MLAPI_LoadBalanceOperator.h:99
ML_Epetra::Ifpack_ML::Compute
virtual int Compute()
Computes all it is necessary to apply the preconditioner.
Definition: ml_Ifpack_ML.h:86
Epetra_CrsMatrix::FillComplete
int FillComplete(bool OptimizeDataStorage=true)
MLAPI::LoadBalanceOperator::GetGRID
int GetGRID(const int LRID) const
Returns the global ID of local row ID LRID.
Definition: MLAPI_LoadBalanceOperator.h:314
MLAPI::MultiVector::Sort
void Sort(int v=-1, const bool IsIncreasing=false)
Sorts the component of the vector.
Definition: MLAPI_MultiVector.h:796
MLAPI::GetDiagonal
MultiVector GetDiagonal(const Operator &A)
Returns a vector containing the diagonal elements of A.
MLAPI::MaxEigAnorm
double MaxEigAnorm(const Operator &Op, const bool DiagonalScaling=false)
Computes the maximum eigenvalue of Op using the A-norm of the operator.
ML_Aggregate_Struct::vblock_info
int * vblock_info
Definition: ml_aggregate.h:76
ML_Epetra::MatrixFreePreconditioner::SetUseTranspose
int SetUseTranspose(bool UseTranspose)
Sets the use of the transpose of the operator (NOT SUPPORTED).
MLAPI::LoadBalanceInverseOperator::LoadBalanceInverseOperator
LoadBalanceInverseOperator()
Empty constructor.
Definition: MLAPI_LoadBalanceInverseOperator.h:53
MLAPI::MultiVector::NormInf
double NormInf(int v=-1) const
Computes the infinite norm of this vector.
Definition: MLAPI_MultiVector.h:674
MLAPI::TimeObject::TimeObject
TimeObject()
Constructor, set counter to 0.0.
Definition: MLAPI_TimeObject.h:30
ML_Epetra::MultiLevelPreconditioner::TestSmoothers
int TestSmoothers(const bool IsSymmetric=false)
Test several smoothers on fine-level matrix using the current parameters.
Definition: ml_MultiLevelPreconditioner.h:596
ML_Epetra::MultiLevelPreconditioner::RowMatrix
const Epetra_RowMatrix & RowMatrix() const
Returns a reference to the internally stored RowMatrix.
Definition: ml_MultiLevelPreconditioner.h:525
ML_Aggregate_Struct
Definition: ml_aggregate.h:44
ML_Struct::comm
ML_Comm * comm
Definition: ml_struct.h:112
MLAPI::MaxEigAnasazi
double MaxEigAnasazi(const Operator &Op, const bool DiagonalScaling=false)
Computes the maximum eigenvalue of Op using Anasazi.
ML_Epetra::MultiLevelPreconditioner::GetML
const ML * GetML(const int WhichML=-1) const
Returns a pointer to the internally stored ml pointer.
Definition: ml_MultiLevelPreconditioner.h:601
MLAPI::MultiLevelAdaptiveSA::A
Operator & A(const int i)
Returns a reference to the operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:156
ML_Epetra::EdgeMatrixFreePreconditioner::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
Definition: ml_EdgeMatrixFreePreconditioner.h:131
MLAPI::Redistribute
MultiVector Redistribute(const MultiVector &y, const int NumEquations)
Redistributes the entry of a vector as a multivector.
ML_Aggregate_Struct::max_coarse_size
int max_coarse_size
Definition: ml_aggregate.h:48
ML_Epetra::MultiLevelPreconditioner::AnalyzeHierarchy
int AnalyzeHierarchy(const bool AnalyzeMatrices, const int PreCycles, const int PostCycles, const int MLCycles)
Cheap analysis of each level matrix.
Definition: ml_MultiLevelPreconditioner_Analyze.cpp:79
MLAPI::BaseObject::~BaseObject
virtual ~BaseObject()
Destructor.
Definition: MLAPI_BaseObject.h:52
MLAPI_EpetraBaseOperator.h
Basic class to wrap MLAPI::InverseOperator into Epetra_Operator.
MLAPI
MLAPI: Default namespace for all MLAPI objects and functions.
Definition: MLAPI_Aggregation.h:24
Epetra_CrsMatrix::NumGlobalNonzeros
int NumGlobalNonzeros() const
ML_Epetra_getrow
int ML_Epetra_getrow(ML_Operator *data, int N_requested_rows, int requested_rows[], int allocated_space, int columns[], double values[], int row_lengths[])
Getrow function for matrix of type Epetra_RowMatrix.
MLAPI::MultiVector::SetRCPValues
void SetRCPValues(const Teuchos::RefCountPtr< DoubleVector > &RCPValues, const int v)
Sets the RefCountPtr<Values_>
Definition: MLAPI_MultiVector.h:447
MLAPI_Aggregation.h
Functions to create aggregation-based prolongator operators.
MLAPI::Space::Space
Space(const int NumGlobalElements, const int NumMyElements, const int *MyGlobalElements)
Constructor for non-linear distributions.
Definition: MLAPI_Space.h:88
MLAPI::MultiLevelAdaptiveSA::S
const InverseOperator & S(const int i) const
Returns a reference to the inverse operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:186
MLAPI::Space::GetNumMyElements
int GetNumMyElements() const
Returns the local number of elements on the calling process.
Definition: MLAPI_Space.h:247
ML_Operator_Subspace_Struct::res1
double * res1
Definition: ml_operator.h:89
Epetra_RowMatrix::ExtractMyRowCopy
virtual int ExtractMyRowCopy(int MyRow, int Length, int &NumEntries, double *Values, int *Indices) const=0
ML_Epetra::MatrixFreePreconditioner::HasNormInf
bool HasNormInf() const
Returns false.
Definition: ml_MatrixFreePreconditioner.h:110
Epetra_Time
ML_Epetra::ML_RMP::NormInf
double NormInf() const
Returns the infinity norm (not implemented).
Definition: ml_RefMaxwell.h:150
ML_Epetra::CrsGraphWrapper::Map
const Epetra_BlockMap & Map() const
Returns the Epetra_Map object associated with the rows of this matrix, derived from Epetra_Operator.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:283
MLAPI::MultiLevelAdaptiveSA::SetupInitialNullSpace
void SetupInitialNullSpace()
Computes the first component of the null space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:429
ML_Epetra::RowMatrix::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: ml_RowMatrix.h:313
MLAPI::LoadBalanceOperator::BuildColumnSpace
void BuildColumnSpace()
Build the column space, by computing the GID of all local columns.
Definition: MLAPI_LoadBalanceOperator.h:475
MLAPI::BaseOperator
Base class for all MLAPI objects.
Definition: MLAPI_BaseOperator.h:36
MLAPI::MultiLevelAdaptiveSA::~MultiLevelAdaptiveSA
virtual ~MultiLevelAdaptiveSA()
Destructor.
Definition: MLAPI_MultiLevelAdaptiveSA.h:113
Epetra_Vector::ExtractView
int ExtractView(double **V) const
ML_Operator_Subspace_Struct::vecleng
int vecleng
Definition: ml_operator.h:84
Epetra_IntSerialDenseVector
Epetra_RowMatrix::RowMatrixColMap
virtual const Epetra_Map & RowMatrixColMap() const=0
MLAPI::TimeObject::GetTime
double GetTime() const
Returns the internally stored counter.
Definition: MLAPI_TimeObject.h:59
MLAPI::LoadBalanceOperator
Definition: MLAPI_LoadBalanceOperator.h:44
Epetra_RowMatrix::MaxNumEntries
virtual int MaxNumEntries() const=0
MLShove
int MLShove(ML_Operator *Mat, MLVec< int > &rowPtr, MLVec< int > &cols, MLVec< double > &vals, int invec_leng, int(*commfunc)(double *vec, void *data), struct wrappedCommStruct &framework, int nGhost)
Take Crs std::vec's, make arrays and shove them into an ML Operator.
Definition: ml_MultiLevelPreconditioner.cpp:4447
MLAPI::LoadBalanceInverseOperator::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints out basic information about this object.
Epetra_CrsGraph
ML_Epetra::RowMatrix::LeftScale
virtual int LeftScale(const Epetra_Vector &x)
Scales the Epetra_RowMatrix on the left with a Epetra_Vector x.
Definition: ml_RowMatrix.h:181
MLAPI::MaxEigCG
double MaxEigCG(const Operator &Op, const bool DiagonalScaling=false)
Computes the maximum eigenvalue of Op using the CG method.
MLAPI::MultiVector::GetValues
double * GetValues(const int v)
Returns a pointer to the double array (non-const version)
Definition: MLAPI_MultiVector.h:419
ML_Epetra::MultiLevelPreconditioner::Comm
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: ml_MultiLevelPreconditioner.h:512
Epetra_MsrMatrix
ML_Aggregate_Comm_Struct
Definition: ml_aggregate.h:158
ML_Aggregate_Struct::max_levels
int max_levels
Definition: ml_aggregate.h:70
MLAPI::Space::Space
Space(const int NumGlobalElements, const int NumMyElements=-1)
Constructor with specified number of global and local elements.
Definition: MLAPI_Space.h:66
ML_Epetra::ML_RefMaxwell_11_Operator::Apply
virtual int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_Operator applied to a Epetra_MultiVector X in Y.
ML_Epetra::RowMatrix::InvRowSums
virtual int InvRowSums(Epetra_Vector &x) const
Computes the sum of absolute values of the rows of the Epetra_RowMatrix, results returned in x.
Definition: ml_RowMatrix.h:168
MLAPI::MultiLevelAdaptiveSA::SetMaxLevels
void SetMaxLevels(const int MaxLevels)
Returns the actual number of levels.
Definition: MLAPI_MultiLevelAdaptiveSA.h:198
ML_Epetra::MultiLevelOperator::Comm
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: ml_MultiLevelOperator.h:169
ML_Struct::timing
struct ML_Timing * timing
Definition: ml_struct.h:110
MLAPI::Operator::GetML_Operator
ML_Operator * GetML_Operator() const
Returns the RefCountPtr of OperatorBox_.
Definition: MLAPI_Operator.h:248
ML_Epetra::MultiLevelOperator::HasNormInf
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: ml_MultiLevelOperator.h:166
ML_Anasazi::GetFieldOfValuesBox
int GetFieldOfValuesBox(const Epetra_RowMatrix *RowMatrix, double &MaxReal, double &MaxImag, Teuchos::ParameterList &AnasaziList)
Computes the size of a box containing the field of values.
ML_Epetra::MultiLevelPreconditioner::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
Definition: ml_MultiLevelPreconditioner.h:518
MLAPI::LoadBalanceInverseOperator::GetOperatorRangeSpace
const Space GetOperatorRangeSpace() const
Returns a reference to the range space of this object.
MLAPI::Operator::Operator
Operator(const Space &DomainSpace, const Space &RangeSpace, Epetra_RowMatrix *Matrix, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Constructor with given already FillComplete()'d object.
Definition: MLAPI_Operator.h:64
MLAPI::Space::operator=
Space & operator=(const Space &RHS)
Operator =.
Definition: MLAPI_Space.h:188
Epetra_MultiVector
ML_Struct::ML_scheme
int ML_scheme
Definition: ml_struct.h:73
MLAPI::MultiVector::Update
void Update(const MultiVector &rhs)
Sets this = rhs.
Definition: MLAPI_MultiVector.h:475
MLAPI::LoadBalanceOperator::GetColumnSpace
const Space GetColumnSpace() const
Returns a reference to the internally stored column space.
Definition: MLAPI_LoadBalanceOperator.h:237
ML_Epetra::ML_RMP::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: ml_RefMaxwell.h:162
MLAPI::LinearCombinationMixed
Definition: MLAPI_LinearCombinations.h:58
ML_Epetra::RowMatrix::SetUseTranspose
int SetUseTranspose(bool UseTransposeFlag)
Sets use transpose (not implemented).
Definition: ml_RowMatrix.h:301
ML_Epetra::MultiLevelPreconditioner::HasNormInf
bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: ml_MultiLevelPreconditioner.h:509
MLAPI::GetAggregates
int GetAggregates(Epetra_RowMatrix &A, Teuchos::ParameterList &List, double *thisns, Epetra_IntVector &aggrinfo)
Call ML aggregation on A according to parameters supplied in List. Return aggregates in aggrinfo.
Epetra_Comm::MaxAll
virtual int MaxAll(double *PartialMaxs, double *GlobalMaxs, int Count) const=0
MLAPI::MultiLevelAdaptiveSA::P
const Operator & P(const int i) const
Returns a reference to the prolongator operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:174
MLAPI::operator/
Operator operator/(const Operator &A, const double alpha)
Creates a new Operator, defined as A / alpha.
Definition: MLAPI_Expressions.h:206
Epetra_SrcDistObject::Map
virtual const Epetra_BlockMap & Map() const=0
MLAPI::Operator::GetOperatorDomainSpace
const Space GetOperatorDomainSpace() const
Returns a reference to the internally stored domain space.
Definition: MLAPI_Operator.h:180
MLAPI::BaseObject::SetLabel
void SetLabel(const std::string &Label)
Sets the Label of this object to Label.
Definition: MLAPI_BaseObject.h:55
MLAPI::GetScaledOperator
Operator GetScaledOperator(const Operator &A, const double alpha)
Multiply A by a double value, alpha.
Epetra_CrsGraph::NumMyRows
int NumMyRows() const
MLAPI_LoadBalanceOperator.h
wraps an MLAPI operator with zero rows on some processors.
Epetra_CrsMatrix::InvRowSums
int InvRowSums(Epetra_Vector &x) const
ML_Aggregate_Struct::drop_tol_for_smoothing
double drop_tol_for_smoothing
Definition: ml_aggregate.h:54
ML_Epetra::ML_RMP::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Apply the inverse of the preconditioner to an Epetra_MultiVector (NOT AVAILABLE)
Definition: ml_RefMaxwell.h:103
ML_Epetra::MultiLevelOperator::Label_
const char * Label_
Label for this object.
Definition: ml_MultiLevelOperator.h:183
ML_Aggregate_Struct::block_scaled_SA
int block_scaled_SA
Definition: ml_aggregate.h:88
ML_Epetra::MultiLevelPreconditioner::NumGlobalCols
int NumGlobalCols() const
Returns the global number of columns in the matrix.
Definition: ml_MultiLevelPreconditioner.h:543
MLAPI::LoadBalanceInverseOperator::operator()
MultiVector operator()(const MultiVector &LHS)
Applies the operator to LHS, returns the results.
ML_Epetra::RowMatrix::NormInf
virtual double NormInf() const
Returns the infinity norm of the global matrix.
MLAPI::Operator::GetNumMyNonzeros
int GetNumMyNonzeros() const
Returns the local number of nonzeros.
Definition: MLAPI_Operator.h:236
Epetra_CrsGraph::ColMap
const Epetra_BlockMap & ColMap() const
ML_Epetra::Ifpack_ML::ApplyInverseTime
virtual double ApplyInverseTime() const
Returns the time spent in ApplyInverse().
Definition: ml_Ifpack_ML.h:166
MLAPI::LoadBalanceOperator::GetGCID
int GetGCID(const int LCID) const
Returns the global ID of local column ID LCID.
Definition: MLAPI_LoadBalanceOperator.h:324
ML_Epetra::Epetra_PtAP
int Epetra_PtAP(const Epetra_CrsMatrix &A, const Epetra_CrsMatrix &P, Epetra_CrsMatrix *&Result, bool keep_zero_rows=false, bool verbose=false)
Does an P^TAP for Epetra_CrsMatrices using EpetraExt's kernels.
ML_Epetra::ML_RefMaxwell_11_Operator::SetUseTranspose
virtual int SetUseTranspose(bool UseTranspose)
Sets use transpose (not implemented).
Definition: ml_RefMaxwell_11_Operator.h:66
ML_Epetra::ML_RefMaxwell_11_Operator::HasNormInf
virtual bool HasNormInf() const
Returns true if the this object can provide an approximate Inf-norm, false otherwise.
Definition: ml_RefMaxwell_11_Operator.h:115
Epetra_VbrMatrix::ExtractMyBlockRowView
int ExtractMyBlockRowView(int BlockRow, int &RowDim, int &NumBlockEntries, int *&BlockIndices, Epetra_SerialDenseMatrix **&Values) const
ML_Epetra::MultiLevelPreconditioner::TestSmoothers
int TestSmoothers(Teuchos::ParameterList &InputList, const bool IsSymmetric=false)
Test several smoothers on fine-level matrix.
Definition: ml_MultiLevelPreconditioner_Test.cpp:75
ML_Epetra::MultiLevelPreconditioner::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Apply the inverse of the preconditioner to an Epetra_MultiVector (NOT AVAILABLE)
Definition: ml_MultiLevelPreconditioner.h:441
MLAPI::Operator
Operator: basic class to define operators within MLAPI.
Definition: MLAPI_Operator.h:44
ML_Epetra::RowMatrix::NumGlobalRows
virtual int NumGlobalRows() const
Returns the number of global matrix rows.
ML_Epetra::EdgeMatrixFreePreconditioner::SetUseTranspose
int SetUseTranspose(bool UseTranspose)
Sets use transpose (not implemented).
Definition: ml_EdgeMatrixFreePreconditioner.h:113
ML_Epetra::Ifpack_ML::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns a reference to the operator domain map.
Definition: ml_Ifpack_ML.h:241
ML_Epetra::MatrixFreePreconditioner::R
const Epetra_CrsMatrix & R() const
Returns the restriction operator as an Epetra_CrsMatrix.
Definition: ml_MatrixFreePreconditioner.h:151
Epetra_Operator::OperatorRangeMap
virtual const Epetra_Map & OperatorRangeMap() const=0
ML_Struct
Definition: ml_struct.h:69
ML_Epetra::RowMatrix::InvColSums
virtual int InvColSums(Epetra_Vector &x) const
Computes the sum of absolute values of the columns of the Epetra_RowMatrix, results returned in x.
Definition: ml_RowMatrix.h:197
MLAPI::MultiLevelAdaptiveSA::Print
std::ostream & Print(std::ostream &os, const bool verbose=true) const
Prints basic information about this preconditioner.
Definition: MLAPI_MultiLevelAdaptiveSA.h:820
ML_Epetra::Ifpack_ML::Label
const char * Label() const
Returns the label of this object.
Definition: ml_Ifpack_ML.h:217
ML_Aggregate_Struct::smoothP_damping_factor
double smoothP_damping_factor
Definition: ml_aggregate.h:56
ML_Epetra::CrsGraphWrapper::RowMatrixImporter
const Epetra_Import * RowMatrixImporter() const
Returns the Epetra_Import object that contains the import operations for distributed operations.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:277
Epetra_Time::ElapsedTime
double ElapsedTime(void) const
ML_Epetra::MatrixFreePreconditioner::TotalCPUTime
double TotalCPUTime() const
Returns the total CPU time spent in this class.
MLAPI::BaseObject::BaseObject
BaseObject(const std::string &Label)
Constructor with given Label.
Definition: MLAPI_BaseObject.h:46
ML_Operator_Struct::N_nonzeros
int N_nonzeros
Definition: ml_operator.h:130
ML_Aggregate_Struct::attach_scheme
int attach_scheme
Definition: ml_aggregate.h:55
MLunamalgP
int MLunamalgP(const MLVec< int > &amalgRowPtr, const MLVec< int > &amalgCols, const MLVec< double > &amalgVals, int maxDofPerNode, const MLVec< char > &status, bool fineIsPadded, MLVec< int > &rowPtr, MLVec< int > &cols, MLVec< double > &vals)
Unamalgamate prolongator so that it is suitable for PDE systems.
Definition: ml_MultiLevelPreconditioner.cpp:5080
ML_Aggregate_Struct::aggr_count
int * aggr_count
Definition: ml_aggregate.h:66
MLAPI::LoadBalanceInverseOperator
Definition: MLAPI_LoadBalanceInverseOperator.h:47
ML_Epetra_comm_wrapper
int ML_Epetra_comm_wrapper(double vec[], void *data)
Update vec's ghost node via communication.
Epetra_FECrsMatrix::InsertGlobalValues
int InsertGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
Epetra_CrsMatrix::MaxNumEntries
int MaxNumEntries() const
ML_Epetra::CrsGraphWrapper::Label
const char * Label() const
returns the label of this class
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:311
ML_Epetra::CrsGraphWrapper::NumMyRows
int NumMyRows() const
Returns the number of matrix rows owned by the calling processor.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:250
ML_Struct::int_options
int * int_options
Definition: ml_struct.h:113
ML_Epetra::MultiLevelOperator::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: ml_MultiLevelOperator.h:172
MLAPI::MultiVector::MultiVector
MultiVector(const Space &VectorSpace, Teuchos::RefCountPtr< DoubleVector > RCPValues)
Constructor with a given Space, and user-provided RefCountPtr.
Definition: MLAPI_MultiVector.h:151
ML_Epetra::ML_RefMaxwell_11_Operator::PtAP
virtual int PtAP(const Epetra_CrsMatrix &A, ML_Comm *comm, ML_Operator **C) const
Computes C= A^T * <me> * A. OptimizeStorage must be called for both A and the.
MLAPI::Space::Space
Space(const Epetra_Map &Map)
Constructor with specified Epetra_Map.
Definition: MLAPI_Space.h:72
ML_Epetra::SetDefaultsDD_LU
int SetDefaultsDD_LU(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets default parameters for aggregation-based 2-level domain decomposition preconditioners,...
ML_Epetra::ML_RefMaxwell_11_Operator::ApplyInverse
virtual int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Epetra_Operator inverse applied to an.
Definition: ml_RefMaxwell_11_Operator.h:87
MLAPI::Space::GetNumGlobalElements
int GetNumGlobalElements() const
Returns the global number of elements.
Definition: MLAPI_Space.h:253
Epetra_BlockMap::IndexBase
int IndexBase() const
MLAPI::MultiLevelAdaptiveSA::GetNumItersFine
int GetNumItersFine()
Returns the maximum number of applications on the finest level.
Definition: MLAPI_MultiLevelAdaptiveSA.h:281
MLAPI::EpetraBaseOperator::Label
virtual const char * Label() const
Returns the label of this object.
Definition: MLAPI_EpetraBaseOperator.h:111
MLAPI::Eig
void Eig(const Operator &Op, MultiVector &ER, MultiVector &EI)
Computes eigenvalues and eigenvectors using LAPACK (w/ one process only).
ML_Epetra::MultiLevelOperator::solver_
ML * solver_
Pointer to the ML_Structure.
Definition: ml_MultiLevelOperator.h:174
MLAPI::MultiVector::DotProduct
double DotProduct(const MultiVector &rhs, int v=-1) const
Computes the dot product between this vector and rhs.
Definition: MLAPI_MultiVector.h:615
Epetra_CrsMatrix::Label
const char * Label() const
Epetra_MsrMatrix::Comm
const Epetra_Comm & Comm() const
MLAPI::GetML_Comm
ML_Comm * GetML_Comm()
Returns a pointer to the ML_Comm object defined on MPI_COMM_WORLD.
MLAPI::MultiLevelSA::IsComputed
bool IsComputed() const
Returns true if the hierarchy has been successfully computed, false otherwise.
Definition: MLAPI_MultiLevelSA.h:125
MLAPI::LoadBalanceOperator::operator=
Operator & operator=(const std::string &Label)
Sets the label of this object.
Definition: MLAPI_LoadBalanceOperator.h:202
MLAPI::Space::Reshape
void Reshape(const int NumGlobalElements, const int NumMyElements=-1)
Resets the dimension of the space by specifying the local number of elements.
Definition: MLAPI_Space.h:121
MLAPI::MATLABStream::GetFileName
std::string GetFileName() const
Returns the name of the output file.
Definition: MLAPI_MATLABStream.h:240
ML_Epetra::MultiLevelPreconditioner::SetUseTranspose
int SetUseTranspose(bool useTranspose)
Sets use transpose (not implemented).
Definition: ml_MultiLevelPreconditioner.h:500
MLAPI::CompObject::CompObject
CompObject()
Constructor, set counter to 0.0.
Definition: MLAPI_CompObject.h:36
ML_Epetra::CrsGraphWrapper::Apply
int Apply(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:296
MLAPI::LoadBalanceInverseOperator::GetDomainSpace
const Space GetDomainSpace() const
Returns a reference to the domain space of this object.
ML_Epetra::Ifpack_ML::SetParameters
virtual int SetParameters(Teuchos::ParameterList &List)
Sets all the parameters for the preconditioner from the list.
Definition: ml_Ifpack_ML.h:60
ML_Epetra::MultiLevelPreconditioner::ComputePreconditioner
int ComputePreconditioner(const bool CheckFiltering=false)
Computes the multilevel hierarchy.
Definition: ml_MultiLevelPreconditioner.cpp:1807
MLAPI::LinearCombinationAdd::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
Definition: MLAPI_LinearCombinations.h:35
ML_Aggregate_Struct::keep_agg_information
int keep_agg_information
Definition: ml_aggregate.h:67
MLAPI::TimeObject::UpdateTime
void UpdateTime() const
Updates the internal timer with the time spent since the last call to ResetTimer().
Definition: MLAPI_TimeObject.h:47
ML_Epetra::CrsGraphWrapper::RightScale
int RightScale(const Epetra_Vector &x)
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:202
MLAPI::Space::operator=
Space & operator=(const std::string &Label)
Sets the Label of this object.
Definition: MLAPI_Space.h:224
MLAPI::Operator::Reshape
void Reshape(const Space &DomainSpace, const Space &RangeSpace, ML_Operator *Op, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Reshape with given already computed ML_Operator pointer.
Definition: MLAPI_Operator.h:100
Epetra_CrsMatrix::RowMap
const Epetra_Map & RowMap() const
MLAPI::MultiLevelAdaptiveSA::GetMaxReduction
double GetMaxReduction()
Returns the maximum allowed reduction.
Definition: MLAPI_MultiLevelAdaptiveSA.h:269
MLAPI_SerialMatrix.h
MATLAB-like serial matrix.
MLAPI::MultiLevelAdaptiveSA::GetNullSpace
const MultiVector GetNullSpace() const
Gets a reference to the internally stored null space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:204
MLAPI::BaseObject::Print
virtual std::ostream & Print(std::ostream &os, const bool Verbose=true) const =0
Prints information on stream.
ML_Epetra::Ifpack_ML::Comm
const Epetra_Comm & Comm() const
Returns a reference to the communicator of this object.
Definition: ml_Ifpack_ML.h:235
MLAPI::MultiVectorCombination
Definition: MLAPI_LinearCombinations.h:134
MLAPI::CompObject::GetFlops
double GetFlops() const
Returns the internal counter of flops.
Definition: MLAPI_CompObject.h:45
MLAPI::MultiLevelAdaptiveSA::SolveMultiLevelSA
int SolveMultiLevelSA(const MultiVector &b_f, MultiVector &x_f, int level) const
Recursively called core of the multi level preconditioner.
Definition: MLAPI_MultiLevelAdaptiveSA.h:777
MLAPI::GetRecirc2D
Operator GetRecirc2D(const int NX, const int NY, const double conv, const double diff)
Creates a recirculation problem in 2D.
MLAPI::LoadBalanceOperator::LoadBalanceOperator
LoadBalanceOperator(const Space &DomainSpace, const Space &RangeSpace, ML_Operator *Op, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Constructor with given already computed ML_Operator pointer.
Definition: MLAPI_LoadBalanceOperator.h:58
ML_Epetra::Apply_OAZToMatrix
void Apply_OAZToMatrix(int *dirichletRows, int numBCRows, const Epetra_CrsMatrix &Matrix)
Does Row/Column OAZ to a matrix.
MLAPI::MultiVector::Update
void Update(double alpha, const MultiVector &rhs)
Sets this = alpha * rhs.
Definition: MLAPI_MultiVector.h:496
ML_Epetra::MultiLevelPreconditioner::~MultiLevelPreconditioner
virtual ~MultiLevelPreconditioner()
Destroys the preconditioner.
Definition: ml_MultiLevelPreconditioner.h:386
ML_Struct::void_options
void * void_options
Definition: ml_struct.h:115
MLAPI::MultiVector::GetRCPValues
const Teuchos::RefCountPtr< DoubleVector > & GetRCPValues(const int v) const
Returns a pointer to the double array (const version)
Definition: MLAPI_MultiVector.h:439
MLAPI::LoadBalanceOperator::Reshape
void Reshape(const Space &DomainSpace, const Space &RangeSpace, Epetra_RowMatrix *Matrix, bool Ownership=true, Teuchos::RCP< ML_Operator_Box > AuxOp=Teuchos::null)
Reshape with given already FillComplete()'d object.
Definition: MLAPI_LoadBalanceOperator.h:132
MLAPI::GetPrintLevel
int GetPrintLevel()
Retutns the level of output (always 0 if MyPID() != 0).
MLAPI::Space::operator==
bool operator==(const Space &RHS) const
Returns true if this Space is equivalent to RHS.
Definition: MLAPI_Space.h:202
ml_MultiLevelPreconditioner.h
ML_Struct::label
char * label
Definition: ml_struct.h:71
MLAPI::EpetraBaseOperator::Map
virtual const Epetra_Map & Map() const
Returns a reference to the Map of this object.
Definition: MLAPI_EpetraBaseOperator.h:147
MLAPI::MultiLevelAdaptiveSA::AdaptCompute
void AdaptCompute(const bool UseDefaultOrSpecified, int AdditionalCandidates)
Setup the adaptive multilevel hierarchy.
Definition: MLAPI_MultiLevelAdaptiveSA.h:405
MLAPI::MultiVector::GetVectorSpace
const Space & GetVectorSpace() const
Returns the Space on which this vector is defined.
Definition: MLAPI_MultiVector.h:390
ML_Aggregate_Struct::use_transpose
int use_transpose
Definition: ml_aggregate.h:80
MLAPI_Operator_Box.h
Wrapper for ML_Operator to make it suitable for RefCountPtr.
MLAPI::Operator::GetNumGlobalNonzeros
int GetNumGlobalNonzeros() const
Returns the global number of nonzeros.
Definition: MLAPI_Operator.h:230
MLAPI::ML_Operator_Box
Simple wrapper for ML_Operator struct.
Definition: MLAPI_Operator_Box.h:32
ML_Epetra::RowMatrix::RowMatrixRowMap
virtual const Epetra_Map & RowMatrixRowMap() const
Returns the Epetra_Map object associated with the rows of this matrix.
MLAPI::MultiLevelAdaptiveSA::GetOperatorRangeSpace
const Space GetOperatorRangeSpace() const
Returns a copy of the internally stored range space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:126
ML_Epetra::CrsGraphWrapper::NumMyCols
int NumMyCols() const
Returns the number of matrix columns owned by the calling processor.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:253
MLAPI::MultiVector::Append
void Append(const int NumVectors=1, const bool SetToZero=true)
Appends a new vector.
Definition: MLAPI_MultiVector.h:234
ML_Epetra::MultiLevelPreconditioner::PrintUnused
void PrintUnused(std::ostream &os) const
Prints unused parameters in the input ParameterList on the specified stream.
Definition: ml_MultiLevelPreconditioner.h:405
MLAPI::operator-
MultiVectorCombination operator-(const MultiVector &x, const MultiVector &y)
Creates a new MultiVector, defined as x - y.
ML_Epetra::EdgeMatrixFreePreconditioner::EdgeMatrixFreePreconditioner
EdgeMatrixFreePreconditioner(Teuchos::RCP< const Epetra_Operator > Operator, Teuchos::RCP< const Epetra_Vector > Diagonal, Teuchos::RCP< const Epetra_CrsMatrix > D0_Matrix, Teuchos::RCP< const Epetra_CrsMatrix > D0_Clean_Matrix, Teuchos::RCP< const Epetra_CrsMatrix > TMT_Matrix, Teuchos::ArrayRCP< int > BCedges, const Teuchos::ParameterList &List, const bool ComputePrec=true)
Constructs an EdgeMatrixFreePreconditioner.
Epetra_CrsMatrix::LowerTriangular
bool LowerTriangular() const
ML_Epetra::ML_RMP::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Returns the Epetra_Map object associated with the range of this operator.
Definition: ml_RefMaxwell.h:165
ML_Operator2EpetraCrsMatrix
int ML_Operator2EpetraCrsMatrix(ML_Operator *Ke, Epetra_CrsMatrix *&CrsMatrix, int &MaxNumNonzeros, bool CheckNonzeroRow, double &, int base=0, bool verbose=false)
Converts an ML_Operator into an Epetra_CrsMatrix.
Epetra_CrsMatrix::NumMyNonzeros
int NumMyNonzeros() const
MLAPI::MultiLevelAdaptiveSA::S
InverseOperator & S(const int i)
Returns a reference to the inverse operator of level i.
Definition: MLAPI_MultiLevelAdaptiveSA.h:180
ml_epetra_utils.h
Interface to the Trilinos package Anasazi.
MLAPI::LoadBalanceInverseOperator::RCPRowMatrix
const Teuchos::RCP< Epetra_RowMatrix > RCPRowMatrix() const
Returns pointer of the internally stored ML_Epetra::RowMatrix object.
Epetra_CrsMatrix::OperatorRangeMap
const Epetra_Map & OperatorRangeMap() const
Epetra_VbrMatrix
ML_Epetra::MultiLevelOperator::SetUseTranspose
int SetUseTranspose(bool UseTrans)
If set true, transpose of this operator will be applied.
Definition: ml_MultiLevelOperator.h:109
Epetra_Operator
MLAPI::LoadBalanceInverseOperator::Apply
int Apply(const MultiVector &x, MultiVector &y) const
Applies this object to vector lhs, returns values in rhs.
ML_Epetra::CrsGraphWrapper::Multiply
int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:161
MLAPI::TimeObject::TotalTime_
double TotalTime_
Internal counter.
Definition: MLAPI_TimeObject.h:69
Epetra_Operator::OperatorDomainMap
virtual const Epetra_Map & OperatorDomainMap() const=0
ML_Epetra::SetDefaultsRefMaxwell
int SetDefaultsRefMaxwell(Teuchos::ParameterList &inList, bool OverWrite=true)
Sets default parameters for aggregation-based 2-level domain decomposition preconditioners.
ML_Epetra::RowMatrix::NumMyNonzeros
virtual int NumMyNonzeros() const
Returns the number of nonzero entries in the calling processor's portion of the matrix.
Epetra_CrsGraph::NumMyNonzeros
int NumMyNonzeros() const
Epetra_Export
ML_Epetra::EdgeMatrixFreePreconditioner::Complexities
void Complexities(double &complexity, double &fineNnz)
Return operator complexity and #nonzeros in fine grid matrix.
ML_Epetra::CrsGraphWrapper::CrsGraphWrapper
CrsGraphWrapper(const Epetra_CrsGraph &graph, const Epetra_Map &dm, const Epetra_Map &rm, const Epetra_Comm &comm)
Constructs a CrsGraphWrapper class.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:79
Epetra_CrsMatrix::ExtractCrsDataPointers
int ExtractCrsDataPointers(int *&IndexOffset, int *&Indices, double *&Values_in) const
Epetra_SerialDenseMatrix
MLAPI::LoadBalanceInverseOperator::GetParticipation
virtual bool GetParticipation() const
Returns a bool indicating whether this proc participates in the operator application.
Definition: MLAPI_LoadBalanceInverseOperator.h:82
Epetra_Map
ML_Epetra::RowMatrix::UseTranspose
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: ml_RowMatrix.h:304
MLAPI::ML_Operator_Box::ML_Operator_Box
ML_Operator_Box(ML_Operator *Op, bool Ownership=true)
Constructor.
Definition: MLAPI_Operator_Box.h:36
MLAPI::InverseOperator::GetOperator
const Operator & GetOperator() const
Returns a reference to the Operator of which this object defines the inverse.
MLAPI::Operator::BuildColumnSpace
void BuildColumnSpace()
Build the column space, by computing the GID of all local columns.
Definition: MLAPI_Operator.h:426
MLAPI::Residual
Definition: MLAPI_LinearCombinations.h:215
ML_Struct::func
int(* func)(void)
Definition: ml_struct.h:116
Epetra_CrsMatrix::NormInf
double NormInf() const
ML_Node_Struct
Definition: ml_aggregate.h:133
MLAPI::LoadBalanceOperator::GetML_Operator
ML_Operator * GetML_Operator() const
Returns the RefCountPtr of OperatorBox_.
Definition: MLAPI_LoadBalanceOperator.h:290
ML_Epetra::MultiLevelPreconditioner::PrintList
void PrintList()
Prints on std::cout the values of the internally stored parameter list.
Definition: ml_MultiLevelPreconditioner.cpp:2803
MLAPI::MultiLevelSA::R
const Operator & R(const int i) const
Returns a reference to the restriction operator of level i.
Definition: MLAPI_MultiLevelSA.h:95
ML_Aggregate_Struct::num_PDE_eqns
int num_PDE_eqns
Definition: ml_aggregate.h:61
ML_Epetra::Ifpack_ML::SetUseTranspose
int SetUseTranspose(bool useTranspose)
Sets the use of transpose (NOT SUPPORTED)
Definition: ml_Ifpack_ML.h:196
ML_Epetra::ModifyEpetraMatrixColMap
Epetra_RowMatrix * ModifyEpetraMatrixColMap(const Epetra_RowMatrix &A, EpetraExt::CrsMatrix_SolverMap &transform, const char *matrixName=0, bool verbose=false)
Transforms Epetra matrix column map (if necessary) to be compatible with.
ML_Epetra::ML_RefMaxwell_11_Operator::NormInf
virtual double NormInf() const
Returns the infinity norm (not implemented).
Definition: ml_RefMaxwell_11_Operator.h:109
ML_Epetra::EdgeMatrixFreePreconditioner::DestroyPreconditioner
int DestroyPreconditioner()
Destroys all structures allocated in ComputePreconditioner() if the preconditioner has been computed.
MLAPI::MultiLevelAdaptiveSA::GetNumPDEEqns
int GetNumPDEEqns()
Sets the number of PDE equations on the current level.
Definition: MLAPI_MultiLevelAdaptiveSA.h:252
ML_Epetra::RowMatrix::Comm
const Epetra_Comm & Comm() const
Returns a pointer to the Epetra_Comm communicator associated with this operator.
Definition: ml_RowMatrix.h:310
ml_anasazi.h
Interface to the Trilinos package Anasazi.
ML_Epetra::MultiLevelOperator
MultiLevelOperator: An implementation of the Epetra_Operator class.
Definition: ml_MultiLevelOperator.h:55
ML_Epetra::CrsGraphWrapper::ExtractDiagonalCopy
int ExtractDiagonalCopy(Epetra_Vector &Diagonal) const
not implemented, method will throw error and terminate execution.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:150
ML_Epetra::RowMatrix::NumMyDiagonals
virtual int NumMyDiagonals() const
Returns the number of local nonzero diagonal entries, based on global row/column index comparisons.
MLAPI::BaseOperator::GetOperatorRangeSpace
virtual const Space GetOperatorRangeSpace() const =0
Returns a copy of the range space of this object.
MLAPI::LoadBalanceOperator::Apply
int Apply(const MultiVector &X, MultiVector &Y) const
Applies this operator to LHS, returns the result in RHS.
Definition: MLAPI_LoadBalanceOperator.h:337
ML_Epetra::RowMatrix::NumMyCols
virtual int NumMyCols() const
Returns the number of matrix columns owned by the calling processor.
ML_Epetra::RowMatrix::NumGlobalDiagonals
virtual int NumGlobalDiagonals() const
Returns the number of global nonzero diagonal entries, based on global row/column index comparisons.
Epetra_RowMatrix::Multiply
virtual int Multiply(bool TransA, const Epetra_MultiVector &X, Epetra_MultiVector &Y) const=0
Epetra_CrsMatrix::Multiply
int Multiply(bool TransA, const Epetra_Vector &x, Epetra_Vector &y) const
ML_Epetra::MultiLevelPreconditioner::NumMyRows
int NumMyRows() const
Returns the local number of rows in the matrix.
Definition: ml_MultiLevelPreconditioner.h:549
ML_Epetra::Ifpack_ML::~Ifpack_ML
virtual ~Ifpack_ML()
Destructor.
Definition: ml_Ifpack_ML.h:53
MLAPI_Workspace.h
Collection of utilities for workspace.
MLAPI::MultiLevelAdaptiveSA::GetRangeSpace
const Space GetRangeSpace() const
Returns a copy of the internally stored range space.
Definition: MLAPI_MultiLevelAdaptiveSA.h:138
ML_Epetra::SetDefaultsDD_3Levels
int SetDefaultsDD_3Levels(Teuchos::ParameterList &List, Teuchos::RCP< std::vector< int > > &options, Teuchos::RCP< std::vector< double > > &params, bool Overwrite=true)
Sets default parameters for aggregation-based 3-level domain decomposition preconditioners.
Epetra_CrsMatrix::NormOne
double NormOne() const
Epetra_Comm::MyPID
virtual int MyPID() const=0
MLAPI::InverseOperator::~InverseOperator
~InverseOperator()
Destructor.
Definition: MLAPI_InverseOperator.h:65
MLAPI::LinearCombinationScaled::GetVectorSpace
const Space GetVectorSpace() const
Returns the vector space of the underlying object.
ML_Epetra::Ifpack_ML::NormInf
double NormInf() const
Returns the norm inf (NOT SUPPORTED)
Definition: ml_Ifpack_ML.h:211
ML_Epetra::FindLocalDiricheltRowsFromOnesAndZeros
int * FindLocalDiricheltRowsFromOnesAndZeros(const Epetra_CrsMatrix &Matrix, int &numBCRows)
Finds the Dirichlet rows in a square matrix that got the one-and-zeros.
ML_Epetra::MultiLevelPreconditioner::OperatorDomainMap
const Epetra_Map & OperatorDomainMap() const
Returns the Epetra_Map object associated with the domain of this operator.
Definition: ml_MultiLevelPreconditioner.h:515
MLAPI::LoadBalanceInverseOperator::operator=
LoadBalanceInverseOperator & operator=(const LoadBalanceInverseOperator &RHS)
Operator =.
MLAPI::MaxEigPowerMethod
double MaxEigPowerMethod(const Operator &Op, const bool DiagonalScaling=false)
Computes the maximum eigenvalue of Op using the power method.
Epetra_VbrMatrix::PutScalar
int PutScalar(double ScalarConstant)
Epetra_Import
MLAPI::LoadBalanceOperator::GetOperatorDomainSpace
const Space GetOperatorDomainSpace() const
Returns a reference to the internally stored domain space.
Definition: MLAPI_LoadBalanceOperator.h:217
Epetra_CrsGraph::RowMap
const Epetra_BlockMap & RowMap() const
ML_Aggregate_Struct::cur_level
int cur_level
Definition: ml_aggregate.h:72
ML_Epetra::CrsGraphWrapper::NumGlobalNonzeros
long long NumGlobalNonzeros() const
Returns the number of nonzero entries in the global matrix.
Definition: ml_Epetra_wrap_CrsGraph_as_RowMatrix.H:235
MLAPI::BaseOperator::Apply
virtual int Apply(const MultiVector &LHS, MultiVector &RHS) const =0
Applies the operator to X, using Y as starting solution. Returns the solution in Y.
ML_Epetra::MatrixFreePreconditioner::MyPID
int MyPID() const
Returns the PID of the calling processor.
Definition: ml_MatrixFreePreconditioner.h:163
Epetra_MultiVector::NumVectors
int NumVectors() const
Epetra_CrsMatrix_Wrap_ML_Operator
void Epetra_CrsMatrix_Wrap_ML_Operator(ML_Operator *A, const Epetra_Comm &Comm, const Epetra_Map &RowMap, Epetra_CrsMatrix **Result, Epetra_DataAccess CV=::View, int base=0)
Wraps a ML_Operator into a Epetra_CrsMatrix.
MLAPI::Operator::Reshape
void Reshape(const Space &DomainSpace, const Space &RangeSpace, Epetra_RowMatrix *Matrix, bool Ownership=true, Teuchos::RefCountPtr< ML_Operator_Box > AuxOp=Teuchos::null)
Reshape with given already FillComplete()'d object.
Definition: MLAPI_Operator.h:127
ML_Epetra::MultiLevelOperator::ApplyInverse
int ApplyInverse(const Epetra_MultiVector &X, Epetra_MultiVector &Y) const
Returns the result of a Operator inverse applied to an Epetra_MultiVector X in Y.
MLAPI::ReadSAMISMatrix
void ReadSAMISMatrix(const char *filen, Operator &A, int &NumPDEEqns)
Reads symmetric matrix from SAMIS binary format.
Epetra_FECrsMatrix::SumIntoGlobalValues
int SumIntoGlobalValues(int GlobalRow, int NumEntries, const double *Values, const int *Indices)
ML_Smoother_Clean_Ifpack
void ML_Smoother_Clean_Ifpack(void *Ifpack_Handle)
MultiLevelPreconditioner
ML black-box preconditioner for Epetra_RowMatrix derived classes.
MLAPI::Space::GetRCPMyGlobalElements
const Teuchos::RefCountPtr< Epetra_IntSerialDenseVector > GetRCPMyGlobalElements() const
Returns a pointer to the list of global nodes.
Definition: MLAPI_Space.h:272
MLAPI::InverseOperator::GetOperatorDomainSpace
const Space GetOperatorDomainSpace() const
Returns a reference to the domain space of this object.
MLAPI::EpetraBaseOperator::Comm
virtual const Epetra_Comm & Comm() const
Returns a reference to the communicator object.
Definition: MLAPI_EpetraBaseOperator.h:129
Epetra_MultiVector::Update
int Update(double ScalarA, const Epetra_MultiVector &A, double ScalarThis)
ML_Epetra::MultiLevelOperator::UseTranspose
bool UseTranspose() const
Returns the current UseTranspose setting.
Definition: ml_MultiLevelOperator.h:163
MLAPI::GetNumProcs
int GetNumProcs()
Returns the total number of processes in the computation.
ML_Epetra::MultiLevelPreconditioner::DestroyPreconditioner
int DestroyPreconditioner()
Destroys all structures allocated in ComputePreconditioner() if the preconditioner has been computed.
Definition: ml_MultiLevelPreconditioner.cpp:101