Release V1.8.4
TRUST is a thermalhydraulic software package for CFD simulations.
It was originally designed for incompressible monophasic flows, but an increasing effort is made towards simulating real compressible multiphasic flows.
This software is OpenSource (BSD license).
New TRUST version released v1.8.4
is now available on GitHub: https://github.com/cea-trust-platform/trust-code
Table of contents
- How to install?
- How to run preinstalled version?
- TRUST Release notes
- TRUST Developer notes
- externalpackages Release notes
- Version tested on several OS
- Version portability with several compilers
TRUST support team: [email protected]
Website: http://triocfd.cea.fr
1. How to install?
First method:
git clone https://github.com/cea-trust-platform/trust-code.git TRUST-1.8.4
cd TRUST-1.8.4
wget ftp://ftp.cea.fr/pub/TRUST/externalpackages/externalpackages-1.8.4.tar
tar xf externalpackages-1.8.4.tar
./configure -help # To see the possible configure options. On various OS, we configure TRUST with OPTIONS -force_provided_mpich (DO NOT use it on HPC clusters!)
./configure $OPTIONS # where $OPTIONS is the list of selected options.
make
Second method:
wget ftp://ftp.cea.fr/pub/TRUST/TRUST/Version1.8.4/TRUST-1.8.4.tar.gz
tar xzf TRUST-1.8.4.tar.gz
cd TRUST-1.8.4
./configure -help # To see the possible configure options. On various OS, we configure TRUST with OPTIONS -force_provided_mpich (DO NOT use it on HPC clusters!)
./configure $OPTIONS # where $OPTIONS is the list of selected options.
make
Warning: Check carefully the MPI version you want to use for parallel computing before installing the code, especially onto a HPC cluster.
The command mpicxx should be found into the bin directory of the MPI version you plan to use, to check that, run:
type mpicxx
2. How to run preinstalled version?
-
for TOPAZE and IRENE (Skylake & AMD Rome) supercomputers (64-bit integers version):
source /ccc/cont002/home/den/triou/env_TRUST-1.8.4-int64.sh -
for TOPAZE and IRENE (AMD Rome) supercomputers (GPU version):
source /ccc/cont002/home/den/triou/env_TRUST-1.8.4-gpu.sh -
for IDRIS (jean-zay) supercomputer (64-bit integers version):
source /gpfswork/rech/fej/ugz82dj/env_TRUST-1.8.4-int64.sh -
for IDRIS (jean-zay) supercomputer (GPU version):
source /gpfswork/rech/fej/ugz82dj/env_TRUST-1.8.4-gpu.sh -
for CINES (occigen) supercomputer (64-bit integers version):
source /panfs/panasas/softs/applications/trio_u/TRUST/env_TRUST-1.8.4-int64.sh
3. TRUST Release notes version 1.8.4 : Enhancements, modifications and corrected bugs since version 1.8.3 :
23/11/21
(TRUST) Fix : Turbulent flow in a VDF stretched mesh was diverging with the implicited-diffusion solver
23/11/21
(TRUST) New feature : Add the possibility to read int64 binary files (.Zones, .sauv, .xyz) if possible (no overflow) with an int32 binary. The contrary was already true.
23/11/21
(TRUST) Fix : Restart calculation of previous old calculation with TRUST<=1.8.3
23/11/21
(TRUST) Fix : Read_MED option convertAllToPoly improved to convert hybrid meshes (tetrahHexa+pyramids cells) from MG-Hybrid Salome tool to polyhedron meshes for PolyMAC discretization
23/11/21
(TRUST) Fix : Several AmgX GPU solvers (BiCGstab, FGMRES) may be used for Euler implicit scheme + memory leak fixes. See Solveurs/GPU/Implicite verification sheet
23/11/21
(TRUST) Fix : Champ_front_MED may now be combined with Champ_Fonc_MED_Tabule to enable time & space dependent boundary conditions read from MED file
23/11/21
(TRUST) Output : Suppress probe duplicated points into .son files
23/11/21
(TRUST) Convergence : Use the true residual (instead of preconditioned one) for convergence test with PETSc solvers used on non-symmetric linear system (may be necessary to lower seuil option to have same results than 1.8.3)
23/11/21
(TRUST) Keyword : Add pression option to Navier Stokes initial conditions to initialize velocity and pressure field
15/11/21
(TRUST) Fix : Several problems solving different physics on a same domain produced corrupted lml/lata/med files (mesh repeated) during post-processing
29/10/21
(TRUST) Keyword : Syntax change for Champ_Fonc_tabule. The new syntax is Champ_fonc_tabule { pb field } nbcomp { table } (the old syntax was Champ_fonc_tabule field nbcomp { table } )
29/10/21
(TRUST) Keyword : Syntax change for Champ_Fonc_Fonction, Champ_Fonc_Fonction_txyz, and Sutherland where the problem name should be passed before that of the field
29/10/21
(TRUST) Major Change: Tables defined with a Champ_fonc_tabule should be strictly monotonic (declaring a multiple times and/or a decreasing time order will stop the code execution)
29/10/21
(TRUST) Major Change: Champ_fonc_tabule supports arbitrary number of parameter fields from variables instanced in any problem
21/10/21
(TRUST) Library : Add of the vectorization library Vc (1.4.2)
18/10/21
(TRUST) New feature : Possibility to correctly stop the simulation once launched in interactive way using Ctrl+C
18/10/21
(TRUST) Major Change: Syntax/keyword modified : state laws for a dilatable fluid ends now with _QC (for quasi-compressible fluid) and with _WC (for weakly-compressible fluid). For example, the EOS gaz_parfait becomes either gaz_parfait_QC or gaz_parfait_WC
18/10/21
(TRUST) Major Change: Media with variable densities do not inherit anymore from "Fluide_Incompressible"
18/10/21
(TRUST) New feature : New medium "Fluide_Dilatable_base" from which the Quasi-Compressible and the Weakly-Compressible media inherit
18/10/21
(TRUST) New feature : New problems "Pb_Thermohydraulique_WC", "Pb_Thermohydraulique_Especes_WC" and "Pb_Hydraulique_Melange_Binaire_WC" introduced to solve thermo-hydraulic and/or binary/multi species flows using a Weakly Compressible formulation (non-uniform pressure in the state equation)
16/09/21
(TRUST) New feature : Solveur_U_P is now unified for Poly/Covi-MAC discretizations and allows the monolithic resolution of the NS equation
16/09/21
(TRUST) New feature : Decouper_multi allows to partition multiple domains while accounting for connections via Raccords (allows for easier implementation of thermique_monolithique in parallel)
16/09/21
(TRUST) Major Change: All DoubleTabs associated with fields (Champ_Inc, Champ_Don, ...) have now dimension >= 2
16/09/21
(TRUST) New feature : Add interface_bloc which is a generalization of the "contribuer_a_avec" and "ajouter" API for equation, Operateur, Source to fill the jacobian matrix and the right hand side of a coupled system of equation
16/09/21
(TRUST) New feature : New "SETS" and "ICE" solveur for Schema_Euler_Implicite. Can be used with Pb_Multiphase to solve the coupled system of equations using a newton method and a pressure reduction of the linear system. ICE must respect CFL condition, SETS adds prediction steps to increase numerical stability, allowing to perform CFL>1
16/09/21
(TRUST) New feature : New medium "Milieu_Composite" to aggregate differents Fluide_base media. Can be used within a Pb_multiphase
16/09/21
(TRUST) New feature : New medium "Fluide_reel_base" to define pressure and temperature dependant laws
16/09/21
(TRUST) New Feature : A new discretization "CoviMAC" (Numerical schema on polyedrons, main difference with PolyMAC : no more auxiliary variables for scalar unknowns) is now available and can be used with Pb_Multiphase. Implemented with the new Interface_bloc API
16/09/21
(TRUST) New feature : New problem "Pb_multiphase" with 3 equations (mass, momentum and energy conservation), having each N components. N=1 corresponds to a single phase model, N=2 corresponds to a 2 fluid model, and N>2 to a multi-field model
19/08/21
(TRUST) Portability : ARM partition of Irene Joliot cluster supported
19/08/21
(TRUST) Performance : Arrays obtained from octree algorithm are cached. Useful for advanced fields computation needing interpolations each time-step
19/08/21
(TRUST) Bug fixed : Regression since 1.8.3 fixed (malformed .dt_ev file with missing columns for coupled problems)
19/08/21
(TRUST) Performance : Output files (.out) are opened/closed at the first/last print and not at each print as before
19/08/21
(TRUST) Bug fix : Source_generique source term couldn't be used for PolyMAC discretization
12/07/21
(TRUST) Performance : A same advanced field used by several probes are now computed only once during each post-processing phasis
05/07/21
(TRUST) Portability : New CCRT cluster topaze supported (110592 AMD Milan Epyc cores)
4. TRUST Developer notes version 1.8.4 : Changes since version 1.8.3 :
23/11/21
(TRUST) Add option save_matrix_mtx_format to write PETSc matrix into Matrix Market format
18/10/21
(TRUST) "Fluide_base" or "Fluide_Dilatable_base" should now be used for casting and not "Fluide_Incompressible"
16/09/21
(TRUST) All DoubleTabs associated with fields (Champ_Inc, Champ_Don, ...) have now dimension >= 2
09/07/21
(TRUST) OpenACC compilers (nvc++/nvc/nvfortran) for GPU porting with NVidia HPC SDK (20.7) are supported
5. externalpackages Release notes version 1.8.4 : Enhancements, modifications and corrected bugs since version 1.8.3 :
26/11/21
(externalpackages) Minor change: MEDCoupling upgraded to 9.8.0 and MED to 4.1.1
23/11/21
(externalpackages) Portability : valgrind updated to 3.18.1
21/10/21
(externalpackages) Major change: Add of the vectorization library Vc (1.4.2)
6. Version tested on several OS
- CentOS Linux release 7.6.1810
- CentOS Linux release 7.9.2009
- Debian GNU/Linux 11 (VisIt not yet supported)
- Debian GNU/Linux 10
- Debian GNU/Linux 9
- Fedora release 24
- Fedora release 26
- Fedora release 30
- Fedora release 32
- Fedora release 34
- Red Hat Enterprise Linux Server release 7.9
- Red Hat Enterprise Linux release 8.3
- Ubuntu 16.04.7 LTS (VisIt requires special treatment)
- Ubuntu 18.04.6 LTS
- Ubuntu 20.04.3 LTS
7. Version portability with several compilers
- clang++ 10.0.0
- clang++ 10.0.0-4ubuntu1
- clang++ 8.0.0
- cuda-g++ 8.3.0
- g++ 11.0.1
- g++ 10.2.1
- g++ 10.0.1
- g++ 9.3.0
- g++ 9.1.0
- g++ 9.0.1
- g++ 8.3.0
- g++ 7.5.0
- g++ 7.1.1
- g++ 6.3.0
- g++ 6.1.1
- g++ 5.4.0
- g++ 4.8.5
- icpc 19.1.3.304
- icpc 19.0.5.281
- icpc 19.0.3.199
- icpc 18.0.3