debug_io_dist

Module

Description

$Id$

! debug_io_dist.f90 !!!

Distributed debug-IO (i.e. each process writes its own file data/procX)

The file format written by output() (and used, e.g. in var.dat) consists of the followinig Fortran records:

  1. data(mx,my,mz,nvar)

  2. t(1), x(mx), y(my), z(mz), dx(1), dy(1), dz(1)

or 2. t(1), x(mx), y(my), z(mz), dx(1), dy(1), dz(1), deltay(1)

Here nvar denotes the number of slots, i.e. 1 for one scalar field, 3 for one vector field, 8 for var.dat in the case of MHD with entropy.

11-Dec-2011/Bourdin.KIS: moved debug-IO from ‘io_dist’ into separate module

Quick access

Variables:

data_start, fhandle, io_filetype, io_filetype_v, io_initialized, io_memtype, io_memtype_v, output_pencil, output_penciled_scal_c, output_penciled_vect_c

Routines:

commit_gridio_types(), commit_io_type_vect(), commit_io_type_vect_1d(), output_pencil_scal(), output_pencil_vect(), output_scal(), output_vect(), read_grid_data(), write_grid_data(), write_record_info()

Needed modules

Variables

  • debug_io/lun_input [integer,public/optional/default=89]
  • debug_io/lun_output [integer,public/optional/default=92]
  • debug_io/output [public]
  • debug_io/output_pencil [public]
  • debug_io/output_penciled_scal_c [external]
  • debug_io/output_penciled_vect_c [external]

Subroutines and functions

subroutine  debug_io/output_vect(file, a, nv)

write snapshot file, always write time and mesh, could add other things version for vector field

11-apr-97/axel: coded

Parameters:
  • file [character]

  • a (mx,my,mz,nv) [real]

  • nv [integer]

Use :

messages (outlog()), mpicomm (start_serialize(), end_serialize())

Call to:

start_serialize(), outlog(), end_serialize(), stop_it(), output_penciled_vect_c(), output_penciled_scal_c()

subroutine  debug_io/output_scal(file, a, nv)

write snapshot file, always write time and mesh, could add other things version for scalar field

11-apr-97/axel: coded

Parameters:
  • file [character]

  • a (mx,my,mz) [real]

  • nv [integer]

Use :

messages (outlog()), mpicomm (stop_it(), start_serialize(), end_serialize())

Call to:

stop_it(), start_serialize(), outlog(), end_serialize(), output_penciled_vect_c(), output_penciled_scal_c()

subroutine  debug_io/output_pencil_vect(file, a, ndim)

Write snapshot file of penciled vector data (for debugging). Wrapper to the C routine output_penciled_vect_c.

15-feb-02/wolf: coded

$ use OMP_lib, only: omp_in_parallel

Parameters:
  • file [character,in]

  • a (nx,ndim) [real,in]

  • ndim [integer,in,]

Call to:

output_penciled_vect_c(), stop_it(), output_penciled_scal_c()

subroutine  debug_io/output_pencil_scal(file, a, ndim)

Write snapshot file of penciled scalar data (for debugging). Wrapper to the C routine output_penciled_scal_c.

15-feb-02/wolf: coded

Parameters:
  • file [character,in]

  • a (*) [real,in]

  • ndim [integer,in]

Use :

mpicomm (stop_it())

Call to:

stop_it(), output_penciled_scal_c()