llot95_mod.f
35 lines · 1 definitions · on GitHub (7be4133)
Python version: llot95_mod.py, 19 lines, on the right (switch to Python above the code).
Purpose
LLOT95_MOD holds the OPAL95 opacity tables interpolated to the current surface $Z$, one table for each $X$, and that $Z$, shared by 4 routines. It replaces COMMON/LLOT95/ (MHP via Claude, 10/14/26). The table dimensions NUMX = 10, NUMT = 70, NUMD = 19 are PRIVATE, since other tables use the same names with other values.
What its variables hold, who sets them, who reads them.
CAPPA(NUMX,NUMT,NUMD): $\log\kappa$ on the ($X$, $\log T$, $\log R$) grid at $Z$ =ZTAB, interpolated in $Z$ (four points) byOP95ZTABfrom all the tables (CAPPA2inLLOT95A_MOD).ZTAB: the $Z$ of those tables, set byOP95ZTAB.- Read by
OP95XTAB, which interpolates them further to one $X$,OP953D(interpolation in $X$, $T$, $R$) andGETOPAL95, which compares the local $Z$ withZTABto choose between a 2D, 3D or 4D interpolation.
Design
A blanket USE LLOT95_MOD. At rp_1, calcad.f declared a shortened copy of the block, ZTAB alone, which under storage association was in fact CAPPA(1,1,1) (harmless: CALCAD used it only in commented-out lines), and main.f one dimensioned with its own NUMTT (also 70); both declarations are gone.
Definitions
moduleLLOT95_MOD
Change log
The changes since rp_1
Changed since rp_1. New file: COMMON/LLOT95/ as a module.