ported to new API
This commit is contained in:
+30
-30
@@ -1,45 +1,45 @@
|
||||
#include <stdlib.h>
|
||||
#include <assert.h>
|
||||
#include <mpi.h>
|
||||
#include <H5Part.h>
|
||||
|
||||
#include <H5.h>
|
||||
#include <H5Block.h>
|
||||
|
||||
#define XSIZE 8
|
||||
#define YSIZE 8
|
||||
#define ZSIZE 8
|
||||
#define DATASIZE XSIZE*YSIZE*ZSIZE
|
||||
#define H5OpenFileParallel H5PartOpenFileParallel
|
||||
#define H5SetStep H5PartSetStep
|
||||
#define H5Block3dSetLayout H5BlockDefine3DFieldLayout
|
||||
#define H5CloseFile H5PartCloseFile
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
int rank, nprocs;
|
||||
h5part_float64_t ex[DATASIZE];
|
||||
h5part_float64_t ey[DATASIZE];
|
||||
h5part_float64_t ez[DATASIZE];
|
||||
h5part_float64_t q[DATASIZE];
|
||||
h5part_int64_t nparticles = DATASIZE;
|
||||
H5PartFile *file;
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
char** argv
|
||||
) {
|
||||
int rank, nprocs;
|
||||
h5_float64_t ex[DATASIZE];
|
||||
h5_float64_t ey[DATASIZE];
|
||||
h5_float64_t ez[DATASIZE];
|
||||
h5_float64_t q[DATASIZE];
|
||||
h5_file_t file;
|
||||
|
||||
// initialize MPI
|
||||
MPI_Init (&argc, &argv);
|
||||
MPI_Comm_rank (MPI_COMM_WORLD, &rank);
|
||||
MPI_Comm_size (MPI_COMM_WORLD, &nprocs);
|
||||
// initialize MPI
|
||||
MPI_Init (&argc, &argv);
|
||||
MPI_Comm_rank (MPI_COMM_WORLD, &rank);
|
||||
MPI_Comm_size (MPI_COMM_WORLD, &nprocs);
|
||||
|
||||
H5PartSetVerbosityLevel(H5PART_VERB_DEBUG);
|
||||
H5SetVerbosityLevel(H5_VERBOSE_INFO);
|
||||
|
||||
file = H5OpenFileParallel("fields.h5", H5PART_WRITE, MPI_COMM_WORLD);
|
||||
H5SetStep(file, 0);
|
||||
H5Block3dSetLayout(file,
|
||||
rank*XSIZE, (rank+1)*XSIZE - 1,
|
||||
0, YSIZE - 1,
|
||||
0, ZSIZE - 1);
|
||||
H5Block3dWriteScalarFieldFloat64(file, "Q", q);
|
||||
H5Block3dWrite3dVectorFieldFloat64(file, "E", ex, ez, ey);
|
||||
H5CloseFile(file);
|
||||
file = H5OpenFile ("fields.h5", H5_O_WRONLY, MPI_COMM_WORLD);
|
||||
H5SetStep(file, 0);
|
||||
H5Block3dSetView (file,
|
||||
rank*XSIZE, (rank+1)*XSIZE - 1,
|
||||
0, YSIZE - 1,
|
||||
0, ZSIZE - 1);
|
||||
H5Block3dWriteScalarFieldFloat64(file, "Q", q);
|
||||
H5Block3dWriteVector3dFieldFloat64(file, "E", ex, ez, ey);
|
||||
H5CloseFile(file);
|
||||
|
||||
MPI_Finalize();
|
||||
return EXIT_SUCCESS;
|
||||
MPI_Finalize();
|
||||
return H5_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
+35
-31
@@ -1,41 +1,45 @@
|
||||
#include <stdlib.h>
|
||||
#include <assert.h>
|
||||
#include <mpi.h>
|
||||
#include <H5.h>
|
||||
#include <H5Part.h>
|
||||
|
||||
#define DATASIZE 32
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
int rank, nprocs;
|
||||
h5part_float64_t x[DATASIZE];
|
||||
h5part_float64_t y[DATASIZE];
|
||||
h5part_float64_t z[DATASIZE];
|
||||
h5part_float64_t px[DATASIZE];
|
||||
h5part_float64_t py[DATASIZE];
|
||||
h5part_float64_t pz[DATASIZE];
|
||||
h5part_int64_t nparticles = DATASIZE;
|
||||
H5PartFile *file;
|
||||
int
|
||||
main (
|
||||
int argc,
|
||||
char** argv
|
||||
) {
|
||||
int rank, nprocs;
|
||||
h5_float64_t x[DATASIZE];
|
||||
h5_float64_t y[DATASIZE];
|
||||
h5_float64_t z[DATASIZE];
|
||||
h5_float64_t px[DATASIZE];
|
||||
h5_float64_t py[DATASIZE];
|
||||
h5_float64_t pz[DATASIZE];
|
||||
h5_int64_t nparticles = DATASIZE;
|
||||
h5_file_t file;
|
||||
|
||||
// initialize MPI
|
||||
MPI_Init (&argc, &argv);
|
||||
MPI_Comm_rank (MPI_COMM_WORLD, &rank);
|
||||
MPI_Comm_size (MPI_COMM_WORLD, &nprocs);
|
||||
|
||||
H5SetVerbosityLevel(4);
|
||||
|
||||
file = H5OpenFile("particles.h5", H5_O_WRONLY, MPI_COMM_WORLD);
|
||||
H5SetStep(file, 0);
|
||||
H5PartSetNumParticles(file, nparticles);
|
||||
H5PartWriteDataFloat64(file, "x", x);
|
||||
H5PartWriteDataFloat64(file, "y", y);
|
||||
H5PartWriteDataFloat64(file, "z", z);
|
||||
H5PartWriteDataFloat64(file, "px", px);
|
||||
H5PartWriteDataFloat64(file, "py", py);
|
||||
H5PartWriteDataFloat64(file, "pz", pz);
|
||||
H5CloseFile(file);
|
||||
|
||||
// initialize MPI
|
||||
MPI_Init (&argc, &argv);
|
||||
MPI_Comm_rank (MPI_COMM_WORLD, &rank);
|
||||
MPI_Comm_size (MPI_COMM_WORLD, &nprocs);
|
||||
|
||||
H5PartSetVerbosityLevel(H5PART_VERB_DEBUG);
|
||||
|
||||
file = H5PartOpenFileParallel("particles.h5", H5PART_WRITE, MPI_COMM_WORLD);
|
||||
H5PartSetStep(file, 0);
|
||||
H5PartSetNumParticles(file, nparticles);
|
||||
H5PartWriteDataFloat64(file, "x", x);
|
||||
H5PartWriteDataFloat64(file, "y", y);
|
||||
H5PartWriteDataFloat64(file, "z", z);
|
||||
H5PartWriteDataFloat64(file, "px", px);
|
||||
H5PartWriteDataFloat64(file, "py", py);
|
||||
H5PartWriteDataFloat64(file, "pz", pz);
|
||||
H5PartCloseFile(file);
|
||||
|
||||
MPI_Finalize();
|
||||
return EXIT_SUCCESS;
|
||||
MPI_Finalize();
|
||||
return H5_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user