Ifpack Package Browser (Single Doxygen Collection)  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
Ifpack_Utils.cpp File Reference
#include "Ifpack_ConfigDefs.h"
#include "Ifpack_Preconditioner.h"
#include "Ifpack_Utils.h"
#include "Epetra_Comm.h"
#include "Epetra_CrsMatrix.h"
#include "Epetra_CrsGraph.h"
#include "Epetra_Map.h"
#include "Epetra_BlockMap.h"
#include "Epetra_Import.h"
#include "Epetra_MultiVector.h"
#include "Epetra_Vector.h"
#include <iomanip>
#include "limits.h"
#include "float.h"
#include "Epetra_FECrsMatrix.h"
Include dependency graph for Ifpack_Utils.cpp:

Go to the source code of this file.

Functions

void Ifpack_PrintLine ()
 Prints a line of `=' on cout. More...
 
void Ifpack_BreakForDebugger (Epetra_Comm &Comm)
 Stops the execution of code, so that a debugger can be attached. More...
 
Epetra_CrsMatrixIfpack_CreateOverlappingCrsMatrix (const Epetra_RowMatrix *Matrix, const int OverlappingLevel)
 Creates an overlapping Epetra_CrsMatrix. Returns 0 if OverlappingLevel is 0. More...
 
Epetra_CrsGraphIfpack_CreateOverlappingCrsMatrix (const Epetra_CrsGraph *Graph, const int OverlappingLevel)
 Creates an overlapping Epetra_CrsGraph. Returns 0 if OverlappingLevel is 0. More...
 
std::string Ifpack_toString (const int &x)
 Converts an integer to std::string. More...
 
std::string Ifpack_toString (const double &x)
 Converts a double to std::string. More...
 
int Ifpack_PrintResidual (char *Label, const Epetra_RowMatrix &A, const Epetra_MultiVector &X, const Epetra_MultiVector &Y)
 Prints on cout the true residual. More...
 
int Ifpack_PrintResidual (const int iter, const Epetra_RowMatrix &A, const Epetra_MultiVector &X, const Epetra_MultiVector &Y)
 
void Ifpack_PrintSparsity_Simple (const Epetra_RowMatrix &A)
 
double Ifpack_FrobeniusNorm (const Epetra_RowMatrix &A)
 
static void print ()
 
template<class T >
static void print (const char str[], T val)
 
template<class T >
static void print (const char str[], T val, double percentage)
 
template<class T >
static void print (const char str[], T one, T two, T three, bool equal=true)
 
int Ifpack_Analyze (const Epetra_RowMatrix &A, const bool Cheap, const int NumPDEEqns)
 Analyzes the basic properties of the input matrix A; see ifp_analyze. More...
 
int Ifpack_AnalyzeVectorElements (const Epetra_Vector &Diagonal, const bool abs, const int steps)
 Analyzes the distribution of values of the input vector Diagonal. More...
 
int Ifpack_AnalyzeMatrixElements (const Epetra_RowMatrix &A, const bool abs, const int steps)
 Analyzes the distribution of values of the input matrix A. More...
 
int Ifpack_PrintSparsity (const Epetra_RowMatrix &A, const char *InputFileName, const int NumPDEEqns)
 

Function Documentation

void Ifpack_PrintLine ( )

Prints a line of `=' on cout.

Definition at line 55 of file Ifpack_Utils.cpp.

void Ifpack_BreakForDebugger ( Epetra_Comm Comm)

Stops the execution of code, so that a debugger can be attached.

Definition at line 61 of file Ifpack_Utils.cpp.

Epetra_CrsMatrix* Ifpack_CreateOverlappingCrsMatrix ( const Epetra_RowMatrix Matrix,
const int  OverlappingLevel 
)

Creates an overlapping Epetra_CrsMatrix. Returns 0 if OverlappingLevel is 0.

Definition at line 102 of file Ifpack_Utils.cpp.

Epetra_CrsGraph* Ifpack_CreateOverlappingCrsMatrix ( const Epetra_CrsGraph Graph,
const int  OverlappingLevel 
)

Creates an overlapping Epetra_CrsGraph. Returns 0 if OverlappingLevel is 0.

Definition at line 182 of file Ifpack_Utils.cpp.

std::string Ifpack_toString ( const int &  x)

Converts an integer to std::string.

Definition at line 242 of file Ifpack_Utils.cpp.

std::string Ifpack_toString ( const double &  x)

Converts a double to std::string.

Definition at line 250 of file Ifpack_Utils.cpp.

int Ifpack_PrintResidual ( char *  Label,
const Epetra_RowMatrix A,
const Epetra_MultiVector X,
const Epetra_MultiVector Y 
)

Prints on cout the true residual.

Definition at line 258 of file Ifpack_Utils.cpp.

int Ifpack_PrintResidual ( const int  iter,
const Epetra_RowMatrix A,
const Epetra_MultiVector X,
const Epetra_MultiVector Y 
)

Definition at line 273 of file Ifpack_Utils.cpp.

void Ifpack_PrintSparsity_Simple ( const Epetra_RowMatrix A)

Definition at line 299 of file Ifpack_Utils.cpp.

double Ifpack_FrobeniusNorm ( const Epetra_RowMatrix A)

Definition at line 346 of file Ifpack_Utils.cpp.

static void print ( )
static

Definition at line 369 of file Ifpack_Utils.cpp.

template<class T >
static void print ( const char  str[],
val 
)
static

Definition at line 376 of file Ifpack_Utils.cpp.

template<class T >
static void print ( const char  str[],
val,
double  percentage 
)
static

Definition at line 384 of file Ifpack_Utils.cpp.

template<class T >
static void print ( const char  str[],
one,
two,
three,
bool  equal = true 
)
static

Definition at line 394 of file Ifpack_Utils.cpp.

int Ifpack_Analyze ( const Epetra_RowMatrix A,
const bool  Cheap,
const int  NumPDEEqns 
)

Analyzes the basic properties of the input matrix A; see ifp_analyze.

Definition at line 418 of file Ifpack_Utils.cpp.

int Ifpack_AnalyzeVectorElements ( const Epetra_Vector Diagonal,
const bool  abs = false,
const int  steps = 10 
)

Analyzes the distribution of values of the input vector Diagonal.

Parameters
Diagonal- (In) Vector to be analyzed.
abs- (In) if true, the function will analyze vector B, whose elements are defined as $ B_{i} = | D_{i}| $.
steps- (In) number of intervals for the analysis.

An example of output is reported ifp_vector.

Definition at line 841 of file Ifpack_Utils.cpp.

int Ifpack_AnalyzeMatrixElements ( const Epetra_RowMatrix A,
const bool  abs = false,
const int  steps = 10 
)

Analyzes the distribution of values of the input matrix A.

Parameters
A- (In) matrix to be analyzed.
abs- (In) if true, the function will analyze matrix B, whose elements are defined as $ B_{i,i} = | A_{i,i}| $.
steps- (In) number of intervals for the analysis.

An example of output is reported ifp_matrix.

Definition at line 900 of file Ifpack_Utils.cpp.

int Ifpack_PrintSparsity ( const Epetra_RowMatrix A,
const char *  InputFileName,
const int  NumPDEEqns 
)

Definition at line 975 of file Ifpack_Utils.cpp.