Skip to content

Commit

Permalink
Update granite and water
Browse files Browse the repository at this point in the history
  • Loading branch information
IvarStefansson committed Jul 27, 2019
1 parent 6c0fba1 commit 9a3878e
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 5 deletions.
9 changes: 5 additions & 4 deletions src/porepy/params/rock.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
Contains standard values (e.g. found in Wikipedia) for permeability, elastic
moduli etc.
Note that thermal expansion coefficients are linear (m/mK) for rocks, but
volumetric (m^3/m^3) for fluids.
"""
import porepy as pp

Expand Down Expand Up @@ -157,7 +159,7 @@ def __init__(self, theta_ref=None):
self.PERMEABILITY = 1e-8 * pp.DARCY
self.POROSITY = 0.01
# Reported range for Young's modulus by jsg is 10-70GPa
self.YOUNG_MODULUS = 4.0 * pp.GIGA * pp.PASCAL
self.YOUNG_MODULUS = 40.0 * pp.GIGA * pp.PASCAL
# Reported range for Poisson's ratio is 0.125-0.25
self.POISSON_RATIO = 0.2

Expand All @@ -166,9 +168,8 @@ def __init__(self, theta_ref=None):
self.LAMBDA, self.MU = lame_from_young_poisson(
self.YOUNG_MODULUS, self.POISSON_RATIO
)
self.THERMAL_EXPANSION = (
8e-6 * pp.METER / (pp.METER * pp.CELSIUS)
) # from engineeringtoolbox.com
# Units of thermal expansion: m^3 / m^3 K, i.e. volumetric. From engineeringtoolbox.com
self.THERMAL_EXPANSION = 8e-6 * pp.METER / (pp.METER * pp.CELSIUS)
if theta_ref is None:
self.theta_ref = 20.0 * pp.CELSIUS
else:
Expand Down
14 changes: 13 additions & 1 deletion src/porepy/params/water.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
""" Hard coded typical parameters that may be of use in simulations.
Contains standard values (e.g. found in Wikipedia) for density, thermal properties etc.
Note that thermal expansion coefficients are linear (m/mK) for rocks, but
volumetric (m^3/m^3) for fluids.
"""
import numpy as np
import porepy as pp

Expand All @@ -13,20 +20,23 @@ def __init__(self, theta_ref=None):
self.BULK = 1 / self.COMPRESSIBILITY

def thermal_expansion(self, delta_theta):
""" Units: m^3 / m^3 K, i.e. volumetric """
return (
0.0002115
+ 1.32 * 1e-6 * delta_theta
+ 1.09 * 1e-8 * np.power(delta_theta, 2)
)

def density(self, theta=None): # theta in CELSIUS
""" Units: kg / m^3 """
if theta is None:
theta = self.theta_ref
theta_0 = 10 * (pp.CELSIUS)
rho_0 = 999.8349 * (pp.KILOGRAM / pp.METER ** 3)
return rho_0 / (1.0 + self.thermal_expansion(theta - theta_0))

def thermal_conductivity(self, theta=None): # theta in CELSIUS
""" Units: W / m K """
if theta is None:
theta = self.theta_ref
return (
Expand All @@ -37,11 +47,13 @@ def thermal_conductivity(self, theta=None): # theta in CELSIUS
)

def specific_heat_capacity(self, theta=None): # theta in CELSIUS
""" Units: J / kg K """
if theta is None:
theta = self.theta_ref
return (4245 - 1.841 * theta) / self.density(theta)
return 4245 - 1.841 * theta

def dynamic_viscosity(self, theta=None): # theta in CELSIUS
"""Units: Pa s"""
if theta is None:
theta = self.theta_ref
theta = pp.CELSIUS_to_KELVIN(theta)
Expand Down

0 comments on commit 9a3878e

Please sign in to comment.