Here are Fortran Modules used as a testbed for numerical solution
of flow equations.

Files are:

main.f90 - the main program driving the calculation

EosM.f90 - Module containing Equation of State and physical property data and functions.

FlowEqnM.f90 - Module containing functions used to evaluate the flow equation residuals used in a solution by Newton iteration

FluidArraysM.f90- Module containing state variables and time update and initialization subroutines.

InputM.f90 - Module setting initial conditions for the problem

IntrTypeM.f90 - Sets precision level and number of digits in integers

LocationM.f90 - Sets arrays used to locate variables for edge averages, and locate variables withing the spatially and system solution oriented data structures

LUsolveM.f90 - LU factorization subroutines for a general matrix (this should be replaced with something dealing with the sparsity of the matrix)

MatrixM.f90 - arrays used for the linearized equations, subroutine allocating them, and a driver for the solution

ScalarDatM.f90 - Storage for scalar data in the calculation (time step, number of volumes, ...)

TransM.f90 - Subroutines used for the transient.