hdf5io_class Module


Uses

  • module~~hdf5io_class~~UsesGraph module~hdf5io_class hdf5io_class module~perrors_class perrors_class module~hdf5io_class->module~perrors_class mpi mpi module~hdf5io_class->mpi module~parallel_pipe_class parallel_pipe_class module~hdf5io_class->module~parallel_pipe_class HDF5 HDF5 module~hdf5io_class->HDF5 module~perrors_class->mpi module~parallel_class parallel_class module~perrors_class->module~parallel_class module~parallel_pipe_class->mpi module~parallel_pipe_class->module~parallel_class module~parallel_class->mpi omp_lib omp_lib module~parallel_class->omp_lib

Used by

  • module~~hdf5io_class~~UsedByGraph module~hdf5io_class hdf5io_class module~part3d_class part3d_class module~part3d_class->module~hdf5io_class module~ufield3d_class ufield3d_class module~part3d_class->module~ufield3d_class module~fdist3d_class fdist3d_class module~part3d_class->module~fdist3d_class module~field3d_class field3d_class module~field3d_class->module~hdf5io_class module~field3d_class->module~ufield3d_class module~field2d_class field2d_class module~field2d_class->module~hdf5io_class module~field2d_class->module~field3d_class module~field2d_class->module~ufield3d_class module~ufield2d_class ufield2d_class module~field2d_class->module~ufield2d_class module~fpois2d_class fpois2d_class module~field2d_class->module~fpois2d_class module~fft2d_class fft2d_class module~field2d_class->module~fft2d_class module~simulation_class simulation_class module~simulation_class->module~hdf5io_class module~simulation_class->module~field3d_class module~simulation_class->module~field2d_class module~beam3d_class beam3d_class module~simulation_class->module~beam3d_class module~species2d_class species2d_class module~simulation_class->module~species2d_class module~simulation_class->module~fdist3d_class module~fdist2d_class fdist2d_class module~simulation_class->module~fdist2d_class module~ufield3d_class->module~hdf5io_class module~ufield3d_class->module~ufield2d_class module~part2d_class part2d_class module~part2d_class->module~hdf5io_class module~part2d_class->module~ufield2d_class module~part2d_class->module~fdist2d_class module~beam3d_class->module~hdf5io_class module~beam3d_class->module~part3d_class module~beam3d_class->module~field3d_class module~beam3d_class->module~field2d_class module~beam3d_class->module~fdist3d_class module~ufield2d_class->module~hdf5io_class module~species2d_class->module~hdf5io_class module~species2d_class->module~field3d_class module~species2d_class->module~field2d_class module~species2d_class->module~part2d_class module~species2d_class->module~fdist2d_class module~fpois2d_class->module~ufield2d_class module~fft2d_class->module~ufield2d_class module~fdist3d_class->module~ufield3d_class program~quickpic quickpic program~quickpic->module~simulation_class module~fdist2d_class->module~ufield2d_class

Contents


Interfaces

private interface add_h5_atribute

  • private subroutine add_h5_atribute_str(objID, name, attribute)

    Arguments

    Type IntentOptional AttributesName
    integer(kind=hid_t), intent(in) :: objID
    character(len=*), intent(in) :: name
    character(len=*), intent(in) :: attribute
  • private subroutine add_h5_atribute_str_v1(objID, name, attribute)

    Arguments

    Type IntentOptional AttributesName
    integer(kind=hid_t), intent(in) :: objID
    character(len=*), intent(in) :: name
    character(len=*), intent(in), dimension(:):: attribute
  • private subroutine add_h5_atribute_single(objID, name, attribute)

    Arguments

    Type IntentOptional AttributesName
    integer(kind=hid_t), intent(in) :: objID
    character(len=*), intent(in) :: name
    real, intent(in) :: attribute
  • private subroutine add_h5_atribute_v1_single(objID, name, attribute)

    Arguments

    Type IntentOptional AttributesName
    integer(kind=hid_t), intent(in) :: objID
    character(len=*), intent(in) :: name
    real, intent(in), dimension(:):: attribute
  • private subroutine add_h5_atribute_int(objID, name, attribute)

    Arguments

    Type IntentOptional AttributesName
    integer(kind=hid_t), intent(in) :: objID
    character(len=*), intent(in) :: name
    integer, intent(in) :: attribute
  • private subroutine add_h5_atribute_v1_int(objID, name, attribute)

    Arguments

    Type IntentOptional AttributesName
    integer(kind=hid_t), intent(in) :: objID
    character(len=*), intent(in) :: name
    integer, intent(in), dimension(:):: attribute

public interface pwfield

  • private subroutine pwfield_3d(pp, perr, file, fd, gs, ls, noff, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:,:):: fd
    integer, intent(in), dimension(3):: gs
    integer, intent(in), dimension(3):: ls
    integer, intent(in), dimension(2):: noff
    integer, intent(inout) :: ierr
  • private subroutine pwfield_2d(pp, perr, file, fd, gs, ls, noff, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:):: fd
    integer, intent(in), dimension(2):: gs
    integer, intent(in), dimension(2):: ls
    integer, intent(in) :: noff
    integer, intent(inout) :: ierr

public interface pwfield_pipe

  • private subroutine pwfield_3d_pipe(pp, perr, file, fd, gs, ls, noff, rtag, stag, id, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:,:):: fd
    integer, intent(in), dimension(3):: gs
    integer, intent(in), dimension(3):: ls
    integer, intent(in), dimension(2):: noff
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id
    integer, intent(inout) :: ierr
  • private subroutine pwfield_2d_pipe(pp, perr, file, fd, gs, ls, noff, rtag, stag, id, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:):: fd
    integer, intent(in), dimension(2):: gs
    integer, intent(in), dimension(2):: ls
    integer, intent(in), dimension(2):: noff
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id
    integer, intent(inout) :: ierr

public interface wfield_pipe

  • private subroutine wfield_2d_pipe(pp, perr, file, fd, gs, ls, noff, rtag, stag, id, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:):: fd
    integer, intent(in), dimension(2):: gs
    integer, intent(in), dimension(2):: ls
    integer, intent(in), dimension(2):: noff
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id
    integer, intent(inout) :: ierr

public interface pwpart_pipe

  • private subroutine pwpart_3d_pipe(pp, perr, file, part, npp, dspl, delta, rtag, stag, id, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:):: part
    integer, intent(in) :: npp
    integer, intent(in) :: dspl
    real, intent(in), dimension(3):: delta
    integer, intent(in) :: rtag
    integer, intent(in) :: stag
    integer, intent(inout) :: id
    integer, intent(inout) :: ierr

public interface pwpart

  • private subroutine pwpart_2d(pp, perr, file, part, npp, dspl, delta, ierr)

    Arguments

    Type IntentOptional AttributesName
    class(parallel_pipe), intent(in), pointer:: pp
    class(perrors), intent(in), pointer:: perr
    class(hdf5file), intent(in) :: file
    real, intent(in), dimension(:,:):: part
    integer, intent(in) :: npp
    integer, intent(in) :: dspl
    real, intent(in), dimension(2):: delta
    integer, intent(inout) :: ierr

Derived Types

type, public :: hdf5file

Components

TypeVisibility AttributesNameInitial
character(len=100), private :: filename ='file.h5'
character(len=100), private :: timeunits ='a.u.'
character(len=100), private :: dataname ='Data'
character(len=100), private :: units ='a.u.'
character(len=100), private :: label ='Data'
character(len=100), private :: ty ='grid'
integer, private :: n =1
integer, private :: rank =2
real, private :: t =1.0
real, private :: dt =1.0
character(len=100), private, dimension(3):: axisname =(/'x1', 'x2', 'x3'/)
character(len=100), private, dimension(3):: axislabel =(/'x1', 'x2', 'x3'/)
character(len=100), private, dimension(3):: axisunits =(/'a.u.', 'a.u.', 'a.u.'/)
real, private, dimension(3):: axismax =(/1.0, 1.0, 1.0/)
real, private, dimension(3):: axismin =(/0.0, 0.0, 0.0/)

Type-Bound Procedures

generic, public :: new => init_hdf5file
procedure, private :: init_hdf5file

Functions

private function detect_precision()

Arguments

None

Return Value integer(kind=hid_t)


Subroutines

private subroutine init_hdf5file(this, filename, timeunits, ty, n, t, dt, axisname, axislabel, axisunits, axismax, axismin, dataname, units, label, rank)

Arguments

Type IntentOptional AttributesName
class(hdf5file), intent(inout) :: this
character(len=*), intent(in), optional :: filename
character(len=*), intent(in), optional :: timeunits
character(len=*), intent(in), optional :: ty
integer, intent(in), optional :: n
real, intent(in), optional :: t
real, intent(in), optional :: dt
character(len=*), intent(in), optional dimension(3):: axisname
character(len=*), intent(in), optional dimension(3):: axislabel
character(len=*), intent(in), optional dimension(3):: axisunits
real, intent(in), optional dimension(3):: axismax
real, intent(in), optional dimension(3):: axismin
character(len=*), intent(in), optional :: dataname
character(len=*), intent(in), optional :: units
character(len=*), intent(in), optional :: label
integer, intent(in), optional :: rank

private subroutine add_h5_atribute_str(objID, name, attribute)

Arguments

Type IntentOptional AttributesName
integer(kind=hid_t), intent(in) :: objID
character(len=*), intent(in) :: name
character(len=*), intent(in) :: attribute

private subroutine add_h5_atribute_str_v1(objID, name, attribute)

Arguments

Type IntentOptional AttributesName
integer(kind=hid_t), intent(in) :: objID
character(len=*), intent(in) :: name
character(len=*), intent(in), dimension(:):: attribute

private subroutine add_h5_atribute_single(objID, name, attribute)

Arguments

Type IntentOptional AttributesName
integer(kind=hid_t), intent(in) :: objID
character(len=*), intent(in) :: name
real, intent(in) :: attribute

private subroutine add_h5_atribute_v1_single(objID, name, attribute)

Arguments

Type IntentOptional AttributesName
integer(kind=hid_t), intent(in) :: objID
character(len=*), intent(in) :: name
real, intent(in), dimension(:):: attribute

private subroutine add_h5_atribute_int(objID, name, attribute)

Arguments

Type IntentOptional AttributesName
integer(kind=hid_t), intent(in) :: objID
character(len=*), intent(in) :: name
integer, intent(in) :: attribute

private subroutine add_h5_atribute_v1_int(objID, name, attribute)

Arguments

Type IntentOptional AttributesName
integer(kind=hid_t), intent(in) :: objID
character(len=*), intent(in) :: name
integer, intent(in), dimension(:):: attribute

private subroutine wrattr_file(this, file_id, xferID)

Arguments

Type IntentOptional AttributesName
class(hdf5file), intent(in) :: this
integer(kind=hid_t), intent(in) :: file_id
integer(kind=hid_t) :: xferID

private subroutine wrattr_dataset(this, dset_id, unit, name)

Arguments

Type IntentOptional AttributesName
class(hdf5file), intent(in) :: this
integer(kind=hid_t), intent(in) :: dset_id
character(len=*), intent(in), optional :: unit
character(len=*), intent(in), optional :: name

private subroutine pwfield_3d(pp, perr, file, fd, gs, ls, noff, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:,:):: fd
integer, intent(in), dimension(3):: gs
integer, intent(in), dimension(3):: ls
integer, intent(in), dimension(2):: noff
integer, intent(inout) :: ierr

private subroutine pwfield_2d(pp, perr, file, fd, gs, ls, noff, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:):: fd
integer, intent(in), dimension(2):: gs
integer, intent(in), dimension(2):: ls
integer, intent(in) :: noff
integer, intent(inout) :: ierr

private subroutine pwfield_3d_pipe(pp, perr, file, fd, gs, ls, noff, rtag, stag, id, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:,:):: fd
integer, intent(in), dimension(3):: gs
integer, intent(in), dimension(3):: ls
integer, intent(in), dimension(2):: noff
integer, intent(in) :: rtag
integer, intent(in) :: stag
integer, intent(inout) :: id
integer, intent(inout) :: ierr

private subroutine pwfield_2d_pipe(pp, perr, file, fd, gs, ls, noff, rtag, stag, id, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:):: fd
integer, intent(in), dimension(2):: gs
integer, intent(in), dimension(2):: ls
integer, intent(in), dimension(2):: noff
integer, intent(in) :: rtag
integer, intent(in) :: stag
integer, intent(inout) :: id
integer, intent(inout) :: ierr

private subroutine wfield_2d_pipe(pp, perr, file, fd, gs, ls, noff, rtag, stag, id, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:):: fd
integer, intent(in), dimension(2):: gs
integer, intent(in), dimension(2):: ls
integer, intent(in), dimension(2):: noff
integer, intent(in) :: rtag
integer, intent(in) :: stag
integer, intent(inout) :: id
integer, intent(inout) :: ierr

private subroutine pwpart_2d(pp, perr, file, part, npp, dspl, delta, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:):: part
integer, intent(in) :: npp
integer, intent(in) :: dspl
real, intent(in), dimension(2):: delta
integer, intent(inout) :: ierr

private subroutine pwpart_3d_pipe(pp, perr, file, part, npp, dspl, delta, rtag, stag, id, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:):: part
integer, intent(in) :: npp
integer, intent(in) :: dspl
real, intent(in), dimension(3):: delta
integer, intent(in) :: rtag
integer, intent(in) :: stag
integer, intent(inout) :: id
integer, intent(inout) :: ierr

public subroutine wpart(pp, perr, file, part, npp, dspl, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(in), dimension(:,:):: part
integer, intent(in) :: npp
integer, intent(in) :: dspl
integer, intent(inout) :: ierr

public subroutine rpart(pp, perr, file, part, npp, ierr)

Arguments

Type IntentOptional AttributesName
class(parallel_pipe), intent(in), pointer:: pp
class(perrors), intent(in), pointer:: perr
class(hdf5file), intent(in) :: file
real, intent(inout), dimension(:,:):: part
integer, intent(out) :: npp
integer, intent(inout) :: ierr