bases

File Purpose: base & simple derived quantities.

The way to load BASE_QUANTS should be defined in hookups,

as they will depend on the kind of input data being loaded.
The way to load SIMPLE_DERIVED_QUANTS is defined in this file,
as they depend only on BASE_QUANTS.
However, they are decently likely to be overwritten, depending on kind of input.
E.g. Ebysus saves ‘r’ and ‘m’, not ‘n’.
Since ‘n’ is a base quant, EbysusCalculator needs to overwrite it anyways,
however it will use something like n = r / m, rather than n = number density from file.
Meanwhile, EbysusCalculator reads ‘r’ from file, rather than r = n * m.
Other parts of PlasmaCalcs may assume it is possible to load BASE_QUANTS and SIMPLE_DERIVED_QUANTS.
PlasmaCalcs will fail with LoadingNotImplementedError when the way to load the quant
hasn’t been defined yet, for the kind of input data being loaded.

Classes

AllBasesLoader()

all base quantities.

DirectBasesLoader()

AllBasesLoader & SimpleDerivedLoader, but load_direct when available.

SimpleDerivedLoader()

simple quantities derived from the base quantities.