|
TRUST 1.9.8
HPC thermohydraulic platform
|
In the TRUST code, different numerical schemes are available to the user: VDF, VEF and the PolyMAC family.
The PolyMAC discretization family has been developed since 2018. Three PolyMAC variants are available in TRUST. They have been built using a Finite Volume (FV) framework on a staggered mesh so as to extend the MAC scheme [15] to complex grids:
For each method the core ideas and the main steps for the discretization of the incompressible Navier-Stokes equations are presented. For now, the PolyMAC and PolyMAC_MPFA parts are completed; the others are a work in progress.
Let's consider a space \(\Omega\) and a certain grid \(\mathcal{M}\) of non-overlapping polyhedra that map \(\Omega\).
In the following:
The set of cells is called \(E\). The set of faces of cell \(e\) is denoted \(F_e\). The set of edges of face \(f\) is \(\Sigma_f\) and the two vertices of edge \(\sigma\) are \(V_{\sigma}\).
When a face \(f\) separates two cells they are denoted \(e_1\) and \(e_2\) (the choice between the two is fixed by the orientation of \(f\)). The gravity centers (barycenters) of these entities are written \(x_e\), \(x_f\), \(x_\sigma\), \(x_v\).
The measure of an unknown \(x\) at a control volume \(cv\) is:
\[[x]_{cv} = \frac{1}{|cv|} \int_{cv} x \, \mathrm{d}(cv) \]
where \(|\cdot|\) is a global measure operator: \(|e|\) refers to the volume of cell \(e\), \(|f|\) to the surface of face \(f\), and \(|\sigma|\) to the length of edge \(\sigma\).
For face-based fluxes we use the outward unit normal \(\vec{n}_f\) together with the orientation sign
\[\sigma_{e,f} \;=\; \begin{cases} +1 & \text{if } \vec{n}_f \text{ points outward of cell } e, \\ -1 & \text{otherwise.} \end{cases} \]
(The symbol \(\sigma\) is overloaded with the edge index — this is consistent with both the FV and CDO literature, and the context always makes the meaning clear.)
The main unknowns are \(u\) (velocity) and \(p\) (pressure); for scalar transport we use \(T\) (temperature) and \(s\) for source terms. When porosities are used we write \(\varphi_e\) for the cell porosity and \(\varphi_f\) for the face porosity.
Vector typography. Scalars are typeset plain ( \(u, p, T\)). Vectors are decorated with an arrow when the distinction matters ( \(\vec{n}_f, \vec{x}_f, \vec{u}\)). The VEF page uses bold ( \(\boldsymbol{u}, \boldsymbol{F}\)) instead of arrows for legibility in operator-heavy formulas — this is the only place where the convention differs.