diff --git a/c_tools/mock/generateMock.cpp b/c_tools/mock/generateMock.cpp index 5e93c3f..7f44b99 100644 --- a/c_tools/mock/generateMock.cpp +++ b/c_tools/mock/generateMock.cpp @@ -354,7 +354,8 @@ void createBox(SimuData *simu, vector& targets, vector& snapshot_spl for (int j = 0; j < 3; j++) { boxed->Pos[j] = new float[boxed->NumPart]; - boxed->Vel[j] = 0; + boxed->Vel[j] = new float[boxed->NumPart]; + //boxed->Vel[j] = 0; mul[j] = 1.0/(ranges[2*j+1] - ranges[2*j+0]); } cout << "Min range = " << ranges[0] << " " << ranges[2] << " " << ranges[4] << endl; @@ -413,6 +414,7 @@ void buildBox(SimuData *simu, long num_targets, long loaded, for (int j = 0; j < 3; j++) { boxed->Pos[j][loaded] = max(min((simu->Pos[j][pid]-ranges[j*2])*mul[j], double(1)), double(0)); + boxed->Vel[j][loaded] = simu->Vel[j][pid]; assert(boxed->Pos[j][loaded] >= 0); assert(boxed->Pos[j][loaded] <= 1); } @@ -551,7 +553,8 @@ void makeBoxFromParameter(SimuData *simu, SimuData* &boxed, generateMock_info& a for (int j = 0; j < 3; j++) { boxed->Pos[j] = new float[boxed->NumPart]; - boxed->Vel[j] = 0; + boxed->Vel[j] = new float[boxed->NumPart]; + //boxed->Vel[j] = 0; mul[j] = 1.0/(ranges[2*j+1] - ranges[2*j+0]); } diff --git a/c_tools/mock/loaders/multidark_loader.cpp b/c_tools/mock/loaders/multidark_loader.cpp index 3d9c8a8..b9d0118 100644 --- a/c_tools/mock/loaders/multidark_loader.cpp +++ b/c_tools/mock/loaders/multidark_loader.cpp @@ -76,9 +76,10 @@ public: long estimated = (preproc == 0) ? simu->NumPart : preproc->getEstimatedPostprocessed(simu->NumPart); long allocated = estimated; - for (int k = 0; k < 3; k++) + for (int k = 0; k < 3; k++) { simu->Pos[k] = new float[allocated]; - simu->Vel[2] = new float[allocated]; + simu->Vel[k] = new float[allocated]; + } simu->Id = new long[allocated]; long *uniqueID = new long[allocated]; long *index = new long[allocated]; @@ -98,7 +99,7 @@ public: SingleParticle p; fp >> p.ID >> p.Pos[0] >> p.Pos[1] - >> p.Pos[2] >> p.Vel[2] >> tempData >> tempData >> tempData; + >> p.Pos[2] >> p.Vel[2] >> p.Vel[1] >> p.Vel[0] >> tempData; if (p.ID == -99 && p.Pos[0] == -99 && p.Pos[1] == -99 &&