Skip to content
Snippets Groups Projects
Commit ac6755c3 authored by Cristian Lalescu's avatar Cristian Lalescu
Browse files

fixes sampling example for test_tracer_set

parent 2f6dc33d
Branches
Tags
No related merge requests found
......@@ -410,6 +410,12 @@ class TEST(_code):
if not os.path.exists(os.path.join(self.work_dir, self.simname + '.h5')):
self.write_par(
particle_ic = particle_initial_condition)
if self.dns_type == 'test_tracer_set':
ofile = h5py.File(os.path.join(self.work_dir, 'test_particle_sample.h5'), 'w')
ofile.create_group('tracers0')
ofile.create_group('tracers0/position')
ofile.create_group('tracers0/velocity')
ofile.close()
if self.dns_type == 'test_interpolation':
if type(particle_initial_condition) == type(None):
pbase_shape = (self.parameters['nparticles'],)
......
......@@ -102,26 +102,59 @@ int test_tracer_set<rnumber>::do_work(void)
pset.init(bla);
// initialize particle output object
particles_output_hdf5<long long int, double, 3> *particles_output_writer_mpi = new particles_output_hdf5<
particles_output_hdf5<long long int, double, 3> *particle_output_writer = new particles_output_hdf5<
long long int, double, 3>(
MPI_COMM_WORLD,
"tracers0",
pset.getTotalNumberOfParticles(),
0);
particles_output_sampling_hdf5<long long int, double, 3> *particle_sample_writer = new particles_output_sampling_hdf5<
long long int, double, 3>(
MPI_COMM_WORLD,
pset.getTotalNumberOfParticles(),
"test_particle_sample.h5",
"tracers0",
"position/0");
fti->set_field(vec_field);
trhs->setVelocity(fti);
particle_solver psolver(pset, 0);
particle_output_writer->open_file("test_particle_checkpoint.h5");
psolver.template writeCheckpoint<3>(particle_output_writer);
pset.writeSample(
vec_field,
particle_sample_writer,
"tracers0",
"velocity",
psolver.getIteration());
pset.writeStateTriplet(
0,
particle_sample_writer,
"tracers0",
"position",
psolver.getIteration());
psolver.Euler(0.001, *trhs);
psolver.setIteration(1);
particles_output_writer_mpi->open_file("test_particle_checkpoint.h5");
psolver.template writeCheckpoint<3>(particles_output_writer_mpi);
particles_output_writer_mpi->close_file();
psolver.template writeCheckpoint<3>(particle_output_writer);
pset.writeSample(
vec_field,
particle_sample_writer,
"tracers0",
"velocity",
psolver.getIteration());
pset.writeStateTriplet(
0,
particle_sample_writer,
"tracers0",
"position",
psolver.getIteration());
particle_output_writer->close_file();
// deallocate
delete particles_output_writer_mpi;
delete particle_sample_writer;
delete particle_output_writer;
delete trhs;
delete fti;
delete kk;
......
......@@ -159,7 +159,7 @@ class abstract_particle_set
template <typename field_rnumber,
field_backend be,
field_components fc>
int sample(
int writeSample(
field<field_rnumber, be, fc> *field_to_sample,
particles_output_sampling_hdf5<partsize_t, particle_rnumber, 3> *particle_sample_writer,
const std::string species_name,
......@@ -190,7 +190,7 @@ class abstract_particle_set
return EXIT_SUCCESS;
}
int sample_state_triple(
int writeStateTriplet(
const int i0,
particles_output_sampling_hdf5<partsize_t, particle_rnumber, 3> *particle_sample_writer,
const std::string species_name,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment