I’m seeing a performance issue when calling the EOS routines on many small arrays (≈8 elements each). Profiling shows that every call to
my_eos.InternalEnergyFromDensityTemperature(density, temperature)
invokes the EOS copy constructor. Since the SpinerEOS object is about 20 KB (per sizeof), these repeated copies add significant overhead. It appears that PR #106 introduced an explicit copy in this path.