newopac_mod.f
37 lines · 1 definitions · on GitHub (7be4133)
Python version: newopac_mod.py, 12 lines, on the right (switch to Python above the code).
Purpose
NEWOPAC_MOD holds two switches of the opacity setup, shared by 4 routines. It replaces what is left of COMMON/NEWOPAC/ (MHP via Claude, 10/14/26), into which /MISCOPAC/ and /NWLAOL/ had been merged on 9/24/26: the opacity choices and their $Z$ and temperature limits (ZOPAL951, TMOLMIN, TMOLMAX, LALEX06, LOPAL95) are namelist variables now in NMLPAR_MOD, and the members of obsolete tables (ZLAOL1, ZOPAL1, ZALEX1, ZKUR1, LLAOL89, LOPAL92, LKUR90, LALEX95 and their pairs) were removed with those options.
What its variables hold, who sets them, who reads them. Both are LOGICAL*4.
L2Z: whether two opacity tables in $Z$ are needed,LZRAMP .OR. LDIFZ, set bySETUPOPAC; read byGETOPACin its test of whether the local $Z$ is covered by the tables (a $Z$ far fromZENVis accepted only withL2ZorLOPAL95).LLAOL: the switch of the obsolete LAOL opacities, initially.FALSE.(moved from PARMIN'sDATAstatement) and set nowhere, soSTARINalways takes the element fractions fromVNEWrather than from the LAOL tables (its comment: "to maintain backward compatibility," starin.f, lines 910–916↗); unused? (a switch that cannot be turned on, for tables that were removed).
Design
A blanket USE NEWOPAC_MOD; PARMIN still uses the module but reads neither member. The module header calls LLAOL a namelist variable, but it is in no namelist (so also at rp_1).
Definitions
moduleNEWOPAC_MOD
Change log
The changes since rp_1
Changed since rp_1. New file: L2Z of COMMON/NEWOPAC/ and LLAOL of /NWLAOL/ as a module; the namelist members moved to NMLPAR_MOD, those of removed opacity tables deleted.