@@ -8,94 +8,106 @@ using namespace std;
8
8
// 1D
9
9
double Function_Python1D::valueAt ( double time )
10
10
{
11
+ double v;
11
12
SMILEI_PY_ACQUIRE_GIL
12
- double v = PyTools::runPyFunction ( py_profile, time );
13
+ v = PyTools::runPyFunction ( py_profile, time );
13
14
SMILEI_PY_RELEASE_GIL
14
15
return v;
15
16
}
16
17
double Function_Python1D::valueAt ( vector<double >, double time )
17
18
{
19
+ double v;
18
20
SMILEI_PY_ACQUIRE_GIL
19
- double v = PyTools::runPyFunction ( py_profile, time );
21
+ v = PyTools::runPyFunction ( py_profile, time );
20
22
SMILEI_PY_RELEASE_GIL
21
23
return v;
22
24
}
23
25
double Function_Python1D::valueAt ( vector<double > x_cell )
24
26
{
27
+ double v;
25
28
SMILEI_PY_ACQUIRE_GIL
26
- double v = PyTools::runPyFunction ( py_profile, x_cell[0 ] );
29
+ v = PyTools::runPyFunction ( py_profile, x_cell[0 ] );
27
30
SMILEI_PY_RELEASE_GIL
28
31
return v;
29
32
}
30
33
31
34
// 2D
32
35
double Function_Python2D::valueAt ( vector<double > x_cell, double time )
33
36
{
37
+ double v;
34
38
SMILEI_PY_ACQUIRE_GIL
35
- double v = PyTools::runPyFunction ( py_profile, x_cell[0 ], time );
39
+ v = PyTools::runPyFunction ( py_profile, x_cell[0 ], time );
36
40
SMILEI_PY_RELEASE_GIL
37
41
return v;
38
42
}
39
43
double Function_Python2D::valueAt ( vector<double > x_cell )
40
44
{
45
+ double v;
41
46
SMILEI_PY_ACQUIRE_GIL
42
- double v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ] );
47
+ v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ] );
43
48
SMILEI_PY_RELEASE_GIL
44
49
return v;
45
50
}
46
51
// 2D complex
47
52
std::complex<double > Function_Python2D::complexValueAt ( vector<double > x_cell, double time )
48
53
{
54
+ std::complex<double > v;
49
55
SMILEI_PY_ACQUIRE_GIL
50
- std::complex< double > v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], time );
56
+ v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], time );
51
57
SMILEI_PY_RELEASE_GIL
52
58
return v;
53
59
}
54
60
std::complex<double > Function_Python2D::complexValueAt ( vector<double > x_cell )
55
61
{
62
+ std::complex<double > v;
56
63
SMILEI_PY_ACQUIRE_GIL
57
- std::complex< double > v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], x_cell[1 ] );
64
+ v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], x_cell[1 ] );
58
65
SMILEI_PY_RELEASE_GIL
59
66
return v;
60
67
}
61
68
62
69
// 3D
63
70
double Function_Python3D::valueAt ( vector<double > x_cell, double time )
64
71
{
72
+ double v;
65
73
SMILEI_PY_ACQUIRE_GIL
66
- double v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ], time );
74
+ v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ], time );
67
75
SMILEI_PY_RELEASE_GIL
68
76
return v;
69
77
}
70
78
double Function_Python3D::valueAt ( vector<double > x_cell )
71
79
{
80
+ double v;
72
81
SMILEI_PY_ACQUIRE_GIL
73
- double v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ], x_cell[2 ] );
82
+ v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ], x_cell[2 ] );
74
83
SMILEI_PY_RELEASE_GIL
75
84
return v;
76
85
}
77
86
// 3D complex
78
87
std::complex<double > Function_Python3D::complexValueAt ( vector<double > x_cell, double time )
79
88
{
89
+ std::complex<double > v;
80
90
SMILEI_PY_ACQUIRE_GIL
81
- std::complex< double > v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], x_cell[1 ], time );
91
+ v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], x_cell[1 ], time );
82
92
SMILEI_PY_RELEASE_GIL
83
93
return v;
84
94
}
85
95
86
96
// 4D
87
97
double Function_Python4D::valueAt ( vector<double > x_cell, double time )
88
98
{
99
+ double v;
89
100
SMILEI_PY_ACQUIRE_GIL
90
- double v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ], x_cell[2 ], time );
101
+ v = PyTools::runPyFunction ( py_profile, x_cell[0 ], x_cell[1 ], x_cell[2 ], time );
91
102
SMILEI_PY_RELEASE_GIL
92
103
return v;
93
104
}
94
105
// 4D complex
95
106
std::complex<double > Function_Python4D::complexValueAt ( vector<double > x_cell, double time )
96
107
{
108
+ std::complex<double > v;
97
109
SMILEI_PY_ACQUIRE_GIL
98
- std::complex< double > v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], x_cell[1 ], x_cell[2 ], time );
110
+ v = PyTools::runPyFunction<std::complex<double >>( py_profile, x_cell[0 ], x_cell[1 ], x_cell[2 ], time );
99
111
SMILEI_PY_RELEASE_GIL
100
112
return v;
101
113
}
@@ -104,30 +116,34 @@ std::complex<double> Function_Python4D::complexValueAt( vector<double> x_cell, d
104
116
#ifdef SMILEI_USE_NUMPY
105
117
PyArrayObject *Function_Python1D::valueAt ( std::vector<PyArrayObject *> x )
106
118
{
119
+ PyArrayObject * v;
107
120
SMILEI_PY_ACQUIRE_GIL
108
- PyArrayObject * v = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], NULL );
121
+ v = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], NULL );
109
122
SMILEI_PY_RELEASE_GIL
110
123
return v;
111
124
}
112
125
PyArrayObject *Function_Python2D::valueAt ( std::vector<PyArrayObject *> x )
113
126
{
127
+ PyArrayObject * v;
114
128
SMILEI_PY_ACQUIRE_GIL
115
- PyArrayObject * v = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], NULL );
129
+ v = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], NULL );
116
130
SMILEI_PY_RELEASE_GIL
117
131
return v;
118
132
}
119
133
PyArrayObject *Function_Python3D::valueAt ( std::vector<PyArrayObject *> x )
120
134
{
135
+ PyArrayObject * v;
121
136
SMILEI_PY_ACQUIRE_GIL
122
- PyArrayObject * v = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], x[2 ], NULL );
137
+ v = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], x[2 ], NULL );
123
138
SMILEI_PY_RELEASE_GIL
124
139
return v;
125
140
}
126
141
PyArrayObject *Function_Python2D::complexValueAt ( std::vector<PyArrayObject *> x )
127
142
{
143
+ PyArrayObject *cvalues;
128
144
SMILEI_PY_ACQUIRE_GIL
129
145
PyObject *values = PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], NULL );
130
- PyArrayObject * cvalues = ( PyArrayObject * )PyObject_CallMethod ( values, const_cast <char *>(" astype" ), const_cast <char *>(" s" ), const_cast <char *>(" complex" ), NULL );
146
+ cvalues = ( PyArrayObject * )PyObject_CallMethod ( values, const_cast <char *>(" astype" ), const_cast <char *>(" s" ), const_cast <char *>(" complex" ), NULL );
131
147
Py_DECREF ( values );
132
148
SMILEI_PY_RELEASE_GIL
133
149
return cvalues;
@@ -137,55 +153,61 @@ PyArrayObject *Function_Python2D::complexValueAt( std::vector<PyArrayObject *> x
137
153
138
154
PyArrayObject *Function_Python1D::valueAt ( std::vector<PyArrayObject *>, double time )
139
155
{
156
+ PyArrayObject * ret;
140
157
SMILEI_PY_ACQUIRE_GIL
141
158
PyObject *t = PyFloat_FromDouble ( time );
142
- PyArrayObject * ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, t, NULL );
159
+ ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, t, NULL );
143
160
Py_DECREF ( t );
144
161
SMILEI_PY_RELEASE_GIL
145
162
return ret;
146
163
}
147
164
PyArrayObject *Function_Python2D::valueAt ( std::vector<PyArrayObject *> x, double time )
148
165
{
166
+ PyArrayObject * ret;
149
167
SMILEI_PY_ACQUIRE_GIL
150
168
PyObject *t = PyFloat_FromDouble ( time );
151
- PyArrayObject * ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], t, NULL );
169
+ ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], t, NULL );
152
170
Py_DECREF ( t );
153
171
SMILEI_PY_RELEASE_GIL
154
172
return ret;
155
173
}
156
174
PyArrayObject *Function_Python3D::valueAt ( std::vector<PyArrayObject *> x, double time )
157
175
{
176
+ PyArrayObject * ret;
158
177
SMILEI_PY_ACQUIRE_GIL
159
178
PyObject *t = PyFloat_FromDouble ( time );
160
- PyArrayObject * ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], t, NULL );
179
+ ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], t, NULL );
161
180
Py_DECREF ( t );
162
181
SMILEI_PY_RELEASE_GIL
163
182
return ret;
164
183
}
165
184
PyArrayObject *Function_Python4D::valueAt ( std::vector<PyArrayObject *> x, double time )
166
185
{
186
+ PyArrayObject * ret;
167
187
SMILEI_PY_ACQUIRE_GIL
168
188
PyObject *t = PyFloat_FromDouble ( time );
169
- PyArrayObject * ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], x[2 ], t, NULL );
189
+ ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], x[2 ], t, NULL );
170
190
Py_DECREF ( t );
171
191
SMILEI_PY_RELEASE_GIL
172
192
return ret;
173
193
}PyArrayObject *Function_Python4D::complexValueAt ( std::vector<PyArrayObject *> x, double time )
174
194
{
195
+ PyArrayObject *cvalues;
175
196
SMILEI_PY_ACQUIRE_GIL
176
197
PyObject *t = PyFloat_FromDouble ( time );
177
198
PyObject * values = PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], x[2 ], t, NULL );
178
199
Py_DECREF ( t );
179
- PyArrayObject * cvalues = ( PyArrayObject * )PyObject_CallMethod ( values, const_cast <char *>(" astype" ), const_cast <char *>(" s" ), const_cast <char *>(" complex" ), NULL );
200
+ cvalues = ( PyArrayObject * )PyObject_CallMethod ( values, const_cast <char *>(" astype" ), const_cast <char *>(" s" ), const_cast <char *>(" complex" ), NULL );
180
201
Py_DECREF ( values );
181
202
SMILEI_PY_RELEASE_GIL
182
203
return cvalues;
183
204
}
184
205
PyArrayObject *Function_Python4D::complexValueAt ( std::vector<PyArrayObject *> x, PyArrayObject *t )
185
206
{
207
+ PyArrayObject *cvalues;
186
208
SMILEI_PY_ACQUIRE_GIL
187
209
PyObject *values = PyObject_CallFunctionObjArgs ( py_profile, x[0 ], x[1 ], x[2 ], t, NULL );
188
- PyArrayObject * cvalues = ( PyArrayObject * )PyObject_CallMethod ( values, const_cast <char *>(" astype" ), const_cast <char *>(" s" ), const_cast <char *>(" complex" ), NULL );
210
+ cvalues = ( PyArrayObject * )PyObject_CallMethod ( values, const_cast <char *>(" astype" ), const_cast <char *>(" s" ), const_cast <char *>(" complex" ), NULL );
189
211
Py_DECREF ( values );
190
212
SMILEI_PY_RELEASE_GIL
191
213
return cvalues;
0 commit comments