Using GeoParams.jl to define the rheology of the material phases
We will use the same physical parameters as the ones defined in Hummel et al 2024.
The thermal expansion coefficient $\alpha$ and heat capacity $C_p$ are the same for all the material phases
α = 2.4e-5 # 1 / K
Cp = 750 # J / kg K
The density of all the phases is constant, except for the oceanic lithosphere, which uses the pressure and temperature dependent equation of state $\rho = \rho_0 \left(1 - \alpha (T-T_0) - \beta (P-P_0) \right)$, where $\rho_0 = \rho (T=1475 \text{C}^{\circ})=3200 \text{kg/m}^3$.which corresponds to the PT_Density
object from GeoParams.jl:
density_lithosphere = PT_Density(; ρ0=3.2e3, α = α, β = 0e0, T0 = 273+1474)
We will run the case where the rheology is given by a combination of dislocation and diffusion creep for wet olivine,
using GeoParams.Dislocation
using GeoParams.Diffusion
disl_wet_olivine = SetDislocationCreep(Dislocation.wet_olivine1_Hirth_2003)
diff_wet_olivine = SetDiffusionCreep(Diffusion.wet_olivine_Hirth_2003)
and where plastic failure is given by the formulation from Duretz et al, 2021
# non-regularized plasticity
ϕ = asind(0.1)
C = 1e6 # Pa
plastic_model = DruckerPrager_regularised(; C = C, ϕ = ϕ, η_vp=η_reg, Ψ=0.0)
Finally we define the rheology objects of GeoParams.jl
rheology = (
SetMaterialParams(;
Name = "Asthenoshpere",
Phase = 1,
Density = ConstantDensity(; ρ=3.2e3),
HeatCapacity = ConstantHeatCapacity(; Cp = Cp),
Conductivity = ConstantConductivity(; k = 2.5),
CompositeRheology = CompositeRheology( (LinearViscous(; η=1e20),)),
Gravity = ConstantGravity(; g=9.81),
),
SetMaterialParams(;
Name = "Oceanic lithosphere",
Phase = 2,
Density = density_lithosphere,
HeatCapacity = ConstantHeatCapacity(; Cp = Cp),
Conductivity = ConstantConductivity(; k = 2.5),
CompositeRheology = CompositeRheology(
(
disl_wet_olivine,
diff_wet_olivine,
plastic_model,
)
),
),
SetMaterialParams(;
Name = "oceanic crust",
Phase = 3,
Density = ConstantDensity(; ρ=3.2e3),
HeatCapacity = ConstantHeatCapacity(; Cp = Cp),
Conductivity = ConstantConductivity(; k = 2.5),
CompositeRheology = CompositeRheology( (LinearViscous(; η=1e20),)),
),
SetMaterialParams(;
Name = "StickyAir",
Phase = 4,
Density = ConstantDensity(; ρ=1), # water density
HeatCapacity = ConstantHeatCapacity(; Cp = 1e34),
Conductivity = ConstantConductivity(; k = 3),
CompositeRheology = CompositeRheology((LinearViscous(; η=1e19),)),
),
)