Here are Fortran Modules used as a testbed for numerical solution of flow equations.
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.