FEI Package Browser (Single Doxygen Collection)  Version of the Day
FEI_tester.hpp
Go to the documentation of this file.
1 /*--------------------------------------------------------------------*/
2 /* Copyright 2005 Sandia Corporation. */
3 /* Under the terms of Contract DE-AC04-94AL85000, there is a */
4 /* non-exclusive license for use of this work by or on behalf */
5 /* of the U.S. Government. Export of this program may require */
6 /* a license from the United States Government. */
7 /*--------------------------------------------------------------------*/
8 
9 #ifndef _FEI_tester_h_
10 #define _FEI_tester_h_
11 
12 #include <fei_macros.hpp>
13 #include <fei_SharedPtr.hpp>
14 #include <fei_defs.h>
15 
16 class LibraryWrapper;
17 class LinearSystemCore;
18 class FiniteElementData;
19 
20 #include <test_utils/feitester.hpp>
22 
23 #include <FEI_Implementation.hpp>
24 
25 class FEI_tester : public feitester {
26  public:
28  MPI_Comm comm, int localProc, int numProcs, bool useNewFEI=false);
29  ~FEI_tester();
30 
31  const char* getName()
32  {
33  static const char name[] = "FEI_tester";
34  return((const char*)name);
35  }
36 
37  int testInitialization();
38 
39  int testLoading();
40 
41  int testSolve();
42 
43  int testCheckResult();
44 
45  void dumpMatrixFiles();
46 
47  void setParameter(const char* param);
48 
49  private:
50  int createFEIinstance(const char* solverName);
51  int setIDlists();
52  int initializationPhase();
53  int normalLoadPhase();
54  int aggregateLoadPhase();
57 
59  const char* solnFileName, int numProcs,
60  int localProc, int solveCounter);
61 
63  const char* solnFileName,
64  int numProcs, int localProc, int solveCounter);
65 
67  const char* solnFileName,
68  int numProcs, int localProc, int solveCounter);
69 
70  int checkSolution(int localProc, int numProcs,
71  const char* solnFileName, const char* checkFileName,
72  const char* extension, int solveCounter);
73 
74  int lsc_matrix_check();
75 
77 
79 
81 
83 
85 
87  int* matrixIDs;
88  int numRHSs;
89  int* rhsIDs;
90  bool useNewFEI_;
91 };
92 
93 #endif // _FEI_tester_h_
FEI_tester::save_block_elem_soln
int save_block_elem_soln(DataReader &data, FEI &fei, const char *solnFileName, int numProcs, int localProc, int solveCounter)
Definition: FEI_tester.cpp:583
FEI_Implementation.hpp
FEI_tester::comm_
MPI_Comm comm_
Definition: FEI_tester.hpp:76
FEI_tester::wrapper_
fei::SharedPtr< LibraryWrapper > wrapper_
Definition: FEI_tester.hpp:80
FiniteElementData
Definition: fei_FiniteElementData.hpp:33
FEI_tester::testLoading
int testLoading()
Definition: FEI_tester.cpp:101
fei::SharedPtr< DataReader >
fei_macros.hpp
FEI_tester::initializationPhase
int initializationPhase()
Definition: FEI_tester.cpp:256
DataReader.hpp
FEI_tester::data_
fei::SharedPtr< DataReader > data_
Definition: FEI_tester.hpp:82
fei_SharedPtr.hpp
FEI_tester::useNewFEI_
bool useNewFEI_
Definition: FEI_tester.hpp:90
FEI_tester::dumpMatrixFiles
void dumpMatrixFiles()
Definition: FEI_tester.cpp:161
feitester
Definition: feitester.hpp:32
FEI
Definition: FEI.hpp:144
FEI_tester::testSolve
int testSolve()
Definition: FEI_tester.cpp:130
FEI_tester::normalLoadPhase
int normalLoadPhase()
Definition: FEI_tester.cpp:339
FEI_tester
Definition: FEI_tester.hpp:25
FEI_tester::localProc_
int localProc_
Definition: FEI_tester.hpp:84
FEI_tester::~FEI_tester
~FEI_tester()
Definition: FEI_tester.cpp:54
FEI_tester::rhsIDs
int * rhsIDs
Definition: FEI_tester.hpp:89
FEI_tester::lsc_matrix_check
int lsc_matrix_check()
Definition: FEI_tester.cpp:718
LibraryWrapper
Definition: fei_LibraryWrapper.hpp:18
FEI_tester::exerciseResidualNorm
int exerciseResidualNorm()
Definition: FEI_tester.cpp:476
FEI_tester::numRHSs
int numRHSs
Definition: FEI_tester.hpp:88
FEI_tester::setParameter
void setParameter(const char *param)
Definition: FEI_tester.cpp:166
feitester.hpp
FEI_tester::exercisePutFunctions
int exercisePutFunctions()
Definition: FEI_tester.cpp:502
FEI_tester::testCheckResult
int testCheckResult()
Definition: FEI_tester.cpp:171
FEI_tester::createFEIinstance
int createFEIinstance(const char *solverName)
Definition: FEI_tester.cpp:210
FEI_tester::FEI_tester
FEI_tester(fei::SharedPtr< DataReader > data_reader, MPI_Comm comm, int localProc, int numProcs, bool useNewFEI=false)
Definition: FEI_tester.cpp:37
FEI_tester::matrixIDs
int * matrixIDs
Definition: FEI_tester.hpp:87
FEI_tester::save_block_node_soln
int save_block_node_soln(DataReader &data, FEI &fei, const char *solnFileName, int numProcs, int localProc, int solveCounter)
Definition: FEI_tester.cpp:526
fei
Definition: fei_ArrayUtils.hpp:16
FEI_tester::checkSolution
int checkSolution(int localProc, int numProcs, const char *solnFileName, const char *checkFileName, const char *extension, int solveCounter)
fei_defs.h
FEI_tester::fei_
fei::SharedPtr< FEI > fei_
Definition: FEI_tester.hpp:78
FEI_tester::getName
const char * getName()
Definition: FEI_tester.hpp:31
MPI_Comm
#define MPI_Comm
Definition: fei_mpi.h:56
fei::localProc
int localProc(MPI_Comm comm)
Definition: fei_CommUtils.cpp:13
FEI_tester::numProcs_
int numProcs_
Definition: FEI_tester.hpp:84
FEI_tester::testInitialization
int testInitialization()
Definition: FEI_tester.cpp:61
LinearSystemCore
Definition: fei_LinearSystemCore.hpp:124
FEI_tester::setIDlists
int setIDlists()
Definition: FEI_tester.cpp:235
fei::numProcs
int numProcs(MPI_Comm comm)
Definition: fei_CommUtils.cpp:25
FEI_tester::save_multiplier_soln
int save_multiplier_soln(DataReader &data, FEI &fei, const char *solnFileName, int numProcs, int localProc, int solveCounter)
Definition: FEI_tester.cpp:654
FEI_tester::numMatrices
int numMatrices
Definition: FEI_tester.hpp:86
DataReader
Definition: DataReader.hpp:21
FEI_tester::aggregateLoadPhase
int aggregateLoadPhase()
Definition: FEI_tester.cpp:412