Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Introduction
  2. Files provided
  3. Running a test example
  4. Structure of the parameter files
  5. Storing the EIRENE triangular grids in IMAS
    1. Structure of EIRENE files keeping the grid
    2. Presentation of EIRENE grid in GGD
    3. Module  triangular_grid_modile 
      1. Data types provided
      2. Methods provided 
    4. Module  triangular_grid_ids_io
      1. Data types provided
      2. Methods provided
  6. Storing the EIRENE input wrapper
    1. Structure of EIRENE input files
    2. Module eirene_data_io
      1. Data types provided
      2. Methods provided 
    3. Module imas_data_io
    4. ???
    5. Main program files  save_input_main.f90  and  provide_input_main.f90
  7. Things to be done

...

The structure of this document is as follows. Section 2 lists the files provided. Section 3 describes how to run a test example. Section 4 presents the parameter files controlling the wrapper programs. Section 5 ??????????????????????????????????????describes the organization of the grid storage. In Section 6, the wrapper for the EIRENE input is described. Finally, the things to be done are outlined in Section 7.

Files provided

The files listed below can be found in the public directory ~g2yyakov/public/eirene/version0.9.

...

! Parameters that control saving the EIRENE input to IMAS.
! Use '!' when inserting comment lines.
! You can add comments at the end of each line unless this line holds a text that may contain blanks (e.g., a description field).
! Do not change the order of the parameters.
!
eirene                                         <= IMAS database
10003                                         <= shot
1                                                <= run
'IDS created to test EIRENE input storage'     <= IDS comment
'Yurii Yakovenko'                          <= input provider
'long agoonce upon a time'                                    < <= creation date
!!! grid data
"SN"                                         <= grid name
4                                              <= grid index in dictionary (single null)
"EIRENE grid for single null configuration"  <= grid description
"primary_standard"                 <= poloidal space name
"primary poloidal triangular grid" <= poloidal space description
soledge3x.npco_char                <= grid node file
soledge3x.elemente                 <= grid triangle file
soledge3x.neighbors                <= grid neighbor file
!!! Physical quantities
bx.dat       <= bx file
by.dat       <= by file
bz.dat       <= bz file
Btotal.dat   <= Btotal file
vx.dat       <= vx file
vy.dat       <= vy file
vz.dat      <= vz file
Te.dat       <= Te file
!!! Ion physical quantities
2           <= Number of ion species
! Ion species 1
D  2  1  1  <= label, mass, Z_ion, Z_element
TD.dat      <= temperature file
nD.dat      <= density file
! Ion species 2
T  3  1  1  <= label, mass, Z_ion, Z_element
TT.dat      <= temperature file
nT.dat      <= density file

A tempalte tempalate of the file provide_input.par that controls the program provide_input.exe is as follows:

...

Argument

Type

Intent

Description

subsetstype(ids_generic_grid_dynamic_grid_subset), pointer, dimension(:)resultIDS space structure holding the grid
eirene_spacetype(ids_generic_grid_dynamic_space)inthe GGD grid space to which the subsets are attached
eirene_space_indexintegerinthe index of this space in the 'space' AoS
gridtype(triangular_grid)inThe grid to be saved

...

Argument

Type

Intent

Description

subset

type(ids_generic_grid_dynamic_grid_subset)

pointer

Pointer to the  grid_subset  AOS element to hold the subset

subset_id

integer

in

Integer identifier of the subset

...


EIRENE input wrappers

Now the subroutines are united in wrapper programs, but, if desired, they can be incorporated into the code. Only a part of input quantities is now processed. ?????????

Structure of EIRENE input files

??????????

 Module eirene_data_io

This module provides tools for dealing with files containing EIRENE input data.

...

  • deallocate_data_set
  • read_quantity_from_file
  • write_quantity_to_file

Module imas_data_io

The module contains???

Module edge_profiles_io

?????

Module equilibrium_io

????????????

Module global_parameters

??????????????

Module imas_controls_for_input

????????????

Main files  save_input_main.f90   and  provide_input_main.f90 

The wrapper program contained in the file save_input_main.f90  performs the following actions:

  • ????????      Initializes an instance of the  edge_profiles   IDS IDS in the code memory ( with writing some mandatory fields), using the subroutine  setIDSFundamentals  (module ids_utility).
  • Writes some labels to the IDS.
  • Allocates the  grid_ggd  AOS with only one element.
  • Reads information about the grid from files and establishes grid edges, using the  read_eirene_grid  function (module  triangular_grid_module).
  • Puts the grid information into the IDS, using the  put_triangular_grid_to_ids  subroutine (module  triangular_grid_ids_io).
  • Creates the corresponding IDS in an IMAS database, using the  createIDS  subroutine (module  ids_utility).
  • Writes the IDS prepared in the code memory to the IMAS database and closes the database, using the subroutine  putIDS  (module  ids_utility).

The program contained in the file  recover_grid.f90  performs the following actions:

...