aeos06_mod.f
52 lines · 1 definitions · on GitHub (7be4133)
Python version: aeos06_mod.py, 34 lines, on the right (switch to Python above the code).
Variables on this page (16)
dfs, dfsr, dfsx, esk, esk2, mf, midx, mv, mx, nr, nt, rho, t6a, t6list, xa, xz
Purpose
AEOS06_MOD holds the OPAL 2006 equation-of-state tables and their grids, shared by 5 routines. It replaces COMMON/AEOS06/ (MHP via Claude, 10/20/26), whose member M is now named MIDX; the table dimensions (MX = 5, MV = 10, NR = 169, NT = 197) are private to the module, since each user declares its own.
What its variables hold, who sets them, who reads them.
XZ(MX,MV,NT,NR): the tables, for each of the five $X$ values, room for ten quantities on the $(T_6, \rho)$ grid, of which the file fills nine (readcoeos06.f, lines 124–126↗; the rest stays at $10^{35}$); read in byREADCOEOS06, read byESAC06andRHOOFP06.T6LIST(NR,NT),RHO(NR),T6A(NT): the grids, fromREADCOEOS06; read byESAC06,RHOOFP06,EQBOUND06andT6RINTEOS06.DFSX(MX),DFS(NT),DFSR(NR): inverse grid spacings in $X$, $T_6$ and $\rho$, set byREADCOEOS06; read byESAC06andT6RINTEOS06.ESK(NT,NR),ESK2(NT,NR): values interpolated in $X$, set byESAC06and read by it andT6RINTEOS06.MIDX: a loop index over the $X$ tables, inREADCOEOS06(as it reads each table) andESAC06;MF: the $X$ index, set inESAC06.XA(MX): the five $X$ values, 0, 0.2, 0.4, 0.6, 0.8 (aDATAstatement moved fromESAC06); read byESAC06andRHOOFP06.
Design
A blanket USE AEOS06_MOD; the table alone holds $5 \times 10 \times 197 \times 169$ values (about 13 MB).
Definitions
moduleAEOS06_MOD
Used by (6 units)
EQBOUND06, ESAC06, READCOEOS06, RHOOFP06, SETEOS06, T6RINTEOS06
Change log
The changes since rp_1
Changed since rp_1. New file: COMMON/AEOS06/ as a module, M renamed MIDX, XA's values moved from ESAC06.