|
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. | |
| const Epetra_BlockMap & | GetBlockMapRef () |
| Epetra_VbrMatrix * | GetVbrMatrix (const int NumPDEEqns) |
| Returns a VbrMatrix, starting from the CsrMatrix. | |
| Epetra_VbrMatrix * | GetVbrMatrix () |
| Returns a VbrMatrix, starting from the CsrMatrix. | |
| Epetra_VbrMatrix & | GetVbrMatrixRef () |
| Epetra_MultiVector * | GetVbrRHS () |
| Returns a pointer to the RHS for the selected Vbr exact solution. | |
| Epetra_MultiVector * | GetVbrExactSolution () |
| Returns a pointer to the selected Vbr exact solution. | |
| Epetra_MultiVector * | GetVbrStartingSolution () |
| Returns a pointer to the starting solution for Vbr problems. | |
| void | CreateVbrMatrix (void) |
| template<typename int_type> | |
| void | TCreateVbrMatrix (void) |
| Epetra_LinearProblem * | GetVbrLinearProblem () |
| Returns a pointer to Epetra_LinearProblem for VBR. | |
| void | ComputeResidualVbr (double *residual) |
| Computes the 2-norm of the residual for the VBR problem. | |
| void | ComputeDiffBetweenStartingAndExactSolutionsVbr (double *residual) |
| Computes the 2-norm of the difference between the starting solution and the exact solution for the VBR problem. | |
| void | PrintVbrMatrixAndVectors (std::ostream &os) |
| Print out Vbr matrix and vectors. | |
| void | PrintVbrMatrixAndVectors () |
| Public Member Functions inherited from Trilinos_Util::CrsMatrixGallery | |
| CrsMatrixGallery (const std::string name, const Epetra_Comm &comm, bool UseLongLong=false) | |
| Triutils_Gallery Constructor. | |
| CrsMatrixGallery (const std::string name, const Epetra_Map &map) | |
| Creates an Triutils_Gallery object using a given map. | |
| ~CrsMatrixGallery () | |
| Triutils_Gallery destructor. | |
| int | Set (const std::string parameter, const int value) |
| Sets a gallery options using an interger value. | |
| int | Set (const std::string parameter, const std::string value) |
| Sets a gallery options using a C++ string . | |
| int | Set (const std::string parameter, const double value) |
| Sets a gallery options using an double value. | |
| int | Set (const std::string parameter, const Epetra_Vector &value) |
| Sets a gallery options using an Epetra_Vector. | |
| int | Set (Trilinos_Util::CommandLineParser &CLP) |
| Sets gallery options using values passed from the shell. | |
| Epetra_CrsMatrix * | GetMatrix () |
| Returns a pointer to the CrsMatrix. | |
| Epetra_CrsMatrix & | GetMatrixRef () |
| Epetra_MultiVector * | GetExactSolution () |
| Returns a pointer to the exact solution. | |
| Epetra_MultiVector * | GetStartingSolution () |
| Returns a pointer to the starting solution (typically, for HB problems). | |
| Epetra_MultiVector * | GetRHS () |
| Returns a pointer to the rhs corresponding to the selected exact solution. | |
| const Epetra_Map * | GetMap () |
| Returns a pointer the internally stored Map. | |
| const Epetra_Map & | GetMapRef () |
| Epetra_LinearProblem * | GetLinearProblem () |
| Returns a pointer to Epetra_LinearProblem. | |
| void | ComputeResidual (double *residual) |
| Computes the 2-norm of the residual. | |
| void | ComputeDiffBetweenStartingAndExactSolutions (double *residual) |
| Computes the 2-norm of the difference between the starting solution and the exact solution. | |
| void | PrintMatrixAndVectors (std::ostream &os) |
| Print out matrix and vectors. | |
| void | PrintMatrixAndVectors () |
| void | GetCartesianCoordinates (double *&x, double *&y, double *&z) |
| Get pointers to double vectors containing coordinates of points. | |
| int | WriteMatrix (const std::string &FileName, const bool UseSparse=true) |
| Print matrix on file in MATLAB format. | |
Protected Member Functions | |
| void | CreateBlockMap (void) |
| template<typename int_type> | |
| void | TCreateBlockMap (void) |
| void | CreateVbrExactSolution (void) |
| Creates the exact solution for a Epetra_VbrMatrix. | |
| void | CreateVbrStartingSolution () |
| Creates the starting solution for Vbr. | |
| void | CreateVbrRHS () |
| Create the RHS corresponding to the desired exact solution for the Vbr problem. | |
| Protected Member Functions inherited from Trilinos_Util::CrsMatrixGallery | |
| void | CreateMap () |
| Creates a map. | |
| template<typename int_type> | |
| void | TCreateMap () |
| void | CreateMatrix () |
| Creates the CrdMatrix. | |
| template<typename int_type> | |
| void | TCreateMatrix () |
| template<typename int_type> | |
| void | TCreateExactSolution () |
| Creates the exact solution. | |
| void | CreateExactSolution () |
| void | CreateStartingSolution () |
| Creates the starting solution. | |
| template<typename int_type> | |
| void | TCreateRHS () |
| Create the RHS corresponding to the desired exact solution. | |
| 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) |
| 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 () |
|
inline |
|
inline |
| Trilinos_Util::VbrMatrixGallery::~VbrMatrixGallery | ( | ) |
References BlockMap_, VbrExactSolution_, VbrLinearProblem_, VbrMatrix_, VbrRhs_, and VbrStartingSolution_.
| 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.
References BlockMap_, CreateVbrRHS(), Epetra_MultiVector::Norm2(), Trilinos_Util::CrsMatrixGallery::NumVectors_, Epetra_MultiVector::Update(), VbrExactSolution_, VbrRhs_, and VbrStartingSolution_.
| void Trilinos_Util::VbrMatrixGallery::ComputeResidualVbr | ( | double * | residual | ) |
Computes the 2-norm of the residual for the VBR problem.
References BlockMap_, CreateVbrRHS(), Epetra_MultiVector::Norm2(), Trilinos_Util::CrsMatrixGallery::NumVectors_, Epetra_MultiVector::Update(), VbrMatrix_, VbrRhs_, and VbrStartingSolution_.
|
protected |
References TCreateBlockMap(), and Trilinos_Util::CrsMatrixGallery::UseLongLong_.
Referenced by CreateVbrExactSolution(), CreateVbrRHS(), CreateVbrStartingSolution(), GetBlockMap(), GetBlockMapRef(), and TCreateVbrMatrix().
|
protected |
Creates the exact solution for a Epetra_VbrMatrix.
References BlockMap_, CreateBlockMap(), Trilinos_Util::CrsMatrixGallery::CreateExactSolution(), Trilinos_Util::CrsMatrixGallery::ExactSolution_, Trilinos_Util::CrsMatrixGallery::NumMyElements_, Trilinos_Util::CrsMatrixGallery::NumPDEEqns_, Trilinos_Util::CrsMatrixGallery::NumVectors_, Trilinos_Util::CrsMatrixGallery::OutputMsg, VbrExactSolution_, and Trilinos_Util::CrsMatrixGallery::verbose_.
Referenced by CreateVbrRHS(), and GetVbrExactSolution().
| void Trilinos_Util::VbrMatrixGallery::CreateVbrMatrix | ( | void | ) |
References TCreateVbrMatrix(), and Trilinos_Util::CrsMatrixGallery::UseLongLong_.
Referenced by CreateVbrRHS(), GetVbrMatrix(), and GetVbrMatrixRef().
|
protected |
Create the RHS corresponding to the desired exact solution for the Vbr problem.
References BlockMap_, CreateBlockMap(), Trilinos_Util::CrsMatrixGallery::CreateRHS(), CreateVbrExactSolution(), CreateVbrMatrix(), Trilinos_Util::CrsMatrixGallery::NumVectors_, Trilinos_Util::CrsMatrixGallery::OutputMsg, Trilinos_Util::CrsMatrixGallery::rhs_, VbrExactSolution_, VbrMatrix_, VbrRhs_, and Trilinos_Util::CrsMatrixGallery::verbose_.
Referenced by ComputeDiffBetweenStartingAndExactSolutionsVbr(), ComputeResidualVbr(), and GetVbrRHS().
|
protected |
Creates the starting solution for Vbr.
References BlockMap_, CreateBlockMap(), Trilinos_Util::CrsMatrixGallery::CreateStartingSolution(), Trilinos_Util::CrsMatrixGallery::NumMyElements_, Trilinos_Util::CrsMatrixGallery::NumPDEEqns_, Trilinos_Util::CrsMatrixGallery::NumVectors_, Trilinos_Util::CrsMatrixGallery::OutputMsg, Trilinos_Util::CrsMatrixGallery::StartingSolution_, VbrStartingSolution_, and Trilinos_Util::CrsMatrixGallery::verbose_.
Referenced by GetVbrStartingSolution().
| const Epetra_BlockMap * Trilinos_Util::VbrMatrixGallery::GetBlockMap | ( | void | ) |
Returns a pointer the internally stored BlockMap.
References BlockMap_, and CreateBlockMap().
| const Epetra_BlockMap & Trilinos_Util::VbrMatrixGallery::GetBlockMapRef | ( | void | ) |
References BlockMap_, and CreateBlockMap().
| Epetra_MultiVector * Trilinos_Util::VbrMatrixGallery::GetVbrExactSolution | ( | void | ) |
Returns a pointer to the selected Vbr exact solution.
References CreateVbrExactSolution(), and VbrExactSolution_.
| Epetra_LinearProblem * Trilinos_Util::VbrMatrixGallery::GetVbrLinearProblem | ( | void | ) |
Returns a pointer to Epetra_LinearProblem for VBR.
References GetVbrMatrix(), GetVbrRHS(), GetVbrStartingSolution(), and VbrLinearProblem_.
| Epetra_VbrMatrix * Trilinos_Util::VbrMatrixGallery::GetVbrMatrix | ( | void | ) |
Returns a VbrMatrix, starting from the CsrMatrix.
References CreateVbrMatrix(), and VbrMatrix_.
| 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)).
References BlockMap_, GetVbrMatrix(), and Trilinos_Util::CrsMatrixGallery::NumPDEEqns_.
Referenced by GetVbrLinearProblem(), and GetVbrMatrix().
| Epetra_VbrMatrix & Trilinos_Util::VbrMatrixGallery::GetVbrMatrixRef | ( | void | ) |
References CreateVbrMatrix(), and VbrMatrix_.
| 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.
References CreateVbrRHS(), and VbrRhs_.
Referenced by GetVbrLinearProblem().
| Epetra_MultiVector * Trilinos_Util::VbrMatrixGallery::GetVbrStartingSolution | ( | void | ) |
Returns a pointer to the starting solution for Vbr problems.
References CreateVbrStartingSolution(), and VbrStartingSolution_.
Referenced by GetVbrLinearProblem().
| void Trilinos_Util::VbrMatrixGallery::PrintVbrMatrixAndVectors | ( | ) |
References PrintVbrMatrixAndVectors().
| void Trilinos_Util::VbrMatrixGallery::PrintVbrMatrixAndVectors | ( | std::ostream & | os | ) |
Print out Vbr matrix and vectors.
Referenced by PrintVbrMatrixAndVectors().
|
protected |
References BlockMap_, Trilinos_Util::CrsMatrixGallery::comm_, Trilinos_Util::CrsMatrixGallery::CreateMap(), Epetra_Time::ElapsedTime(), Trilinos_Util::CrsMatrixGallery::ErrorMsg, Trilinos_Util::CrsMatrixGallery::map_, MaxBlkSize_, Trilinos_Util::CrsMatrixGallery::MyGlobalElementsPtr(), Trilinos_Util::CrsMatrixGallery::NumGlobalElements_, Trilinos_Util::CrsMatrixGallery::NumMyElements_, Trilinos_Util::CrsMatrixGallery::NumPDEEqns_, Trilinos_Util::CrsMatrixGallery::OutputMsg, and Trilinos_Util::CrsMatrixGallery::verbose_.
Referenced by CreateBlockMap().
| void Trilinos_Util::VbrMatrixGallery::TCreateVbrMatrix | ( | void | ) |
References BlockMap_, CreateBlockMap(), Trilinos_Util::CrsMatrixGallery::CreateMatrix(), Trilinos_Util::CrsMatrixGallery::ErrorMsg, Trilinos_Util::CrsMatrixGallery::ExpandType_, Trilinos_Util::CrsMatrixGallery::matrix_, MaxBlkSize_, Trilinos_Util::CrsMatrixGallery::MyGlobalElementsPtr(), Trilinos_Util::CrsMatrixGallery::NumMyElements_, Trilinos_Util::CrsMatrixGallery::NumPDEEqns_, Trilinos_Util::CrsMatrixGallery::OutputMsg, Epetra_Util::RandomDouble(), TEUCHOS_ASSERT, VbrMatrix_, and Trilinos_Util::CrsMatrixGallery::verbose_.
Referenced by CreateVbrMatrix().
|
protected |
Referenced by ComputeDiffBetweenStartingAndExactSolutionsVbr(), ComputeResidualVbr(), CreateVbrExactSolution(), CreateVbrRHS(), CreateVbrStartingSolution(), GetBlockMap(), GetBlockMapRef(), GetVbrMatrix(), TCreateBlockMap(), TCreateVbrMatrix(), VbrMatrixGallery(), VbrMatrixGallery(), and ~VbrMatrixGallery().
|
protected |
Referenced by TCreateBlockMap(), TCreateVbrMatrix(), VbrMatrixGallery(), and VbrMatrixGallery().
|
protected |
|
protected |
Referenced by GetVbrLinearProblem(), VbrMatrixGallery(), VbrMatrixGallery(), and ~VbrMatrixGallery().
|
protected |
|
protected |
|
protected |