forked from precice/python-bindings
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSolverInterface.pxd
More file actions
110 lines (59 loc) · 3.47 KB
/
Copy pathSolverInterface.pxd
File metadata and controls
110 lines (59 loc) · 3.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
from libcpp cimport bool
from libcpp.set cimport set
from libcpp.string cimport string
cdef extern from "precice/SolverInterface.hpp" namespace "precice":
cdef cppclass SolverInterface:
# construction and configuration
SolverInterface (const string&, const string&, int, int) except +
SolverInterface (const string&, const string&, int, int, void*) except +
void configure (const string&)
# steering methods
double initialize ()
void initializeData ()
double advance (double computedTimestepLength)
void finalize()
# status queries
int getDimensions() const
bool isCouplingOngoing()
bool isReadDataAvailable()
bool isWriteDataRequired (double computedTimestepLength)
bool isTimeWindowComplete()
bool hasToEvaluateSurrogateModel ()
bool hasToEvaluateFineModel ()
# action methods
bool isActionRequired (const string& action)
void markActionFulfilled (const string& action)
# mesh access
bool hasMesh (const string& meshName ) const
int getMeshID (const string& meshName)
set[int] getMeshIDs ()
# MeshHandle getMeshHandle (const string& meshName)
int setMeshVertex (int meshID, const double* position)
int getMeshVertexSize (int meshID)
void setMeshVertices (int meshID, int size, const double* positions, int* ids)
void getMeshVertices (int meshID, int size, const int* ids, double* positions)
void getMeshVertexIDsFromPositions (int meshID, int size, double* positions, int* ids)
int setMeshEdge (int meshID, int firstVertexID, int secondVertexID)
void setMeshTriangle (int meshID, int firstEdgeID, int secondEdgeID, int thirdEdgeID)
void setMeshTriangleWithEdges (int meshID, int firstVertexID, int secondVertexID, int thirdVertexID)
void setMeshQuad (int meshID, int firstEdgeID, int secondEdgeID, int thirdEdgeID, int fourthEdgeID)
void setMeshQuadWithEdges (int meshID, int firstVertexID, int secondVertexID, int thirdVertexID, int fourthVertexID)
# data access
bool hasData (const string& dataName, int meshID) const
int getDataID (const string& dataName, int meshID)
void mapReadDataTo (int toMeshID)
void mapWriteDataFrom (int fromMeshID)
void writeBlockVectorData (const int dataID, const int size, const int* valueIndices, const double* values)
void writeVectorData (const int dataID, const int valueIndex, const double* value)
void writeBlockScalarData (const int dataID, const int size, const int* valueIndices, const double* values)
void writeScalarData (const int dataID, const int valueIndex, const double value)
void readBlockVectorData (const int dataID, const int size, const int* valueIndices, double* values)
void readVectorData (const int dataID, const int valueIndex, double* value)
void readBlockScalarData (const int dataID, const int size, const int* valueIndices, double* values)
void readScalarData (const int dataID, const int valueIndex, double& value)
cdef extern from "precice/SolverInterface.hpp" namespace "precice":
string getVersionInformation()
cdef extern from "precice/SolverInterface.hpp" namespace "precice::constants":
const string& actionWriteInitialData()
const string& actionWriteIterationCheckpoint()
const string& actionReadIterationCheckpoint()