TriUtils
Development
|
#include <Trilinos_Util_CrsMatrixGallery.h>
Public Member Functions | |
VbrMatrixGallery (const std::string name, const Epetra_Map &map) | |
VbrMatrixGallery (const std::string name, const Epetra_Comm &Comm, bool UseLongLong=false) | |
~VbrMatrixGallery () | |
const Epetra_BlockMap * | GetBlockMap () |
Returns a pointer the internally stored BlockMap. More... | |
const Epetra_BlockMap & | GetBlockMapRef () |
Epetra_VbrMatrix * | GetVbrMatrix (const int NumPDEEqns) |
Returns a VbrMatrix, starting from the CsrMatrix. More... | |
Epetra_VbrMatrix * | GetVbrMatrix () |
Returns a VbrMatrix, starting from the CsrMatrix. More... | |
Epetra_VbrMatrix & | GetVbrMatrixRef () |
Epetra_MultiVector * | GetVbrRHS () |
Returns a pointer to the RHS for the selected Vbr exact solution. More... | |
Epetra_MultiVector * | GetVbrExactSolution () |
Returns a pointer to the selected Vbr exact solution. More... | |
Epetra_MultiVector * | GetVbrStartingSolution () |
Returns a pointer to the starting solution for Vbr problems. More... | |
void | CreateVbrMatrix (void) |
template<typename int_type > | |
void | TCreateVbrMatrix (void) |
Epetra_LinearProblem * | GetVbrLinearProblem () |
Returns a pointer to Epetra_LinearProblem for VBR. More... | |
void | ComputeResidualVbr (double *residual) |
Computes the 2-norm of the residual for the VBR problem. More... | |
void | ComputeDiffBetweenStartingAndExactSolutionsVbr (double *residual) |
Computes the 2-norm of the difference between the starting solution and the exact solution for the VBR problem. More... | |
void | PrintVbrMatrixAndVectors (std::ostream &os) |
Print out Vbr matrix and vectors. More... | |
void | PrintVbrMatrixAndVectors () |
![]() | |
CrsMatrixGallery (const std::string name, const Epetra_Comm &comm, bool UseLongLong=false) | |
Triutils_Gallery Constructor. More... | |
CrsMatrixGallery (const std::string name, const Epetra_Map &map) | |
Creates an Triutils_Gallery object using a given map. More... | |
~CrsMatrixGallery () | |
Triutils_Gallery destructor. More... | |
int | Set (const std::string parameter, const int value) |
Sets a gallery options using an interger value. More... | |
int | Set (const std::string parameter, const std::string value) |
Sets a gallery options using a C++ string . More... | |
int | Set (const std::string parameter, const double value) |
Sets a gallery options using an double value. More... | |
int | Set (const std::string parameter, const Epetra_Vector &value) |
Sets a gallery options using an Epetra_Vector. More... | |
int | Set (Trilinos_Util::CommandLineParser &CLP) |
Sets gallery options using values passed from the shell. More... | |
Epetra_CrsMatrix * | GetMatrix () |
Returns a pointer to the CrsMatrix. More... | |
Epetra_CrsMatrix & | GetMatrixRef () |
Epetra_MultiVector * | GetExactSolution () |
Returns a pointer to the exact solution. More... | |
Epetra_MultiVector * | GetStartingSolution () |
Returns a pointer to the starting solution (typically, for HB problems). More... | |
Epetra_MultiVector * | GetRHS () |
Returns a pointer to the rhs corresponding to the selected exact solution. More... | |
const Epetra_Map * | GetMap () |
Returns a pointer the internally stored Map. More... | |
const Epetra_Map & | GetMapRef () |
Epetra_LinearProblem * | GetLinearProblem () |
Returns a pointer to Epetra_LinearProblem. More... | |
void | ComputeResidual (double *residual) |
Computes the 2-norm of the residual. More... | |
void | ComputeDiffBetweenStartingAndExactSolutions (double *residual) |
Computes the 2-norm of the difference between the starting solution and the exact solution. More... | |
void | PrintMatrixAndVectors (std::ostream &os) |
Print out matrix and vectors. More... | |
void | PrintMatrixAndVectors () |
void | GetCartesianCoordinates (double *&x, double *&y, double *&z) |
Get pointers to double vectors containing coordinates of points. More... | |
int | WriteMatrix (const std::string &FileName, const bool UseSparse=true) |
Print matrix on file in MATLAB format. More... | |
Protected Member Functions | |
void | CreateBlockMap (void) |
template<typename int_type > | |
void | TCreateBlockMap (void) |
void | CreateVbrExactSolution (void) |
Creates the exact solution for a Epetra_VbrMatrix. More... | |
void | CreateVbrStartingSolution () |
Creates the starting solution for Vbr. More... | |
void | CreateVbrRHS () |
Create the RHS corresponding to the desired exact solution for the Vbr problem. More... | |
![]() | |
template<typename int_type > | |
int_type *& | MyGlobalElementsPtr () |
template<typename int_type > | |
std::vector< int_type > & | MapMapRef () |
template<> | |
long long *& | MyGlobalElementsPtr () |
template<> | |
std::vector< long long > & | MapMapRef () |
template<> | |
int *& | MyGlobalElementsPtr () |
template<> | |
std::vector< int > & | MapMapRef () |
void | CreateMap () |
Creates a map. More... | |
template<typename int_type > | |
void | TCreateMap () |
void | CreateMatrix () |
Creates the CrdMatrix. More... | |
template<typename int_type > | |
void | TCreateMatrix () |
template<typename int_type > | |
void | TCreateExactSolution () |
Creates the exact solution. More... | |
void | CreateExactSolution () |
void | CreateStartingSolution () |
Creates the starting solution. More... | |
template<typename int_type > | |
void | TCreateRHS () |
Create the RHS corresponding to the desired exact solution. More... | |
void | CreateRHS () |
template<typename int_type > | |
void | CreateEye () |
template<typename int_type > | |
void | CreateMatrixDiag () |
template<typename int_type > | |
void | CreateMatrixTriDiag () |
template<typename int_type > | |
void | CreateMatrixLaplace1d () |
template<typename int_type > | |
void | CreateMatrixLaplace1dNeumann () |
template<typename int_type > | |
void | CreateMatrixCrossStencil2d () |
template<typename int_type > | |
void | CreateMatrixCrossStencil2dVector () |
template<typename int_type > | |
void | CreateMatrixLaplace2d () |
template<typename int_type > | |
void | CreateMatrixLaplace2d_BC () |
template<typename int_type > | |
void | CreateMatrixLaplace2d_9pt () |
template<typename int_type > | |
void | CreateMatrixStretched2d () |
template<typename int_type > | |
void | CreateMatrixRecirc2d () |
template<typename int_type > | |
void | CreateMatrixRecirc2dDivFree () |
template<typename int_type > | |
void | CreateMatrixLaplace2dNeumann () |
template<typename int_type > | |
void | CreateMatrixUniFlow2d () |
template<typename int_type > | |
void | CreateMatrixLaplace3d () |
template<typename int_type > | |
void | CreateMatrixCrossStencil3d () |
template<typename int_type > | |
void | CreateMatrixCrossStencil3dVector () |
template<typename int_type > | |
void | CreateMatrixLehmer () |
template<typename int_type > | |
void | CreateMatrixMinij () |
template<typename int_type > | |
void | CreateMatrixRis () |
template<typename int_type > | |
void | CreateMatrixHilbert () |
template<typename int_type > | |
void | CreateMatrixJordblock () |
template<typename int_type > | |
void | CreateMatrixCauchy () |
template<typename int_type > | |
void | CreateMatrixFiedler () |
template<typename int_type > | |
void | CreateMatrixHanowa () |
template<typename int_type > | |
void | CreateMatrixKMS () |
template<typename int_type > | |
void | CreateMatrixParter () |
template<typename int_type > | |
void | CreateMatrixPei () |
template<typename int_type > | |
void | CreateMatrixOnes () |
template<typename int_type > | |
void | CreateMatrixVander () |
template<typename int_type > | |
void | TReadMatrix () |
void | GetNeighboursCartesian2d (const int i, const int nx, const int ny, int &left, int &right, int &lower, int &upper) |
void | GetNeighboursCartesian3d (const int i, const int nx, const int ny, const int nz, int &left, int &right, int &lower, int &upper, int &below, int &above) |
template<typename int_type > | |
void | TGetCartesianCoordinates (double *&x, double *&y, double *&z) |
void | ZeroOutData () |
void | SetupCartesianGrid2D () |
void | SetupCartesianGrid3D () |
void | ExactSolQuadXY (double x, double y, double &u) |
void | ExactSolQuadXY (double x, double y, double &u, double &ux, double &uy, double &uxx, double &uyy) |
|
inline |
|
inline |
Trilinos_Util::VbrMatrixGallery::~VbrMatrixGallery | ( | ) |
void Trilinos_Util::VbrMatrixGallery::ComputeDiffBetweenStartingAndExactSolutionsVbr | ( | double * | residual | ) |
Computes the 2-norm of the difference between the starting solution and the exact solution for the VBR problem.
void Trilinos_Util::VbrMatrixGallery::ComputeResidualVbr | ( | double * | residual | ) |
Computes the 2-norm of the residual for the VBR problem.
|
protected |
|
protected |
Creates the exact solution for a Epetra_VbrMatrix.
void Trilinos_Util::VbrMatrixGallery::CreateVbrMatrix | ( | void | ) |
|
protected |
Create the RHS corresponding to the desired exact solution for the Vbr problem.
|
protected |
Creates the starting solution for Vbr.
const Epetra_BlockMap * Trilinos_Util::VbrMatrixGallery::GetBlockMap | ( | void | ) |
Returns a pointer the internally stored BlockMap.
const Epetra_BlockMap & Trilinos_Util::VbrMatrixGallery::GetBlockMapRef | ( | void | ) |
Epetra_MultiVector * Trilinos_Util::VbrMatrixGallery::GetVbrExactSolution | ( | void | ) |
Returns a pointer to the selected Vbr exact solution.
Epetra_LinearProblem * Trilinos_Util::VbrMatrixGallery::GetVbrLinearProblem | ( | void | ) |
Returns a pointer to Epetra_LinearProblem for VBR.
Epetra_VbrMatrix * Trilinos_Util::VbrMatrixGallery::GetVbrMatrix | ( | const int | NumPDEEqns | ) |
Returns a VbrMatrix, starting from the CsrMatrix.
Returns a VbrMatrix, starting from the CsrMatrix. This vbr matrix is formally equivalent to the CrsMatrix returned by GetMatrix(). However, each node of the CrsMatrix is replicated num_PDE_eqns times (this value is passed in input, or set via Set("num pde eqns",IntValue)).
Epetra_VbrMatrix * Trilinos_Util::VbrMatrixGallery::GetVbrMatrix | ( | void | ) |
Returns a VbrMatrix, starting from the CsrMatrix.
Epetra_VbrMatrix & Trilinos_Util::VbrMatrixGallery::GetVbrMatrixRef | ( | void | ) |
Epetra_MultiVector * Trilinos_Util::VbrMatrixGallery::GetVbrRHS | ( | void | ) |
Returns a pointer to the RHS for the selected Vbr exact solution.
Returns a pointer to the RHS corresponding to the selected exact solution to the linear systems defined by the Epetra_VbrMatrix.
Epetra_MultiVector * Trilinos_Util::VbrMatrixGallery::GetVbrStartingSolution | ( | void | ) |
Returns a pointer to the starting solution for Vbr problems.
void Trilinos_Util::VbrMatrixGallery::PrintVbrMatrixAndVectors | ( | std::ostream & | os | ) |
Print out Vbr matrix and vectors.
void Trilinos_Util::VbrMatrixGallery::PrintVbrMatrixAndVectors | ( | ) |
|
protected |
References Epetra_Time::ElapsedTime().
void Trilinos_Util::VbrMatrixGallery::TCreateVbrMatrix | ( | void | ) |
References Copy, Epetra_Util::RandomDouble(), TEUCHOS_ASSERT, and TEUCHOS_TEST_FOR_EXCEPT_MSG.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |