Simulation

Simulation is one of the two base classes of a THMProblem. It implements a number of the specificities of a thermal hydraulics solve, notably the reliance on Components to form the problem.

It is in charge of :

  • building the mesh, each part being created by each Component

  • creating the variables

  • setting up initial conditions for the variables, whether from file or from user input

  • setting up the quadrature

It also has APIs, that are called by various actions when parsing the input file, to:

  • add components

  • initialize components

  • add MOOSE objects created by components

  • identify component loops

  • set up the coordinate system

It also performs integrity checks for:

  • the coupling matrix, making sure it sufficiently captures inter-variable dependencies for convergence

  • the components, making sure they all have a single inlet and a single outlet, and calling their own integrity checks

  • control data, from ControlLogic objects, making sure all the request control data does exist, and adding the proper dependencies