diff --git a/cookbooks/continental_extension/continental_extension.prm b/cookbooks/continental_extension/continental_extension.prm index 5d635671017..3b4c2a75971 100644 --- a/cookbooks/continental_extension/continental_extension.prm +++ b/cookbooks/continental_extension/continental_extension.prm @@ -294,8 +294,8 @@ subsection Material model # values below, relative to previous versions of the cookbook, are now consistent with the correct # scaling procedure outlined in Dannberg et al. (2017). set Prefactors for dislocation creep = background: 7.37e-15, \ - crust_upper: 1.37e-26, \ - crust_lower: 5.71e-23, \ + crust_upper: 8.57e-28, \ + crust_lower: 7.13e-18, \ mantle_lithosphere: 7.37e-15 set Stress exponents for dislocation creep = background: 3.5, \ diff --git a/cookbooks/continental_extension/continental_extension_rheology.ipynb b/cookbooks/continental_extension/continental_extension_rheology.ipynb new file mode 100644 index 00000000000..0d75c9390ae --- /dev/null +++ b/cookbooks/continental_extension/continental_extension_rheology.ipynb @@ -0,0 +1,165 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "956323c4", + "metadata": {}, + "source": [ + "# Conversion of Continental Material Flow-Law Prefactors from Experiments to ASPECT" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "a1c36c8f", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "id": "a45a578c", + "metadata": {}, + "source": [ + "# Wet Quartzite from Gleason and Tullis (1995)\n", + "\n", + "The total conversion factor includes two parts.\n", + "\n", + "First, the factor change due to unit conversion from the experimental formulation \n", + "($\\mu$m → m and MPa → Pa):\n", + "\n", + "$$\n", + "F_{\\text{unit}} = 10^{-6n - 6p}\n", + "$$\n", + "\n", + "Second, the factor change due to the use of **shear strain rate** in the experiments\n", + "versus the **second invariant of the strain rate tensor** used in ASPECT:\n", + "\n", + "$$\n", + "F_{s} = \\frac{3^{\\frac{n+1}{2}}}{2}\n", + "$$\n", + "\n", + "Here, $n$ is the reported stress exponent and $p$ is the reported grain-size exponent.\n", + "\n", + "The prefactor used in ASPECT and the experimental prefactor are therefore related by\n", + "\n", + "$$\n", + "A_{\\text{ASPECT}} = F_{\\text{unit}} \\, F_{s} \\, A_{\\text{exp}}\n", + "$$" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "ae6c84d6", + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "# Gleason and Tullis (1995) - Wet Quartzite - Dislocation Creep\n", + "pfct_gt95_wqtz_disl_rprt = 1.1e-4 # Original reported prefactor in units of MPa^-n micrometers^m\n", + "sexp_gt95_wqtz_disl_rprt = 4.0 # Original reported stress exponent\n", + "gexp_gt95_wqtz_disl_rprt = 0 # Original reported grain size exponent\n", + "\n", + "# Convert prefactor to units of Pa^-n meters^m s^-1\n", + "pfct_gt95_wqtz_disl_unit = (pfct_gt95_wqtz_disl_rprt) * \\\n", + " (1.e-6**sexp_gt95_wqtz_disl_rprt) * \\\n", + " (1.e-6**gexp_gt95_wqtz_disl_rprt)\n", + "\n", + "# Calculate prefactor scaling term\n", + "pfct_gt95_wqtz_disl_sfac = 3.**((sexp_gt95_wqtz_disl_rprt+1.)/2.) / 2\n", + "\n", + "\n", + "# Calculated modified prefactor term for ASPECT\n", + "pfct_gt95_wqtz_disl_aspt = pfct_gt95_wqtz_disl_unit * pfct_gt95_wqtz_disl_sfac\n", + "\n", + "print('')\n", + "print('Gleason and Tullis (1995) Wet Quarzite Dislocation Prefactor Scaling = ', pfct_gt95_wqtz_disl_sfac)\n", + "print('Gleason and Tullis (1995) Wet Quarzite Dislocation Prefactor ASPECT = ', pfct_gt95_wqtz_disl_aspt)\n", + "print('')" + ] + }, + { + "cell_type": "markdown", + "id": "0c0bc1b5", + "metadata": {}, + "source": [ + "# Wet Anorthite from Rybacki et al. (2006)\n", + "\n", + "This study uses **water fugacity** explicitly in the original flow law formulation. \n", + "Therefore, we need to include an additional factor associated with the water fugacity term. \n", + "The simplest approach is to assume a constant water fugacity:\n", + "\n", + "$$\n", + "F_{H_2O} = f_{H_2O}^{\\,r}\n", + "$$\n", + "\n", + "Here, $f_{H_2O}$ is the water fugacity, taken as a constant value of **1 MPa**, and $r$ is the reported water fugacity exponent.\n", + "\n", + "The other two factors have the same formulation as in the previous case. \n", + "Therefore, the prefactor used in ASPECT and the experimental prefactor are related by\n", + "\n", + "$$\n", + "A_{\\text{ASPECT}} = F_{H_2O} \\, F_{\\text{unit}} \\, F_s \\, A_{\\text{exp}}\n", + "$$" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "336177d6", + "metadata": {}, + "outputs": [], + "source": [ + "# Rybacki et al. (2006) - Wet Anorthite - Dislocation Creep\n", + "pfct_ry06_want_disl_rprt = 10.**(0.2) # Original reported log(prefactor) in units of MPa^(-n-r) micrometers^m\n", + "sexp_ry06_want_disl_rprt = 3.0 # Original reported stress exponent\n", + "gexp_ry06_want_disl_rprt = 0 # Original reported grain size exponent\n", + "wfug_ry06_want_disl_rprt = 1 # Original reported water fugacity\n", + "constant_fug = 1 # 1MPa\n", + "\n", + "# Convert prefactor to units of Pa^(-n-r) meters^m s^-1\n", + "pfct_ry06_want_disl_unit = pfct_ry06_want_disl_rprt * \\\n", + " (1.e-6**(sexp_ry06_want_disl_rprt)) * \\\n", + " (1.e-6**gexp_ry06_want_disl_rprt)\n", + "\n", + "# Calculate water fugacity term\n", + "pfct_ry06_want_disl_ffac = constant_fug**wfug_ry06_want_disl_rprt\n", + "\n", + "# Calculate prefactor scaling term\n", + "pfct_ry06_want_disl_sfac = 3.**((sexp_ry06_want_disl_rprt+1.)/2.) / 2.0\n", + "\n", + "# Calculated modified prefactor term for ASPECT\n", + "pfct_ry06_want_disl_aspt = pfct_ry06_want_disl_ffac * pfct_ry06_want_disl_unit * pfct_ry06_want_disl_sfac\n", + "\n", + "print('')\n", + "print('Rybacki et al. (2006) Wet Anorthite Dislocation Prefactor Scaling = ', pfct_ry06_want_disl_sfac)\n", + "print('Rybacki et al. (2006) Wet Anorthite Dislocation Prefactor ASPECT = ', pfct_ry06_want_disl_aspt)\n", + "print('')" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "hmgeolib", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.23" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}