Skip to content

Commit cca74b7

Browse files
committed
removed superfluous functions from eoses
1 parent 5f80428 commit cca74b7

17 files changed

+116
-421
lines changed

burnman/classes/mineral.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,7 @@ def _delta_volume(pressure, volume, temperature):
213213
self.set_state(
214214
self.method.pressure(temperature, volume, self.params), temperature
215215
)
216+
self._cached["_molar_volume_unmodified"] = volume
216217

217218
"""
218219
Properties from equations of state
@@ -430,7 +431,7 @@ def grueneisen_parameter(self):
430431
and (np.abs(self._property_modifiers["dGdP"]) < eps)
431432
and (np.abs(self._property_modifiers["d2GdT2"]) < eps)
432433
):
433-
return self.method.grueneisen_parameter(
434+
return self.method._grueneisen_parameter(
434435
self.pressure, self.temperature, self.molar_volume, self.params
435436
)
436437
else:

burnman/eos/birch_murnaghan.py

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -136,12 +136,6 @@ def isothermal_bulk_modulus_reuss(self, pressure, temperature, volume, params):
136136
"""
137137
return bulk_modulus(volume, params)
138138

139-
def isentropic_bulk_modulus_reuss(self, pressure, temperature, volume, params):
140-
"""
141-
Returns adiabatic bulk modulus :math:`K_s` of the mineral. :math:`[Pa]`.
142-
"""
143-
return bulk_modulus(volume, params)
144-
145139
def shear_modulus(self, pressure, temperature, volume, params):
146140
"""
147141
Returns shear modulus :math:`G` of the mineral. :math:`[Pa]`
@@ -157,7 +151,7 @@ def entropy(self, pressure, temperature, volume, params):
157151
"""
158152
return 0.0
159153

160-
def molar_internal_energy(self, pressure, temperature, volume, params):
154+
def _molar_internal_energy(self, pressure, temperature, volume, params):
161155
"""
162156
Returns the internal energy :math:`\\mathcal{E}` of the mineral. :math:`[J/mol]`
163157
"""
@@ -189,16 +183,10 @@ def gibbs_free_energy(self, pressure, temperature, volume, params):
189183
# G = int VdP = [PV] - int PdV = E + PV
190184

191185
return (
192-
self.molar_internal_energy(pressure, temperature, volume, params)
186+
self._molar_internal_energy(pressure, temperature, volume, params)
193187
+ volume * pressure
194188
)
195189

196-
def molar_heat_capacity_v(self, pressure, temperature, volume, params):
197-
"""
198-
Since this equation of state does not contain temperature effects, simply return a very large number. :math:`[J/K/mol]`
199-
"""
200-
return 1.0e99
201-
202190
def molar_heat_capacity_p(self, pressure, temperature, volume, params):
203191
"""
204192
Since this equation of state does not contain temperature effects, simply return a very large number. :math:`[J/K/mol]`
@@ -211,7 +199,7 @@ def thermal_expansivity(self, pressure, temperature, volume, params):
211199
"""
212200
return 0.0
213201

214-
def grueneisen_parameter(self, pressure, temperature, volume, params):
202+
def _grueneisen_parameter(self, pressure, temperature, volume, params):
215203
"""
216204
Since this equation of state does not contain temperature effects, simply return zero. :math:`[unitless]`
217205
"""

burnman/eos/birch_murnaghan_4th.py

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -124,12 +124,6 @@ def isothermal_bulk_modulus_reuss(self, pressure, temperature, volume, params):
124124
"""
125125
return bulk_modulus_fourth(volume, params)
126126

127-
def isentropic_bulk_modulus_reuss(self, pressure, temperature, volume, params):
128-
"""
129-
Returns adiabatic bulk modulus :math:`K_s` of the mineral. :math:`[Pa]`.
130-
"""
131-
return bulk_modulus_fourth(volume, params)
132-
133127
def shear_modulus(self, pressure, temperature, volume, params):
134128
"""
135129
Returns shear modulus :math:`G` of the mineral. :math:`[Pa]`
@@ -142,7 +136,7 @@ def entropy(self, pressure, temperature, volume, params):
142136
"""
143137
return 0.0
144138

145-
def molar_internal_energy(self, pressure, temperature, volume, params):
139+
def _molar_internal_energy(self, pressure, temperature, volume, params):
146140
"""
147141
Returns the internal energy :math:`\\mathcal{E}` of the mineral. :math:`[J/mol]`
148142
"""
@@ -184,16 +178,10 @@ def gibbs_free_energy(self, pressure, temperature, volume, params):
184178
# G = int VdP = [PV] - int PdV = E + PV
185179

186180
return (
187-
self.molar_internal_energy(pressure, temperature, volume, params)
181+
self._molar_internal_energy(pressure, temperature, volume, params)
188182
+ volume * pressure
189183
)
190184

191-
def molar_heat_capacity_v(self, pressure, temperature, volume, params):
192-
"""
193-
Since this equation of state does not contain temperature effects, simply return a very large number. :math:`[J/K/mol]`
194-
"""
195-
return 1.0e99
196-
197185
def molar_heat_capacity_p(self, pressure, temperature, volume, params):
198186
"""
199187
Since this equation of state does not contain temperature effects, simply return a very large number. :math:`[J/K/mol]`
@@ -206,7 +194,7 @@ def thermal_expansivity(self, pressure, temperature, volume, params):
206194
"""
207195
return 0.0
208196

209-
def grueneisen_parameter(self, pressure, temperature, volume, params):
197+
def _grueneisen_parameter(self, pressure, temperature, volume, params):
210198
"""
211199
Since this equation of state does not contain temperature effects, simply return zero. :math:`[unitless]`
212200
"""

burnman/eos/brosh_calphad.py

Lines changed: 1 addition & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -103,40 +103,12 @@ def isothermal_bulk_modulus_reuss(self, pressure, temperature, volume, params):
103103

104104
return -volume * dP / dV
105105

106-
def isentropic_bulk_modulus_reuss(self, pressure, temperature, volume, params):
107-
"""
108-
Returns the adiabatic bulk modulus of the mineral. :math:`[Pa]`.
109-
"""
110-
if temperature < 1.0e-10:
111-
return self.isothermal_bulk_modulus_reuss(
112-
pressure, temperature, volume, params
113-
)
114-
else:
115-
return (
116-
self.isothermal_bulk_modulus_reuss(
117-
pressure, temperature, volume, params
118-
)
119-
* self.molar_heat_capacity_p(pressure, temperature, volume, params)
120-
/ self.molar_heat_capacity_v(pressure, temperature, volume, params)
121-
)
122-
123106
def shear_modulus(self, pressure, temperature, volume, params):
124107
"""
125108
Returns the shear modulus :math:`G` of the mineral. :math:`[Pa]`
126109
"""
127110
return 0.0
128111

129-
def molar_internal_energy(self, pressure, temperature, volume, params):
130-
"""
131-
Returns the internal energy of the mineral. :math:`[J/mol]`
132-
"""
133-
134-
return (
135-
self.gibbs_free_energy(pressure, temperature, volume, params)
136-
- pressure * self.volume(pressure, temperature, params)
137-
+ temperature * self.entropy(pressure, temperature, volume, params)
138-
)
139-
140112
def _Cp_1bar(self, temperature, params):
141113
# first, identify which of the piecewise segments we're in
142114
i = np.argmax(
@@ -398,7 +370,7 @@ def thermal_expansivity(self, pressure, temperature, volume, params):
398370
)
399371
return dV / dT / volume
400372

401-
def grueneisen_parameter(self, pressure, temperature, volume, params):
373+
def _grueneisen_parameter(self, pressure, temperature, volume, params):
402374
"""
403375
Returns the grueneisen parameter.
404376
This is a dependent thermodynamic variable in this equation of state.

burnman/eos/cork.py

Lines changed: 4 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -43,16 +43,6 @@ class CORK(eos.EquationOfState):
4343
the saturation curve.
4444
"""
4545

46-
def grueneisen_parameter(self, pressure, temperature, volume, params):
47-
"""
48-
Returns grueneisen parameter [unitless] as a function of pressure,
49-
temperature, and volume.
50-
"""
51-
alpha = self.thermal_expansivity(pressure, temperature, volume, params)
52-
K_T = self.isothermal_bulk_modulus_reuss(pressure, temperature, volume, params)
53-
C_V = self.molar_heat_capacity_v(pressure, temperature, volume, params)
54-
return alpha * K_T * volume / C_V
55-
5646
def volume(self, pressure, temperature, params):
5747
"""
5848
Returns volume [m^3] as a function of pressure [Pa] and temperature [K]
@@ -111,17 +101,6 @@ def shear_modulus(self, pressure, temperature, volume, params):
111101
"""
112102
return 0.0
113103

114-
# Cv, heat capacity at constant volume
115-
def molar_heat_capacity_v(self, pressure, temperature, volume, params):
116-
"""
117-
Returns heat capacity at constant volume at the pressure, temperature, and volume [J/K/mol].
118-
"""
119-
C_p = self.molar_heat_capacity_p(pressure, temperature, volume, params)
120-
V = self.volume(pressure, temperature, params)
121-
alpha = self.thermal_expansivity(pressure, temperature, volume, params)
122-
K_T = self.isothermal_bulk_modulus_reuss(pressure, temperature, volume, params)
123-
return C_p - V * temperature * alpha * alpha * K_T
124-
125104
def thermal_expansivity(self, pressure, temperature, volume, params):
126105
"""
127106
Returns thermal expansivity at the pressure, temperature, and volume [1/K]
@@ -150,7 +129,7 @@ def thermal_expansivity(self, pressure, temperature, volume, params):
150129
return dVdT / volume
151130

152131
# Heat capacity at ambient pressure
153-
def molar_heat_capacity_p0(self, temperature, params):
132+
def _molar_heat_capacity_p0(self, temperature, params):
154133
"""
155134
Returns heat capacity at ambient pressure as a function of temperature [J/K/mol]
156135
Cp = a + bT + cT^-2 + dT^-0.5 in Holland and Powell, 2011
@@ -167,10 +146,9 @@ def molar_heat_capacity_p(self, pressure, temperature, volume, params):
167146
"""
168147
Returns heat capacity at constant pressure at the pressure, temperature, and volume [J/K/mol]
169148
"""
170-
T_0 = params["T_0"]
171149
P_relative = pressure - params["P_0"]
172150

173-
Cp0 = self.molar_heat_capacity_p0(temperature, params)
151+
Cp0 = self._molar_heat_capacity_p0(temperature, params)
174152

175153
if params["cork_T"] == 0:
176154
d2RTlnfdTdT = 0.0
@@ -215,17 +193,6 @@ def molar_heat_capacity_p(self, pressure, temperature, volume, params):
215193

216194
return Cp0 - temperature * d2RTlnfdTdT
217195

218-
def isentropic_bulk_modulus_reuss(self, pressure, temperature, volume, params):
219-
"""
220-
Returns adiabatic bulk modulus [Pa] as a function of pressure [Pa],
221-
temperature [K], and volume [m^3].
222-
"""
223-
K_T = self.isothermal_bulk_modulus_reuss(pressure, temperature, volume, params)
224-
C_p = self.molar_heat_capacity_p(pressure, temperature, volume, params)
225-
C_v = self.molar_heat_capacity_v(pressure, temperature, volume, params)
226-
K_S = K_T * C_p / C_v
227-
return K_S
228-
229196
def gibbs_free_energy(self, pressure, temperature, volume, params):
230197
"""
231198
Returns the gibbs free energy [J/mol] as a function of pressure [Pa]
@@ -348,26 +315,6 @@ def entropy(self, pressure, temperature, volume, params):
348315

349316
return params["S_0"] + intCpoverTdT - dRTlnfdT
350317

351-
def helmholtz_free_energy(self, pressure, temperature, volume, params):
352-
return self.gibbs_free_energy(
353-
pressure, temperature, volume, params
354-
) - pressure * self.volume(pressure, temperature, params)
355-
356-
def enthalpy(self, pressure, temperature, volume, params):
357-
"""
358-
Returns the enthalpy [J/mol] as a function of pressure [Pa]
359-
and temperature [K].
360-
"""
361-
gibbs = self.gibbs_free_energy(pressure, temperature, volume, params)
362-
entropy = self.entropy(pressure, temperature, volume, params)
363-
return gibbs + temperature * entropy
364-
365-
def pressure(self, temperature, volume, params):
366-
"""
367-
Returns pressure [Pa] as a function of temperature [K] and volume[m^3]
368-
"""
369-
return NotImplementedError("")
370-
371318
def validate_parameters(self, params):
372319
"""
373320
Check for existence and validity of the parameters
@@ -414,7 +361,7 @@ def validate_parameters(self, params):
414361
if params["cork_P"] < 1.0e4 or params["cork_P"] > 1.0e8:
415362
warnings.warn("Unusual value for cork_P", stacklevel=2)
416363

417-
if self.molar_heat_capacity_p0(params["T_0"], params) < 0.0:
364+
if self._molar_heat_capacity_p0(params["T_0"], params) < 0.0:
418365
warnings.warn("Negative heat capacity at T_0", stacklevel=2)
419-
if self.molar_heat_capacity_p0(2000.0, params) < 0.0:
366+
if self._molar_heat_capacity_p0(2000.0, params) < 0.0:
420367
warnings.warn("Negative heat capacity at 2000K", stacklevel=2)

0 commit comments

Comments
 (0)