Skip to content

Commit ea74dab

Browse files
author
Frederic Perez
committed
fix last fix
1 parent 7ce35cd commit ea74dab

File tree

1 file changed

+44
-22
lines changed

1 file changed

+44
-22
lines changed

src/Profiles/Function.cpp

+44-22
Original file line numberDiff line numberDiff line change
@@ -8,94 +8,106 @@ using namespace std;
88
// 1D
99
double Function_Python1D::valueAt( double time )
1010
{
11+
double v;
1112
SMILEI_PY_ACQUIRE_GIL
12-
double v = PyTools::runPyFunction( py_profile, time );
13+
v = PyTools::runPyFunction( py_profile, time );
1314
SMILEI_PY_RELEASE_GIL
1415
return v;
1516
}
1617
double Function_Python1D::valueAt( vector<double>, double time )
1718
{
19+
double v;
1820
SMILEI_PY_ACQUIRE_GIL
19-
double v = PyTools::runPyFunction( py_profile, time );
21+
v = PyTools::runPyFunction( py_profile, time );
2022
SMILEI_PY_RELEASE_GIL
2123
return v;
2224
}
2325
double Function_Python1D::valueAt( vector<double> x_cell )
2426
{
27+
double v;
2528
SMILEI_PY_ACQUIRE_GIL
26-
double v = PyTools::runPyFunction( py_profile, x_cell[0] );
29+
v = PyTools::runPyFunction( py_profile, x_cell[0] );
2730
SMILEI_PY_RELEASE_GIL
2831
return v;
2932
}
3033

3134
// 2D
3235
double Function_Python2D::valueAt( vector<double> x_cell, double time )
3336
{
37+
double v;
3438
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 );
3640
SMILEI_PY_RELEASE_GIL
3741
return v;
3842
}
3943
double Function_Python2D::valueAt( vector<double> x_cell )
4044
{
45+
double v;
4146
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] );
4348
SMILEI_PY_RELEASE_GIL
4449
return v;
4550
}
4651
// 2D complex
4752
std::complex<double> Function_Python2D::complexValueAt( vector<double> x_cell, double time )
4853
{
54+
std::complex<double> v;
4955
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 );
5157
SMILEI_PY_RELEASE_GIL
5258
return v;
5359
}
5460
std::complex<double> Function_Python2D::complexValueAt( vector<double> x_cell )
5561
{
62+
std::complex<double> v;
5663
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] );
5865
SMILEI_PY_RELEASE_GIL
5966
return v;
6067
}
6168

6269
// 3D
6370
double Function_Python3D::valueAt( vector<double> x_cell, double time )
6471
{
72+
double v;
6573
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 );
6775
SMILEI_PY_RELEASE_GIL
6876
return v;
6977
}
7078
double Function_Python3D::valueAt( vector<double> x_cell )
7179
{
80+
double v;
7281
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] );
7483
SMILEI_PY_RELEASE_GIL
7584
return v;
7685
}
7786
// 3D complex
7887
std::complex<double> Function_Python3D::complexValueAt( vector<double> x_cell, double time )
7988
{
89+
std::complex<double> v;
8090
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 );
8292
SMILEI_PY_RELEASE_GIL
8393
return v;
8494
}
8595

8696
// 4D
8797
double Function_Python4D::valueAt( vector<double> x_cell, double time )
8898
{
99+
double v;
89100
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 );
91102
SMILEI_PY_RELEASE_GIL
92103
return v;
93104
}
94105
// 4D complex
95106
std::complex<double> Function_Python4D::complexValueAt( vector<double> x_cell, double time )
96107
{
108+
std::complex<double> v;
97109
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 );
99111
SMILEI_PY_RELEASE_GIL
100112
return v;
101113
}
@@ -104,30 +116,34 @@ std::complex<double> Function_Python4D::complexValueAt( vector<double> x_cell, d
104116
#ifdef SMILEI_USE_NUMPY
105117
PyArrayObject *Function_Python1D::valueAt( std::vector<PyArrayObject *> x )
106118
{
119+
PyArrayObject * v;
107120
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 );
109122
SMILEI_PY_RELEASE_GIL
110123
return v;
111124
}
112125
PyArrayObject *Function_Python2D::valueAt( std::vector<PyArrayObject *> x )
113126
{
127+
PyArrayObject * v;
114128
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 );
116130
SMILEI_PY_RELEASE_GIL
117131
return v;
118132
}
119133
PyArrayObject *Function_Python3D::valueAt( std::vector<PyArrayObject *> x )
120134
{
135+
PyArrayObject * v;
121136
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 );
123138
SMILEI_PY_RELEASE_GIL
124139
return v;
125140
}
126141
PyArrayObject *Function_Python2D::complexValueAt( std::vector<PyArrayObject *> x )
127142
{
143+
PyArrayObject *cvalues;
128144
SMILEI_PY_ACQUIRE_GIL
129145
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 );
131147
Py_DECREF( values );
132148
SMILEI_PY_RELEASE_GIL
133149
return cvalues;
@@ -137,55 +153,61 @@ PyArrayObject *Function_Python2D::complexValueAt( std::vector<PyArrayObject *> x
137153

138154
PyArrayObject *Function_Python1D::valueAt( std::vector<PyArrayObject *>, double time )
139155
{
156+
PyArrayObject * ret;
140157
SMILEI_PY_ACQUIRE_GIL
141158
PyObject *t = PyFloat_FromDouble( time );
142-
PyArrayObject * ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs( py_profile, t, NULL );
159+
ret = ( PyArrayObject * )PyObject_CallFunctionObjArgs( py_profile, t, NULL );
143160
Py_DECREF( t );
144161
SMILEI_PY_RELEASE_GIL
145162
return ret;
146163
}
147164
PyArrayObject *Function_Python2D::valueAt( std::vector<PyArrayObject *> x, double time )
148165
{
166+
PyArrayObject * ret;
149167
SMILEI_PY_ACQUIRE_GIL
150168
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 );
152170
Py_DECREF( t );
153171
SMILEI_PY_RELEASE_GIL
154172
return ret;
155173
}
156174
PyArrayObject *Function_Python3D::valueAt( std::vector<PyArrayObject *> x, double time )
157175
{
176+
PyArrayObject * ret;
158177
SMILEI_PY_ACQUIRE_GIL
159178
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 );
161180
Py_DECREF( t );
162181
SMILEI_PY_RELEASE_GIL
163182
return ret;
164183
}
165184
PyArrayObject *Function_Python4D::valueAt( std::vector<PyArrayObject *> x, double time )
166185
{
186+
PyArrayObject * ret;
167187
SMILEI_PY_ACQUIRE_GIL
168188
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 );
170190
Py_DECREF( t );
171191
SMILEI_PY_RELEASE_GIL
172192
return ret;
173193
}PyArrayObject *Function_Python4D::complexValueAt( std::vector<PyArrayObject *> x, double time )
174194
{
195+
PyArrayObject *cvalues;
175196
SMILEI_PY_ACQUIRE_GIL
176197
PyObject *t = PyFloat_FromDouble( time );
177198
PyObject * values = PyObject_CallFunctionObjArgs( py_profile, x[0], x[1], x[2], t, NULL );
178199
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 );
180201
Py_DECREF( values );
181202
SMILEI_PY_RELEASE_GIL
182203
return cvalues;
183204
}
184205
PyArrayObject *Function_Python4D::complexValueAt( std::vector<PyArrayObject *> x, PyArrayObject *t )
185206
{
207+
PyArrayObject *cvalues;
186208
SMILEI_PY_ACQUIRE_GIL
187209
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 );
189211
Py_DECREF( values );
190212
SMILEI_PY_RELEASE_GIL
191213
return cvalues;

0 commit comments

Comments
 (0)