Escript
Revision_4320
Main Page
Namespaces
Classes
Files
File List
File Members
escript
src
TestDomain.h
Go to the documentation of this file.
1
2
/*****************************************************************************
3
*
4
* Copyright (c) 2003-2013 by University of Queensland
5
* http://www.uq.edu.au
6
*
7
* Primary Business: Queensland, Australia
8
* Licensed under the Open Software License version 3.0
9
* http://www.opensource.org/licenses/osl-3.0.php
10
*
11
* Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12
* Development since 2012 by School of Earth Sciences
13
*
14
*****************************************************************************/
15
16
17
#if !defined escript_TestDomain_20090618_H
18
#define escript_TestDomain_20090618_H
19
#include "
system_dep.h
"
20
21
#include "
AbstractDomain.h
"
22
#include "
FunctionSpace.h
"
23
24
#include <string>
25
26
namespace
escript {
27
44
class
TestDomain
:
public
AbstractDomain
{
45
46
public
:
47
56
ESCRIPT_DLL_API
57
TestDomain
(
int
pointspersample,
int
numsamples,
int
dpsize=1);
58
59
ESCRIPT_DLL_API
60
~TestDomain
();
61
67
ESCRIPT_DLL_API
68
virtual
bool
isValidFunctionSpaceType
(
int
functionSpaceType)
const
;
69
74
ESCRIPT_DLL_API
75
virtual
std::string
getDescription
()
const
;
76
81
ESCRIPT_DLL_API
82
virtual
std::string
functionSpaceTypeAsString
(
int
functionSpaceType)
const
;
83
89
ESCRIPT_DLL_API
90
virtual
void
interpolateOnDomain
(
escript::Data
& target,
const
escript::Data
& source)
const
;
91
ESCRIPT_DLL_API
92
virtual
bool
probeInterpolationOnDomain
(
int
functionSpaceType_source,
int
functionSpaceType_target)
const
;
93
94
ESCRIPT_DLL_API
95
bool
96
commonFunctionSpace
(
const
std::vector<int>& fs,
int
& resultcode)
const
;
97
102
ESCRIPT_DLL_API
103
virtual
escript::Data
getX
()
const
;
104
105
111
ESCRIPT_DLL_API
112
virtual
void
interpolateACross
(
escript::Data
& target,
const
escript::Data
& source)
const
;
113
ESCRIPT_DLL_API
114
virtual
bool
probeInterpolationACross
(
int
functionSpaceType_source,
const
AbstractDomain
& targetDomain,
int
functionSpaceType_target)
const
;
115
116
121
ESCRIPT_DLL_API
122
virtual
int
getDefaultCode
()
const
;
123
124
129
ESCRIPT_DLL_API
130
virtual
int
getContinuousFunctionCode
()
const
;
131
136
ESCRIPT_DLL_API
137
virtual
int
getFunctionCode
()
const
;
138
143
ESCRIPT_DLL_API
144
virtual
int
getFunctionOnBoundaryCode
()
const
;
145
150
ESCRIPT_DLL_API
151
virtual
int
getFunctionOnContactZeroCode
()
const
;
152
157
ESCRIPT_DLL_API
158
virtual
int
getFunctionOnContactOneCode
()
const
;
159
164
ESCRIPT_DLL_API
165
virtual
int
getSolutionCode
()
const
;
166
171
ESCRIPT_DLL_API
172
virtual
int
getReducedSolutionCode
()
const
;
173
178
ESCRIPT_DLL_API
179
virtual
int
getDiracDeltaFunctionsCode
()
const
;
180
187
ESCRIPT_DLL_API
188
virtual
std::pair<int,int>
getDataShape
(
int
functionSpaceCode)
const
;
189
196
ESCRIPT_DLL_API
197
virtual
int
getTagFromSampleNo
(
int
functionSpaceType,
int
sampleNo)
const
;
198
204
ESCRIPT_DLL_API
205
virtual
const
int
*
borrowSampleReferenceIDs
(
int
functionSpaceType)
const
;
206
210
ESCRIPT_DLL_API
211
virtual
int
getDim
()
const
;
212
217
ESCRIPT_DLL_API
218
virtual
bool
operator==
(
const
AbstractDomain
& other)
const
;
219
ESCRIPT_DLL_API
220
virtual
bool
operator!=
(
const
AbstractDomain
& other)
const
;
221
225
ESCRIPT_DLL_API
226
virtual
227
bool
canTag
(
int
functionSpaceCode)
const
;
228
234
ESCRIPT_DLL_API
235
virtual
int
getNumberOfTagsInUse
(
int
functionSpaceCode)
const
;
236
241
ESCRIPT_DLL_API
242
virtual
const
int
*
borrowListOfTagsInUse
(
int
functionSpaceCode)
const
;
243
244
protected
:
245
246
private
:
247
int
m_samples
;
// number of samples
248
int
m_dpps
;
// data points per sample
249
int
m_dpsize
;
// how big are the datapoints?
250
int
*
m_samplerefids
;
// sample reference ids
251
};
252
253
ESCRIPT_DLL_API
254
FunctionSpace
255
getTestDomainFunctionSpace
(
int
dpps,
int
samples,
int
dpsize);
256
257
}
// end of namespace
258
259
#endif
Generated on Fri Mar 15 2013 14:07:51 for Escript by
1.8.1.2