multidark loader now take all velocity components; velocity output bug fixed

This commit is contained in:
P.M. Sutter 2014-01-30 21:39:44 -06:00
parent 479b9b8422
commit c27b09b08d
2 changed files with 9 additions and 5 deletions

View file

@ -354,7 +354,8 @@ void createBox(SimuData *simu, vector<long>& targets, vector<long>& 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]);
}

View file

@ -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 &&