-
Notifications
You must be signed in to change notification settings - Fork 21
Open
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomers
Description
At the moment, SpinerEOS (SpinerEOSDependsRhoT
and SpinerEOSDependsRhoSie
) constructors require a file containing the spiner data with the exception of course of the trivial constructor. However, it would be useful to be able to instead pass an EOS model and a set of grid parameters to the constructor and have the SpinerEOS call the model at the grid points in order to generate the grid.
This issue would likely require the following:
- Develop a struct to contain the parameters for the spiner grid. At the moment, the only default parameters I see are the grid resolutions, so thse should likely be moved from
generate_files.hpp
insesame2spiner
intoeos_spiner_common.hpp
. Other constants can be moved as needed. The struct should contain defaults that mirror the sesame data. - Add a constructor to the SpinerEOS class that is templated on the EOS model (the class itself need not be templated since the model is only used during construction) and takes the grid parameters object. The constructor should then create the spiner grid and populate it with the model called at the grid points.
Some optional things that could be their own issues after the above is done:
- Use the
MinimumDensity()
,MinimumTemperature()
, andMaximumDensity()
member functions of the EOS model to determine the bounds of the EOS itself and compare them to the provided bounds, adjusting as necessary (seegetMatBounds()
function). Basically we don't want the spiner grid to exceed the boundaries of the EOS itself. This would likely require creating a newMaximumTemperature()
member function. - The EOSPAC class should be updated to properly use sesame table information to return values for
MinimumDensity()
and the other related member function
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomers