Update GeN Foam Theory authored by foam-for-nuclear project's avatar foam-for-nuclear project
...@@ -20,8 +20,27 @@ Both single- and two-phase simulations can be performed using GeN-Foam. The sele ...@@ -20,8 +20,27 @@ Both single- and two-phase simulations can be performed using GeN-Foam. The sele
The dictionary *constant/fluidRegion/phaseProperties* must include all information about pressure drop and heat transfer correlations, as well indication about the sub-scale models to be used for each mesh zone. The dictionary *constant/fluidRegion/phaseProperties* must include all information about pressure drop and heat transfer correlations, as well indication about the sub-scale models to be used for each mesh zone.
As regards the boundary conditions, OpenFOAM provides most of the boundary conditions one may need for thermal-hydraulics models. In addition, a few boundary conditions have been included in GeN-Foam and can be found in *GeN-Foam/classes/thermalHydraulics/src/boundaryConditions*. In particular, information on the use of each boundary condition can be found in the header files (.H).
**Neutronics** **Neutronics**
GeN-Foam provides 5 different models for neutronics, namely: point kinetics, diffusion (transient and eigenvalue), adjoint diffusion (only eigenvalue), SP3 (transient and eigenvalue), discrete ordinates (only eigenvalue). One can select the desired model in *constant/neutroRegion/neutronicsProperties*.
Nuclear data must be provided in *constant/neutroRegion/nuclearData*. The dictionaries *nuclearData...* give the possibility to parametrize the cross sections by giving a different set of cross sections in a perturbed state. GeN-Foam will perform a cell-by-cell linear interpolation except for fuel temperature, in which case a square root or logarithmic interpolation is employed
depending on the keyword *fastNeutrons* in *constant/neutroRegion/nuclearData*.
All GeN-Foam neutronics models can be used for liquid-fuel reactors, except for the point kinetics model. One can activate this option using the *liquidFuel* keyword in */system/controlDict*. Of course, in such case one should pay attention to setting proper boundary conditions for the precursors.
Standard OpenFOAM boundary conditions such as *zeroGradient* and *fixedValue* can be employed. In addition the *albedoSP3* boundary condition is available in GeN-Foam and can be used both for the diffusion and SP3 solver. Details about the *albedoSP3* boundary condition can be found in its header file in *GeN-Foam/classes/neutronics/albedoSP3*.
A specificity of the neutronic solvers is that GeN-Foam allow for the possibility of selecting the same boundary conditions for all neutron fluxes (in energy and angle), and the same boundary conditions for all the precursors groups. This can be done by indicating these boundary conditions in the *defaultFlux* and *defaultPrec* files. Of course, one may provide different boundary conditions for different fluxes and precursors by providing the related files in the */0/* folder (or in the folder related to the time step the simulation will start from). For example, in a 6-group diffusion simulation, one may set a general boundary for all energies using defaultFlux, and specific boundary conditions for the first and second group by: copying twice *defaultFlux* as *fluxStar0* and *fluxStar1*; and applying different boundary conditions to these two fluxes.
NB: boundary conditions must be applied to *fluxStar...* and not to *flux...* since GeN-Foam solves for these variables. *fluxStar...* represent continuous fluxes, while *flux...* represent the real fluxes. They differ only in case discontinuity factors are employed [2].
**Thermal-mechanics**
**References** **References**
... ...
......