...
To overcome disadvantages of solutions presented above, and keep a desired level of flexibility, user working environment can be set by two (meta)modules
Module imaslibs
Code Block |
---|
imaslibs/<compiler_vendor>/<compiler_version>/<version of this module> e.g. imaslibs[/intel/17.0/1.0] <= part in brackets can be skipped to use defaults |
Module will load:
- Compiler
(e.g. intel/17.0
) - All components independent from IMAS/Data Dictionary (group B) , gathered together as a set of modules. Such set of modules will have its own version (e.g.
1.0
)
Module imasenv
...
Code Block |
---|
imasenv/<imas_ver>/ual/<engine_ver>/<version of this module> e.g. imasenv[/3.19.1/ual/3.8.2/1.0] <= part in brackets can be skipped to use defaults |
Module will load:
- imas module
(e.g.
imasenv[/3.19.1/ual/3.8.2 ) - All components dependent on IMAS/Data Dictionary (group D), gathered together as a set of modules. Such set of modules will have its own version (e.g.
1.0
)
Presented solution:
- Easy to use by users (to use default versions is enough to write
module load imaslibs
;module load imasenv)
- Flexibility: Full names can be specified to use non-default versions of library sets