FEI Package Browser (Single Doxygen Collection)
Version of the Day
Toggle main menu visibility
Loading...
Searching...
No Matches
test_utils
driverData.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 _driverData_h_
10
#define _driverData_h_
11
12
#include <
fei_macros.hpp
>
13
#include <
fei_defs.h
>
14
15
class
initElem
{
16
public
:
17
initElem
(){}
18
~initElem
()
19
{
20
delete
[]
nodeIDs
;
21
}
22
GlobalID
elemBlockID
;
23
GlobalID
elemID
;
24
int
numNodes
;
25
GlobalID
*
nodeIDs
;
26
};
27
28
class
sumInElem
{
29
public
:
30
sumInElem
() :
stiff1D
(NULL),
stiffness
(NULL),
load
(NULL) {}
31
~sumInElem
()
32
{
33
delete
[]
nodeIDs
;
34
delete
[]
stiff1D
;
35
delete
[]
stiffness
;
36
delete
[]
load
;
37
}
38
GlobalID
elemBlockID
;
39
GlobalID
elemID
;
40
int
numNodes
;
41
GlobalID
*
nodeIDs
;
42
int
numRows
;
43
double
*
stiff1D
;
44
double
**
stiffness
;
45
double
*
load
;
46
int
elemFormat
;
47
};
48
49
class
nodeBC
{
50
public
:
51
nodeBC
():
nodeIDs
(NULL),
alpha
(NULL),
beta
(NULL),
gamma
(NULL) {}
52
~nodeBC
()
53
{
54
for
(
int
i=0; i<
numNodes
; ++i) {
55
delete
[]
alpha
[i];
56
delete
[]
beta
[i];
57
delete
[]
gamma
[i];
58
}
59
delete
[]
alpha
;
60
delete
[]
beta
;
61
delete
[]
gamma
;
62
delete
[]
nodeIDs
;
63
}
64
int
numNodes
;
65
GlobalID
*
nodeIDs
;
66
int
fieldID
;
67
int
fieldSize
;
68
double
**
alpha
;
69
double
**
beta
;
70
double
**
gamma
;
71
};
72
73
class
initCR
{
74
public
:
75
initCR
(){}
76
~initCR
()
77
{
78
delete
[]
nodeIDs
;
79
delete
[]
fieldIDs
;
80
}
81
82
int
numNodes
;
83
GlobalID
*
nodeIDs
;
84
int
*
fieldIDs
;
85
int
CRID
;
86
};
87
88
class
loadCR
{
89
public
:
90
loadCR
() {}
91
~loadCR
()
92
{
93
delete
[]
fieldIDs
;
94
delete
[]
fieldSizes
;
95
delete
[]
weights
;
96
delete
[]
nodeIDs
;
97
}
98
99
int
numNodes
;
100
GlobalID
*
nodeIDs
;
101
int
*
fieldIDs
;
102
int
*
fieldSizes
;
103
double
*
weights
;
104
double
CRValue
;
105
double
penValue
;
106
int
CRID
;
107
};
108
109
class
sharedNodes
{
110
public
:
111
sharedNodes
() :
nodeIDs
(NULL),
numProcsPerNode
(NULL),
sharedProcIDs
(NULL){}
112
~sharedNodes
()
113
{
114
for
(
int
i=0; i<
numNodes
; ++i)
delete
[]
sharedProcIDs
[i];
115
delete
[]
sharedProcIDs
;
116
delete
[]
numProcsPerNode
;
117
delete
[]
nodeIDs
;
118
}
119
120
int
numNodes
;
121
GlobalID
*
nodeIDs
;
122
int
*
numProcsPerNode
;
123
int
**
sharedProcIDs
;
124
};
125
126
class
parameters
{
127
public
:
128
parameters
() :
paramList
() {}
129
~parameters
()
130
{
131
for
(
size_t
i=0; i<
paramList
.size(); ++i)
delete
[]
paramList
[i];
132
}
133
134
std::vector<char*>
paramList
;
135
};
136
137
class
setIDLists
{
138
public
:
139
setIDLists
() :
matrixIDs
(NULL),
rhsIDs
(NULL) {}
140
~setIDLists
(){
delete
[]
matrixIDs
;
delete
[]
rhsIDs
;}
141
142
int
*
matrixIDs
;
143
int
numMatrices
;
144
int
*
rhsIDs
;
145
int
numRHSs
;
146
};
147
148
class
putBlockFieldNodeSolution
{
149
public
:
150
putBlockFieldNodeSolution
() :
nodeIDs
(NULL),
estimates
(NULL) {}
151
~putBlockFieldNodeSolution
(){
delete
[]
nodeIDs
;
delete
[]
estimates
;}
152
153
int
elemBlockID
;
154
int
fieldID
;
155
int
fieldSize
;
156
int
numNodes
;
157
GlobalID
*
nodeIDs
;
158
double
*
estimates
;
159
};
160
161
class
driverData
{
162
public
:
163
driverData
();
164
~driverData
();
165
166
int
readData
(
const
char
* fileName);
167
172
int
call_fei_method
(
const
char
* method,
FEI
*
fei
);
173
174
std::vector<const char*>&
get_methodNames
() {
return
(
methodNames
); }
175
176
private
:
177
int
readData
(
FEI_ISTREAM
* instr,
char
* keyword);
178
int
getKeyword
(
FEI_ISTREAM
* instr,
char
*& keyword);
179
180
int
is_reg_char
(
char
c);
181
int
skipWhite
(
FEI_ISTREAM
* instr);
182
int
readData
(
FEI_ISTREAM
* instr,
int
& n);
183
int
readData
(
FEI_ISTREAM
* instr,
double
& val);
184
int
appendName
(
const
char
* name);
185
186
std::vector<const char*>
methodNames
;
187
char
*
temp_
;
188
int
tempLen_
;
189
190
int
solveType_
;
191
192
int
initFields_numFields_
;
193
int
*
initFields_fieldSizes_
;
194
int
*
initFields_fieldIDs_
;
195
196
int
initElemBlock_numInts_
;
197
int
*
initElemBlock_ints_
;
198
int
*
initElemBlock_fieldsPerNode_
;
199
int
**
initElemBlock_fieldIDs_
;
200
int
*
initElemBlock_elemDofFieldIDs_
;
201
202
std::vector<initElem*>
initElems_
;
203
int
initElemCounter_
;
204
205
std::vector<sumInElem*>
sumInElems_
;
206
int
sumInElemCounter_
;
207
208
std::vector<sumInElem*>
sumInElemMatrix_
;
209
int
sumInElemMatrixCounter_
;
210
211
std::vector<sumInElem*>
sumInElemRHS_
;
212
int
sumInElemRHSCounter_
;
213
214
double
resetSystem_
;
215
double
resetMatrix_
;
216
double
resetRHSVector_
;
217
double
resetInitialGuess_
;
218
219
std::vector<nodeBC*>
loadNodeBCs_
;
220
int
loadNodeBCsCounter_
;
221
222
std::vector<initCR*>
initCRMult_
;
223
int
initCRMultCounter_
;
224
225
std::vector<loadCR*>
loadCRMult_
;
226
int
loadCRMultCounter_
;
227
228
std::vector<sharedNodes*>
initSharedNodes_
;
229
int
initSharedNodesCounter_
;
230
231
std::vector<parameters*>
parameters_
;
232
int
parametersCounter_
;
233
234
std::vector<setIDLists*>
setIDLists_
;
235
int
setIDListsCounter_
;
236
237
std::vector<int>
setCurrentMatrix_
;
238
int
setCurrentMatrixCounter_
;
239
240
std::vector<int>
setCurrentRHS_
;
241
int
setCurrentRHSCounter_
;
242
243
std::vector<putBlockFieldNodeSolution*>
putBlockFieldNodeSolution_
;
244
int
putBlockFieldNodeSolutionCounter_
;
245
};
246
247
#endif
// _driverData_h_
FEI
Definition
FEI.hpp:144
driverData::initElemBlock_numInts_
int initElemBlock_numInts_
Definition
driverData.hpp:196
driverData::initElemBlock_ints_
int * initElemBlock_ints_
Definition
driverData.hpp:197
driverData::get_methodNames
std::vector< const char * > & get_methodNames()
Definition
driverData.hpp:174
driverData::resetRHSVector_
double resetRHSVector_
Definition
driverData.hpp:216
driverData::appendName
int appendName(const char *name)
Definition
driverData.cpp:792
driverData::skipWhite
int skipWhite(FEI_ISTREAM *instr)
Definition
driverData.cpp:834
driverData::readData
int readData(const char *fileName)
Definition
driverData.cpp:105
driverData::sumInElems_
std::vector< sumInElem * > sumInElems_
Definition
driverData.hpp:205
driverData::sumInElemCounter_
int sumInElemCounter_
Definition
driverData.hpp:206
driverData::setCurrentRHSCounter_
int setCurrentRHSCounter_
Definition
driverData.hpp:241
driverData::loadCRMult_
std::vector< loadCR * > loadCRMult_
Definition
driverData.hpp:225
driverData::putBlockFieldNodeSolutionCounter_
int putBlockFieldNodeSolutionCounter_
Definition
driverData.hpp:244
driverData::resetMatrix_
double resetMatrix_
Definition
driverData.hpp:215
driverData::initFields_fieldIDs_
int * initFields_fieldIDs_
Definition
driverData.hpp:194
driverData::call_fei_method
int call_fei_method(const char *method, FEI *fei)
Definition
driverData.cpp:134
driverData::parameters_
std::vector< parameters * > parameters_
Definition
driverData.hpp:231
driverData::sumInElemRHS_
std::vector< sumInElem * > sumInElemRHS_
Definition
driverData.hpp:211
driverData::loadNodeBCs_
std::vector< nodeBC * > loadNodeBCs_
Definition
driverData.hpp:219
driverData::parametersCounter_
int parametersCounter_
Definition
driverData.hpp:232
driverData::initFields_fieldSizes_
int * initFields_fieldSizes_
Definition
driverData.hpp:193
driverData::initSharedNodesCounter_
int initSharedNodesCounter_
Definition
driverData.hpp:229
driverData::initElemBlock_fieldsPerNode_
int * initElemBlock_fieldsPerNode_
Definition
driverData.hpp:198
driverData::resetSystem_
double resetSystem_
Definition
driverData.hpp:214
driverData::loadCRMultCounter_
int loadCRMultCounter_
Definition
driverData.hpp:226
driverData::initCRMultCounter_
int initCRMultCounter_
Definition
driverData.hpp:223
driverData::setCurrentMatrix_
std::vector< int > setCurrentMatrix_
Definition
driverData.hpp:237
driverData::initElemBlock_fieldIDs_
int ** initElemBlock_fieldIDs_
Definition
driverData.hpp:199
driverData::methodNames
std::vector< const char * > methodNames
Definition
driverData.hpp:186
driverData::putBlockFieldNodeSolution_
std::vector< putBlockFieldNodeSolution * > putBlockFieldNodeSolution_
Definition
driverData.hpp:243
driverData::tempLen_
int tempLen_
Definition
driverData.hpp:188
driverData::driverData
driverData()
Definition
driverData.cpp:30
driverData::setIDLists_
std::vector< setIDLists * > setIDLists_
Definition
driverData.hpp:234
driverData::setCurrentMatrixCounter_
int setCurrentMatrixCounter_
Definition
driverData.hpp:238
driverData::initSharedNodes_
std::vector< sharedNodes * > initSharedNodes_
Definition
driverData.hpp:228
driverData::solveType_
int solveType_
Definition
driverData.hpp:190
driverData::is_reg_char
int is_reg_char(char c)
Definition
driverData.cpp:826
driverData::temp_
char * temp_
Definition
driverData.hpp:187
driverData::initElems_
std::vector< initElem * > initElems_
Definition
driverData.hpp:202
driverData::setIDListsCounter_
int setIDListsCounter_
Definition
driverData.hpp:235
driverData::loadNodeBCsCounter_
int loadNodeBCsCounter_
Definition
driverData.hpp:220
driverData::initFields_numFields_
int initFields_numFields_
Definition
driverData.hpp:192
driverData::resetInitialGuess_
double resetInitialGuess_
Definition
driverData.hpp:217
driverData::getKeyword
int getKeyword(FEI_ISTREAM *instr, char *&keyword)
Definition
driverData.cpp:801
driverData::initElemCounter_
int initElemCounter_
Definition
driverData.hpp:203
driverData::~driverData
~driverData()
Definition
driverData.cpp:72
driverData::sumInElemMatrixCounter_
int sumInElemMatrixCounter_
Definition
driverData.hpp:209
driverData::sumInElemMatrix_
std::vector< sumInElem * > sumInElemMatrix_
Definition
driverData.hpp:208
driverData::initElemBlock_elemDofFieldIDs_
int * initElemBlock_elemDofFieldIDs_
Definition
driverData.hpp:200
driverData::initCRMult_
std::vector< initCR * > initCRMult_
Definition
driverData.hpp:222
driverData::setCurrentRHS_
std::vector< int > setCurrentRHS_
Definition
driverData.hpp:240
driverData::sumInElemRHSCounter_
int sumInElemRHSCounter_
Definition
driverData.hpp:212
initCR::CRID
int CRID
Definition
driverData.hpp:85
initCR::initCR
initCR()
Definition
driverData.hpp:75
initCR::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:83
initCR::~initCR
~initCR()
Definition
driverData.hpp:76
initCR::fieldIDs
int * fieldIDs
Definition
driverData.hpp:84
initCR::numNodes
int numNodes
Definition
driverData.hpp:82
initElem::~initElem
~initElem()
Definition
driverData.hpp:18
initElem::initElem
initElem()
Definition
driverData.hpp:17
initElem::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:25
initElem::numNodes
int numNodes
Definition
driverData.hpp:24
initElem::elemBlockID
GlobalID elemBlockID
Definition
driverData.hpp:22
initElem::elemID
GlobalID elemID
Definition
driverData.hpp:23
loadCR::penValue
double penValue
Definition
driverData.hpp:105
loadCR::CRValue
double CRValue
Definition
driverData.hpp:104
loadCR::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:100
loadCR::CRID
int CRID
Definition
driverData.hpp:106
loadCR::fieldSizes
int * fieldSizes
Definition
driverData.hpp:102
loadCR::weights
double * weights
Definition
driverData.hpp:103
loadCR::loadCR
loadCR()
Definition
driverData.hpp:90
loadCR::numNodes
int numNodes
Definition
driverData.hpp:99
loadCR::fieldIDs
int * fieldIDs
Definition
driverData.hpp:101
loadCR::~loadCR
~loadCR()
Definition
driverData.hpp:91
nodeBC::~nodeBC
~nodeBC()
Definition
driverData.hpp:52
nodeBC::fieldID
int fieldID
Definition
driverData.hpp:66
nodeBC::numNodes
int numNodes
Definition
driverData.hpp:64
nodeBC::nodeBC
nodeBC()
Definition
driverData.hpp:51
nodeBC::fieldSize
int fieldSize
Definition
driverData.hpp:67
nodeBC::alpha
double ** alpha
Definition
driverData.hpp:68
nodeBC::gamma
double ** gamma
Definition
driverData.hpp:70
nodeBC::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:65
nodeBC::beta
double ** beta
Definition
driverData.hpp:69
parameters::parameters
parameters()
Definition
driverData.hpp:128
parameters::paramList
std::vector< char * > paramList
Definition
driverData.hpp:134
parameters::~parameters
~parameters()
Definition
driverData.hpp:129
putBlockFieldNodeSolution::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:157
putBlockFieldNodeSolution::estimates
double * estimates
Definition
driverData.hpp:158
putBlockFieldNodeSolution::numNodes
int numNodes
Definition
driverData.hpp:156
putBlockFieldNodeSolution::fieldSize
int fieldSize
Definition
driverData.hpp:155
putBlockFieldNodeSolution::putBlockFieldNodeSolution
putBlockFieldNodeSolution()
Definition
driverData.hpp:150
putBlockFieldNodeSolution::fieldID
int fieldID
Definition
driverData.hpp:154
putBlockFieldNodeSolution::elemBlockID
int elemBlockID
Definition
driverData.hpp:153
putBlockFieldNodeSolution::~putBlockFieldNodeSolution
~putBlockFieldNodeSolution()
Definition
driverData.hpp:151
setIDLists::rhsIDs
int * rhsIDs
Definition
driverData.hpp:144
setIDLists::~setIDLists
~setIDLists()
Definition
driverData.hpp:140
setIDLists::numRHSs
int numRHSs
Definition
driverData.hpp:145
setIDLists::numMatrices
int numMatrices
Definition
driverData.hpp:143
setIDLists::matrixIDs
int * matrixIDs
Definition
driverData.hpp:142
setIDLists::setIDLists
setIDLists()
Definition
driverData.hpp:139
sharedNodes::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:121
sharedNodes::sharedProcIDs
int ** sharedProcIDs
Definition
driverData.hpp:123
sharedNodes::~sharedNodes
~sharedNodes()
Definition
driverData.hpp:112
sharedNodes::sharedNodes
sharedNodes()
Definition
driverData.hpp:111
sharedNodes::numNodes
int numNodes
Definition
driverData.hpp:120
sharedNodes::numProcsPerNode
int * numProcsPerNode
Definition
driverData.hpp:122
sumInElem::load
double * load
Definition
driverData.hpp:45
sumInElem::nodeIDs
GlobalID * nodeIDs
Definition
driverData.hpp:41
sumInElem::elemFormat
int elemFormat
Definition
driverData.hpp:46
sumInElem::stiff1D
double * stiff1D
Definition
driverData.hpp:43
sumInElem::stiffness
double ** stiffness
Definition
driverData.hpp:44
sumInElem::~sumInElem
~sumInElem()
Definition
driverData.hpp:31
sumInElem::numRows
int numRows
Definition
driverData.hpp:42
sumInElem::sumInElem
sumInElem()
Definition
driverData.hpp:30
sumInElem::elemID
GlobalID elemID
Definition
driverData.hpp:39
sumInElem::elemBlockID
GlobalID elemBlockID
Definition
driverData.hpp:38
sumInElem::numNodes
int numNodes
Definition
driverData.hpp:40
fei_defs.h
GlobalID
int GlobalID
Definition
fei_defs.h:60
FEI_ISTREAM
#define FEI_ISTREAM
Definition
fei_iostream.hpp:32
fei_macros.hpp
fei
Definition
fei_ArrayUtils.hpp:16
Generated by
1.17.0