usgs-coupled / phreeqcrm

https://usgs-coupled.github.io/phreeqcrm/
Creative Commons Zero v1.0 Universal
9 stars 7 forks source link

LLNL_AQUEOUS_MODEL_PARAMETERS: the minimum temperature now needs to be 25C or below #160

Closed phreeplot closed 3 months ago

phreeplot commented 7 months ago

I've just discovered the PHREEQC git repositories - great to see there is still life in the old dog!! Well done David, Tony and Scott.

Although this is not documented, and may not be intended, the minimum temperature for an LLNL_AQUEOUS_MODEL_PARAMETERS block needs to be 25C or lower otherwise the block will report an error "Temperature out of range of LLNL_AQUEOUS_MODEL parameters". This occurs even when loading a database with such a block and will prevent the intended simulations being run independent of whether such low temperatures are actually used.

It arises when estimating gammas in a solution initialization step and shows up in model.cpp, line 585, It is present in all the versions that I have seen, up to 15968 (although curiously, phreeqcI seems to work).

The work-arounds are (i) to avoid the problem by making sure that the first temperature is below 25C either by adding a dummy value, or better, a real value. If none of the temperatures used in the simulations fall below your original first temperature, then this dummy value will have little if any effect since values are linearly interpolated between the nearest two temperatures; (ii) modify the source code so that extrapolation as well as interpolation is allowed, (iii) document <=25C as a requirement, or (iv) avoid the problem some other way.