aboutsummaryrefslogtreecommitdiff
path: root/Source/Python/WarpXWrappers.cpp
diff options
context:
space:
mode:
authorGravatar Remi Lehe <remi.lehe@normalesup.org> 2019-09-09 14:47:28 -0700
committerGravatar GitHub <noreply@github.com> 2019-09-09 14:47:28 -0700
commit5979ed85e2e671b0b15c267a755aec56390807c8 (patch)
tree6660622e3039314674c4b19c4c9d215c5246a2d0 /Source/Python/WarpXWrappers.cpp
parent017d18d14052905357a3b2bb0efe30fe7f25c222 (diff)
parent0e0f6b2f11968357ee9890a507d939e63f68bb45 (diff)
downloadWarpX-5979ed85e2e671b0b15c267a755aec56390807c8.tar.gz
WarpX-5979ed85e2e671b0b15c267a755aec56390807c8.tar.zst
WarpX-5979ed85e2e671b0b15c267a755aec56390807c8.zip
Merge pull request #323 from ECP-WarpX/python_update
Python update
Diffstat (limited to 'Source/Python/WarpXWrappers.cpp')
-rw-r--r--Source/Python/WarpXWrappers.cpp20
1 files changed, 8 insertions, 12 deletions
diff --git a/Source/Python/WarpXWrappers.cpp b/Source/Python/WarpXWrappers.cpp
index a60efd498..2fb7200bb 100644
--- a/Source/Python/WarpXWrappers.cpp
+++ b/Source/Python/WarpXWrappers.cpp
@@ -308,23 +308,21 @@ extern "C"
return getMultiFabLoVects(mf, return_size, ngrow);
}
- double** warpx_getParticleStructs(int speciesnumber,
+ double** warpx_getParticleStructs(int speciesnumber, int lev,
int* num_tiles, int** particles_per_tile) {
auto & mypc = WarpX::GetInstance().GetPartContainer();
auto & myspc = mypc.GetParticleContainer(speciesnumber);
- const int level = 0;
-
int i = 0;
- for (WarpXParIter pti(myspc, level); pti.isValid(); ++pti, ++i) {}
+ for (WarpXParIter pti(myspc, lev); pti.isValid(); ++pti, ++i) {}
- // *num_tiles = myspc.numLocalTilesAtLevel(level);
+ // *num_tiles = myspc.numLocalTilesAtLevel(lev);
*num_tiles = i;
*particles_per_tile = (int*) malloc(*num_tiles*sizeof(int));
double** data = (double**) malloc(*num_tiles*sizeof(typename WarpXParticleContainer::ParticleType*));
i = 0;
- for (WarpXParIter pti(myspc, level); pti.isValid(); ++pti, ++i) {
+ for (WarpXParIter pti(myspc, lev); pti.isValid(); ++pti, ++i) {
auto& aos = pti.GetArrayOfStructs();
data[i] = (double*) aos.data();
(*particles_per_tile)[i] = pti.numParticles();
@@ -332,23 +330,21 @@ extern "C"
return data;
}
- double** warpx_getParticleArrays(int speciesnumber, int comp,
+ double** warpx_getParticleArrays(int speciesnumber, int comp, int lev,
int* num_tiles, int** particles_per_tile) {
auto & mypc = WarpX::GetInstance().GetPartContainer();
auto & myspc = mypc.GetParticleContainer(speciesnumber);
- const int level = 0;
-
int i = 0;
- for (WarpXParIter pti(myspc, level); pti.isValid(); ++pti, ++i) {}
+ for (WarpXParIter pti(myspc, lev); pti.isValid(); ++pti, ++i) {}
- // *num_tiles = myspc.numLocalTilesAtLevel(level);
+ // *num_tiles = myspc.numLocalTilesAtLevel(lev);
*num_tiles = i;
*particles_per_tile = (int*) malloc(*num_tiles*sizeof(int));
double** data = (double**) malloc(*num_tiles*sizeof(double*));
i = 0;
- for (WarpXParIter pti(myspc, level); pti.isValid(); ++pti, ++i) {
+ for (WarpXParIter pti(myspc, lev); pti.isValid(); ++pti, ++i) {
auto& soa = pti.GetStructOfArrays();
data[i] = (double*) soa.GetRealData(comp).dataPtr();
(*particles_per_tile)[i] = pti.numParticles();