1. 6.1 ITM Types

  • ITM types are not a separate library any longer
  • Defined as a part of UAL
  • Available for Fortran only
  • defines:
    • types: ids_realids_int
    • values: ids_int_invalidids_real_invalid
    • routines: ids_is_valid for: int, array of int, real, array of reals

 

CHEAT SHEET
 ITMIMAS
module loading
shell> module load itmtypes
shell> module load imas
pkgconfigpkg-config --libs --cflags itmtypes-amd64_<compiler>_<compiler_version>.pc

pkg-config --libs --cflags imas-<compiler> (where <compiler>=ifort,gfortran,...)

using library (Fortran)
use itm_types
use ids_types

2. 6.2 ITM constants

  • Available for Fortran and CPP
  • Two separate libraries: imas-constants and imas-identifiers

 

CHEAT SHEET
 ITMIMAS (constants)IMAS (identifiers)
module loading
shell> module load itm-constants
shell> module load imas
shell> module load imas
pkgconfig (Fortran)pkg-config --libs --cflags itm-constantspkg-config --libs --cflags imas-<compiler> (<compiler>=ifort ,gfortran,...)pkg-config --libs --cflags imas-identifiers-<compiler> (<compiler>=ifort, gfortran,...)
using library (Fortran)
use itm_constants
use imas_constants_module
use imas_identifiers_module

3. 6.3 XMLLib

 

CHEAT SHEET
 ITMIMAS
module loading
shell> module load xmllib
shell> module load imas
pkgconfig (Fortran)pkg-config --libs --cflags xmllib-<compiler>.pcpkg-config --libs --cflags imas-xmllib
using library (Fortran)

classic:

use xml_file_reader, only: fill_param
use euitm_schemas, only: type_param
use itm_types
use xml2eg_mdl
use euitm_xml_parser, only: element, tree, euitm_xml_parse, find_parameter

xpath:

use xml_file_reader, only: fill_param
use euitm_schemas, only: type_param
use euitm_xml_parser, only: element, tree, euitm_xml_parse, find_parameter
use xmllib_pathquery, only: xmlget, xmlget_allocatable, xmlsize
use string_manipulation_tools, only: count_words_in_string

xml2eg wrapper:

use f90_file_reader, only: file2buffer
use xml2eg_mdl, only: xml2eg_parse_memory, xml2eg_get, type_xml2eg_document, xml2eg_free_doc, set_verbose
 

 

Sample codes:

ITMIMAS
# You can always find sample codes inside XMLLIB's installation directory
# ITM version
 
> cd $ITM_XMLLIB_DIR/$ITM_XMLLIB_VERSION/$DATAVERSION/example/
> tree -L 1 --charset=ascii
.
|-- classic
|-- cpp
|-- xml2eg
`-- xpath
 

 

4. 6.4 GGD Library

  • Defined as part of IMAS
  • Available for Fortran only
  • Available for imas/3.12.0/ual/3.6.3 - imas/3.15.0/ual/3.6.4
  • Defined as multiple module files (ids_grid is one of them)
CHEAT SHEET
 ITMIMAS
module loading
shell> module load itmenv
shell> module load itmggd 
shell> module load imas/3.15.0/ual/3.6.4
pkgconfig (Fortran)pkg-config --libs --cflags itmggd-<compiler>.pc

pkg-config -- libs --cflags imas-lowlevel imas-<compiler> ggd-<compiler> (where <compiler>=ifort,gfortran,...)

using library (Fortran)
use euITM_schemas
use euITM_routines
use itm_grid
use ids_schemas
use ids_routines
use ids_grid
  • No labels