plasma Submodule

plasma.f90 uses submodules in plasma_input_.f90 and plasma_output_.f90 for raw, hdf5 or netcdf4 I/O


Uses

    • Ancestors:
    • io
  • module~~plasma~~UsesGraph module~plasma plasma module~reader reader module~plasma->module~reader module~io io module~plasma->module~io iso_fortran_env iso_fortran_env module~reader->iso_fortran_env module~phys_consts phys_consts module~reader->module~phys_consts module~pathlib pathlib module~io->module~pathlib ieee_arithmetic ieee_arithmetic module~io->ieee_arithmetic module~io->iso_fortran_env module~io->module~phys_consts module~mpimod mpimod module~io->module~mpimod module~grid grid module~io->module~grid iso_c_binding iso_c_binding module~io->iso_c_binding module~pathlib->iso_fortran_env module~phys_consts->iso_fortran_env module~mpimod->iso_fortran_env module~mpimod->module~phys_consts mpi mpi module~mpimod->mpi module~grid->module~reader module~grid->iso_fortran_env module~grid->module~phys_consts module~grid->module~mpimod module~mesh mesh module~grid->module~mesh module~mesh->module~phys_consts

Used by

  • module~~plasma~~UsedByGraph module~plasma plasma module~plasma_output_hdf5 plasma_output_hdf5 module~plasma_output_hdf5->module~plasma module~plasma_input_raw plasma_input_raw module~plasma_input_raw->module~plasma module~plasma_input_hdf5 plasma_input_hdf5 module~plasma_input_hdf5->module~plasma module~plasma_output_raw plasma_output_raw module~plasma_output_raw->module~plasma module~plasma_output_hdf5~2 plasma_output_hdf5 module~plasma_output_hdf5~2->module~plasma

Contents


Interfaces

interface

  • module subroutine input_root_currents(outdir, flagoutput, ymd, UTsec, J1, J2, J3)

    Arguments

    Type IntentOptional AttributesName
    character(len=*), intent(in) :: outdir
    integer, intent(in) :: flagoutput
    integer, intent(in), dimension(3):: ymd
    real(kind=wp), intent(in) :: UTsec
    real(kind=wp), intent(out), dimension(:,:,:):: J1
    real(kind=wp), intent(out), dimension(:,:,:):: J2
    real(kind=wp), intent(out), dimension(:,:,:):: J3

interface

  • module subroutine input_root_mpi(x1, x2all, x3all, indatsize, ns, vs1, Ts)

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(-1:):: x1
    real(kind=wp), intent(in), dimension(-1:):: x2all
    real(kind=wp), intent(in), dimension(-1:):: x3all
    character(len=*), intent(in) :: indatsize
    real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: ns
    real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: vs1
    real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: Ts

interface

  • module subroutine output_root_stream_mpi(outdir, flagoutput, ymd, UTsec, vs2, vs3, ns, vs1, Ts, Phiall, J1, J2, J3)

    Arguments

    Type IntentOptional AttributesName
    character(len=*), intent(in) :: outdir
    integer, intent(in) :: flagoutput
    integer, intent(in), dimension(3):: ymd
    real(kind=wp), intent(in) :: UTsec
    real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs2
    real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs3
    real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: ns
    real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs1
    real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: Ts
    real(kind=wp), intent(in), dimension(:,:,:):: Phiall
    real(kind=wp), intent(in), dimension(:,:,:):: J1
    real(kind=wp), intent(in), dimension(:,:,:):: J2
    real(kind=wp), intent(in), dimension(:,:,:):: J3

Subroutines

subroutine input_workers_currents(J1, J2, J3)

WORKER INPUT FUNCTIONS FOR GETTING CURRENT DENSITIES

Read more…

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(out), dimension(:,:,:):: J1
real(kind=wp), intent(out), dimension(:,:,:):: J2
real(kind=wp), intent(out), dimension(:,:,:):: J3

subroutine input_workers_mpi(ns, vs1, Ts)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: ns
real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: vs1
real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: Ts

subroutine output_workers_mpi(vs2, vs3, ns, vs1, Ts, J1, J2, J3)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs2
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs3
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: ns
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs1
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: Ts
real(kind=wp), intent(in), dimension(:,:,:):: J1
real(kind=wp), intent(in), dimension(:,:,:):: J2
real(kind=wp), intent(in), dimension(:,:,:):: J3

Module Procedures

module procedure input_plasma module subroutine input_plasma(x1, x2, x3all, indatsize, ns, vs1, Ts)

A BASIC WRAPPER FOR THE ROOT AND WORKER INPUT FUNCTIONS BOTH ROOT AND WORKERS CALL THIS PROCEDURE SO UNALLOCATED VARIABLES MUST BE DECLARED AS ALLOCATABLE, INTENT(INOUT)

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(in), dimension(-1:):: x1
real(kind=wp), intent(in), dimension(-1:):: x2
real(kind=wp), intent(in), dimension(-1:):: x3all
character(len=*), intent(in) :: indatsize
real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: ns
real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: vs1
real(kind=wp), intent(out), dimension(-1:,-1:,-1:,:):: Ts

module procedure input_plasma_currents module subroutine input_plasma_currents(outdir, flagoutput, ymd, UTsec, J1, J2, J3)

READS, AS INPUT, A FILE GENERATED BY THE GEMINI.F90 PROGRAM. THIS SUBROUTINE IS A WRAPPER FOR SEPARATE ROOT/WORKER CALLS

Read more…

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: outdir
integer, intent(in) :: flagoutput
integer, intent(in), dimension(3):: ymd
real(kind=wp), intent(in) :: UTsec
real(kind=wp), intent(out), dimension(:,:,:):: J1
real(kind=wp), intent(out), dimension(:,:,:):: J2
real(kind=wp), intent(out), dimension(:,:,:):: J3

module procedure output_plasma module subroutine output_plasma(outdir, flagoutput, ymd, UTsec, vs2, vs3, ns, vs1, Ts, Phiall, J1, J2, J3)

A BASIC WRAPPER FOR THE ROOT AND WORKER OUTPUT FUNCTIONS BOTH ROOT AND WORKERS CALL THIS PROCEDURE SO UNALLOCATED VARIABLES MUST BE DECLARED AS ALLOCATABLE, INTENT(INOUT)

Arguments

Type IntentOptional AttributesName
character(len=*), intent(in) :: outdir
integer, intent(in) :: flagoutput
integer, intent(in), dimension(3):: ymd
real(kind=wp), intent(in) :: UTsec
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs2
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs3
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: ns
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: vs1
real(kind=wp), intent(in), dimension(-1:,-1:,-1:,:):: Ts
real(kind=wp), intent(inout), dimension(:,:,:), allocatable:: Phiall
real(kind=wp), intent(in), dimension(:,:,:):: J1
real(kind=wp), intent(in), dimension(:,:,:):: J2
real(kind=wp), intent(in), dimension(:,:,:):: J3