Xyce  6.1
NLSTest.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 // File : NLSTest.h
3 //
4 // Purpose : This function is the header file which contains class
5 // definitions for the nonlinear solver package test program.
6 //
7 // Special Notes :
8 //
9 // Creator : Eric Keiter, SNL, Parallel Computational Sciences
10 //
11 // Creation Date : 5/01/00
12 //-----------------------------------------------------------------------------
13 
14 
15 #ifndef _NLSTEST_H
16 #define _NLSTEST_H
17 
18 // ---------- Standard Includes ----------
19 #include <iostream>
20 #include <vector>
21 #include <list>
22 #include <string>
23 
24 // ---------- Xyce Includes ----------
25 #include <N_NLS_Manager.h>
26 #include <N_ERH_ErrorMgr.h>
27 #include <N_NLS_Misc.h>
28 
29 // ---------- Forward Declarations ----------
30 class N_LOA_Loader;
31 class N_LOA_LoaderMgr;
32 class N_DEV_DeviceMgr;
33 class N_LAS_LAFactory;
34 class N_LAS_MultiVector;
35 class N_LAS_Matrix;
37 
38 //-----------------------------------------------------------------------------
39 // Class : NLSTestor
40 // Purpose : This is the top level class for the nonlinear solver testing
41 // program. The member function, RunTests, is the "main"
42 // function, essentially.
43 // Special Notes :
44 // Creator : Eric Keiter, SNL, Parallel Computational Sciences
45 // Creation Date : 5/01/00
46 //-----------------------------------------------------------------------------
47 class NLSTestor
48 {
49  // functions:
50 public:
51  NLSTestor();
52  ~NLSTestor();
53 
54  bool runTests(int iargs, char *cargs[]);
55 
56 protected:
57 
58 private:
59  bool doAllocations();
60  bool doRegistrations();
61  bool doDeAllocations();
62 
63  bool doInitialization();
64  bool doSolve();
65 
66 
67  // attributes
68 public:
69 
70 protected:
71 
72 private:
73  N_NLS_Manager * NLS_Ptr_;
74  N_LAS_IterativeSolver * LAS_SolverPtr_;
75  N_LAS_Matrix * LAS_MatrixPtr_;
76  N_LAS_MultiVector * LAS_RHSVecPtr_;
77  N_LAS_MultiVector * LAS_SolVecPtr_;
78  N_LOA_LoaderMgr * LOA_LoaderMgrPtr_;
79  N_LOA_Loader * LOA_LoaderPtr_;
81  N_ERH_ErrorMgr * ERH_Ptr_;
82  N_DEV_DeviceMgr * DEV_Ptr_;
83 
84  int iargs;
85  char **cargs;
86 };
87 
88 #endif
89 
90 
char ** cargs
Definition: NLSTest.h:85
bool runTests(int iargs, char *cargs[])
Definition: NLSTest.C:232
N_LAS_IterativeSolver * LAS_SolverPtr_
Definition: NLSTest.h:74
bool doInitialization()
Definition: NLSTest.C:186
bool doRegistrations()
Definition: NLSTest.C:118
bool doDeAllocations()
Definition: NLSTest.C:152
N_LAS_Matrix * LAS_MatrixPtr_
Definition: NLSTest.h:75
~NLSTestor()
Definition: NLSTest.C:58
N_LAS_MultiVector * LAS_SolVecPtr_
Definition: NLSTest.h:77
NLSTestor()
Definition: NLSTest.C:45
bool doSolve()
Definition: NLSTest.C:212
int iargs
Definition: NLSTest.h:84
N_LOA_Loader * LOA_LoaderPtr_
Definition: NLSTest.h:79
N_NLS_Manager * NLS_Ptr_
Definition: NLSTest.h:73
N_DEV_DeviceMgr * DEV_Ptr_
Definition: NLSTest.h:82
N_ERH_ErrorMgr * ERH_Ptr_
Definition: NLSTest.h:81
N_LOA_LoaderMgr * LOA_LoaderMgrPtr_
Definition: NLSTest.h:78
N_LAS_MultiVector * LAS_RHSVecPtr_
Definition: NLSTest.h:76
bool doAllocations()
Definition: NLSTest.C:71
N_TIA_TimeIntegrationAlgorithm * TIA_Ptr_
Definition: NLSTest.h:80