# Show signs of life.
print "Loading spheral equations of state..."

# EOS constructors take a units object. I usually work in MKS.
units = sph.PhysicalConstants(1.0,   # Unit length in meters
                              1.0,   # Unit mass in kg
                              1.0)   # Unit time in seconds

#-------------------------------------------------------------------------------
# Tillotson EOS for common materials
#-------------------------------------------------------------------------------
mats = ['Granite', 'Basalt', 'Nylon', 'Pure Ice', '30% Silicate Ice', 'Water']
etamin, etamax = 0.94, 10.0
pext, pmin, pmax = 0.0, -1e200, 1e200 # these are actually the defaults
EOSes = [sph.TillotsonEquationOfState(mat, 1e-20, 1e20, units,
         etamin_solid = etamin,
         externalPressure = pext, minimumPressure = pmin, maximumPressure = pmax)
         for mat in mats]
granite  = EOSes[0]
basalt   = EOSes[1]
nylon    = EOSes[2]
h2oice   = EOSes[3]
dirtyice = EOSes[4]
water    = EOSes[5]
del EOSes, mats, etamin, etamax

#-------------------------------------------------------------------------------
# M/ANEOS improved SiO2
#-------------------------------------------------------------------------------
try:
    izetl = sph.vector_of_int(1, -1)