Skip to content

Commit

Permalink
Bug fix for MPI loading of data and reading extra field for apertures
Browse files Browse the repository at this point in the history
  • Loading branch information
pelahi authored and rtobar committed Mar 24, 2021
1 parent 95743f4 commit 64de17b
Showing 1 changed file with 110 additions and 0 deletions.
110 changes: 110 additions & 0 deletions src/hdfio.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -2639,6 +2639,39 @@ void ReadHDF(Options &opt, vector<Particle> &Part, const Int_t nbodies,Particle
}
}
iextraoffset += opt.gas_chemproduction_names.size();
if (opt.gas_internalprop_names_aperture.size()>0)
{
for (auto &iextra:opt.gas_internalprop_unique_input_indexlist_aperture)
{
extrafield = opt.gas_internalprop_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.gas_internalprop_names_aperture.size();
if (opt.gas_chem_names_aperture.size()>0)
{
for (auto &iextra:opt.gas_chem_unique_input_indexlist_aperture)
{
extrafield = opt.gas_chem_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.gas_chem_names_aperture.size();
if (opt.gas_chemproduction_names_aperture.size()>0)
{
for (auto &iextra:opt.gas_chemproduction_unique_input_indexlist_aperture)
{
extrafield = opt.gas_chemproduction_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.gas_chemproduction_names_aperture.size();
}
#endif
#if defined(STARON)
Expand Down Expand Up @@ -2681,6 +2714,39 @@ void ReadHDF(Options &opt, vector<Particle> &Part, const Int_t nbodies,Particle
}
}
iextraoffset += opt.star_chemproduction_names.size();
if (opt.star_internalprop_names_aperture.size()>0)
{
for (auto &iextra:opt.star_internalprop_unique_input_indexlist_aperture)
{
extrafield = opt.star_internalprop_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.star_internalprop_names_aperture.size();
if (opt.star_chem_names_aperture.size()>0)
{
for (auto &iextra:opt.star_chem_unique_input_indexlist_aperture)
{
extrafield = opt.star_chem_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.star_chem_names_aperture.size();
if (opt.star_chemproduction_names_aperture.size()>0)
{
for (auto &iextra:opt.star_chemproduction_unique_input_indexlist_aperture)
{
extrafield = opt.star_chemproduction_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.star_chemproduction_names_aperture.size();
}
#endif
#if defined(BHON)
Expand Down Expand Up @@ -2723,6 +2789,39 @@ void ReadHDF(Options &opt, vector<Particle> &Part, const Int_t nbodies,Particle
}
}
iextraoffset += opt.bh_chemproduction_names.size();
if (opt.bh_internalprop_names_aperture.size()>0)
{
for (auto &iextra:opt.bh_internalprop_unique_input_indexlist_aperture)
{
extrafield = opt.bh_internalprop_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.bh_internalprop_names_aperture.size();
if (opt.bh_chem_names_aperture.size()>0)
{
for (auto &iextra:opt.bh_chem_unique_input_indexlist_aperture)
{
extrafield = opt.bh_chem_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.bh_chem_names_aperture.size();
if (opt.bh_chemproduction_names_aperture.size()>0)
{
for (auto &iextra:opt.bh_chemproduction_unique_input_indexlist_aperture)
{
extrafield = opt.bh_chemproduction_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.bh_chemproduction_names_aperture.size();
}
#endif
#if defined(EXTRADMON)
Expand All @@ -2741,6 +2840,17 @@ void ReadHDF(Options &opt, vector<Particle> &Part, const Int_t nbodies,Particle
}
}
iextraoffset += opt.extra_dm_internalprop_names.size();
if (opt.extra_dm_internalprop_names_aperture.size()>0)
{
for (auto &iextra:opt.extra_dm_internalprop_unique_input_indexlist_aperture)
{
extrafield = opt.extra_dm_internalprop_names_aperture[iextra];
if (ThisTask==0 && opt.iverbose>1) cout<<"Opening group "<<hdf_gnames.part_names[k]<<": Data set "<<extrafield<<endl;
partsdatasetall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSet(partsgroup[i*NHDFTYPE+k],extrafield);
partsdataspaceall_extra[i*numextrafields+iextra+iextraoffset] = HDF5OpenDataSpace(partsdatasetall_extra[i*numextrafields+iextra+iextraoffset]);
}
}
iextraoffset += opt.extra_dm_internalprop_names_aperture.size();
}
#endif
}
Expand Down

0 comments on commit 64de17b

Please sign in to comment.