Te_HF_Conversion package

Submodules

Te_HF_Conversion.CalcYSE_HF module

Convert the elastic thickness into a heat flow given the input rheology. Convert a temperature profile into a yield strength envelope and elastic thickness.

Te_HF_Conversion.CalcYSE_HF.Brittle_Strength(Tc, R_mpr, g_surf, rhom, rhoc, rhobar, z_profile)

Compute the Brittle strength of the lithosphere based on the approach of Mueller & Phillips (1995).

Returns

  • d_sig_tab1 (array size(depth)) – Brittle yield strength envelope in compression (Pa).

  • d_sig_tab2 (array size(depth)) – Brittle yield strength envelope in tension (Pa).

Parameters
  • Tc (float) – Crustal thickness (m).

  • R_mpr (float) – Mean radius of the body (m).

  • g_surf (float) – Gravitational attraction of the surface (m s-2).

  • rhoc (float) – Crustal density (kg m-3).

  • rhom (float) – Mantle density (kg m-3).

  • rhobar (float) – Mean density of the body (kg m-3).

  • z_profile (array, float) – Depth array (downward positive).

Te_HF_Conversion.CalcYSE_HF.Conversion_Te_HF(Q_crust, A_crust, n_crust, Q_mantle, A_mantle, n_mantle, g_surf, rhobar, R_mpr, Te, Tc, k_crust, k_mantle, K_curv, H_c, rhoc, rhom, eps, young, poisson, sig_y, Ts, R_gas, HF_min=None, HF_max=None, HF_step=None, step_depth=None, max_depth=None, quiet=True, plot=False, plot_YSE=False, figsize=[6.4, 4.8])

Determine the surface, crustal, and mantle heat flows, mechanical thickness, and thermal gradients from input rheology and elastic parameters.

Returns

  • F_c (float) – The crustal heat flow (mW m-2).

  • F_m (float) – The mantle heat flow (mW m-2).

  • F_s (float) – The surface heat flow (mW m-2).

  • dT_c (float) – The crust temperature gradient (K km-1).

  • dT_m (float) – The mantle temperature gradient (K km-1).

  • dT_s (float) – The surface temperature gradient (K km-1).

  • Tm (Float) – Mechanical thickness of the lithosphere (m).

  • d_sig_tmp1_best (array, size(max_depth / step_depth)) – The best-fitting YSE compression (Pa).

  • d_sig_tmp0_best (array, size(max_depth / step_depth)) – The best-fitting YSE tension (Pa).

  • ax1 (matplotlib axes object) – If plot is True – Axis where the YSE is plotted.

  • ax2 (matplotlib axes object) – If plot is True – Axis where the temperature profile is plotted.

Parameters
  • Q_crust (float) – Activation energy for the crust (J mol-1).

  • A_crust (float) – Empirical constant for the crust (Pa-n s-1).

  • n_crust (float) – Rheological constant for the crust.

  • Q_mantle (float) – Activation energy for the mantle (J mol-1).

  • A_mantle (float) – Empirical constant for the mantle (Pa-n s-1).

  • n_mantle (float) – Rheological constant for the mantle.

  • g_surf (float) – Gravitational attraction of the surface (m s-2).

  • rhobar (float) – Mean density of the body (kg m-3).

  • R_mpr (float) – Mean radius of the body (m).

  • Te (float) – Elastic thickness (m).

  • Tc (float) – Crustal thickness (m).

  • k_crust (float) – Thermal conductivity in the crust (W m−1 K−1).

  • k_mantle (float) – Thermal conductivity in the mantle (W m−1 K−1).

  • K_curv (float) – Plate curvature (m-1).

  • H_c (float) – Average volumetric crustal heat production (W kg-1).

  • rhoc (float) – Crustal density (kg m-3).

  • rhom (float) – Mantle density (kg m-3).

  • eps (float) – Strain rate (s-1).

  • young (float) – Young’s modulus (Pa).

  • poisson (float) – Poisson’s ratio.

  • sig_y (float) – Bounding stress (Pa).

  • Ts (float) – Surface temperature (K).

  • R_gas (float) – Gas constant (J mol-1 K-1).

  • HF_min (float, optional, default = None) – Minimum heat flow to test (mW m-2), if None we guess it assuming mechanical thickness equals elastic thickness (zero curvature).

  • HF_max (float, optional, default = None) – Maximum heat flow to test (mW m-2), if None we guess it assuming mechanical thickness equals elastic thickness (zero curvature).

  • HF_step (float, optional, default = 1) – Heat flow step to test (mW m-2)

  • step_depth (integer, optional, default = Te / 1000.) – Iteration depth step for the integration.

  • max_depth (integer, optional, default = Te * 3) – Maximum depth for the integration.

  • quiet (boolean, optional, default = True) – if True, print various outputs.

  • plot (boolean, optional, default = False) – if True, plot the best-fit yield strength envelope and temperature profile.

  • plot_YSE (boolean, optional, default = False) – if True, plot the yield strength envelope for each tested heat flows.

  • figsize (tuple, optional, default = mpl.rcParams['figure.figsize']) – Size of the output figure.

Te_HF_Conversion.CalcYSE_HF.Conversion_Tprofile_Te(T_profile, z_profile, Q_crust, A_crust, n_crust, Q_mantle, A_mantle, n_mantle, g_surf, rhobar, R_mpr, Tc, rhoc, rhom, eps, young, poisson, sig_y, R_gas, K_curv=1e-07, Te_min=5, Te_max=300, Te_step=1, quiet=True, plot=False, figsize=[6.4, 4.8])

Determine the elastic thicknesses from the input temperature profile and rheology.

Returns

  • Te (float) – Elastic thickness of the lithosphere (m).

  • d_sig_tmp1_best (array, size(max_depth / step_depth)) – The best-fitting YSE compression (Pa).

  • d_sig_tmp0_best (array, size(max_depth / step_depth)) – The best-fitting YSE tension (Pa).

  • ax1 (matplotlib axes object) – If plot is True – Axis where the YSE is plotted.

  • ax2 (matplotlib axes object) – If plot is True – Axis where the temperature profile is plotted.

Parameters
  • T_profile (array, float) – Temperature profile (K).

  • z_profile (array, float) – Depth (downward positive) associated with each temperature (m). The profile should contain with equidistant values and start from 0.

  • Q_crust (float) – Activation energy for the crust (J mol-1).

  • A_crust (float) – Empirical constant for the crust (Pa-n s-1).

  • n_crust (float) – Rheological constant for the crust.

  • Q_mantle (float) – Activation energy for the mantle (J mol-1).

  • A_mantle (float) – Empirical constant for the mantle (Pa-n s-1).

  • n_mantle (float) – Rheological constant for the mantle.

  • g_surf (float) – Gravitational attraction of the surface (m s-2).

  • rhobar (float) – Mean density of the body (kg m-3).

  • R_mpr (float) – Mean radius of the body (m).

  • Tc (float) – Crustal thickness (m).

  • rhoc (float) – Crustal density (kg m-3).

  • rhom (float) – Mantle density (kg m-3).

  • eps (float) – Strain rate (s-1).

  • young (float) – Young’s modulus (Pa).

  • poisson (float) – Poisson’s ratio.

  • sig_y (float) – Bounding stress (Pa).

  • R_gas (float) – Gas constant (J mol-1 K-1).

  • K_curv (float, optional, default = 1e-7) – Plate curvature (m-1).

  • Te_min (float, optional, default = 5) – Minimum elastic thickness investigated (km).

  • Te_max (float, optional, default = max(300, z_profile)) – Maximum elastic thickness investigated (km).

  • Te_step (float, optional, default = 1) – Elastic thickness step to test (km).

  • quiet (boolean, optional, default = True) – if True, print various outputs.

  • plot (boolean, optional, default = False) – if True, plot the best-fit yield strength envelope and temperature profile.

  • figsize (tuple, optional, default = mpl.rcParams['figure.figsize']) – Size of the output figure.

Te_HF_Conversion.CalcYSE_HF.Curv_Moment(d_sig_tmp0, d_sig_tmp1, K_curv, young, poisson, depth, step_depth, sig_y, HF=0, neutralfib=None, plot_YSE=False, decoupling=False, show=True, ax=None, figsize=[6.4, 4.8])

Determine the bending moment given the input yield strength envelope and curvature.

Returns

  • Mx (float) – The bending moment of the plate

  • d_sig_tab1 (array size(depth)) – Integrated part of the yield strength envelope in compression (Pa)

  • d_sig_tab2 (array size(depth)) – Integrated part of the yield strength envelope in tension (Pa)

  • sig_ela (array size(depth)) – Integrated elastic part of the yield strength envelope (Pa)

  • neutralfib (float) – Neutral fiber index to be used for the next iteration

Parameters
  • d_sig_tmp0 (float) – Stress curve, tension (Pa).

  • d_sig_tmp1 (float) – Stress curve, compression (Pa).

  • K_curv (float) – Plate curvature (m-1).

  • young (float) – Young’s modulus (Pa).

  • poisson (float) – Poisson’s ratio.

  • depth (array, float) – Input depth for the integration (m).

  • step_depth (float) – Iteration depth step for the integration.

  • sig_y (float) – Bounding stress (Pa).

  • HF (float, optional, default = 0) – The input mantle heat flow (W m-2).

  • neutralfib (int, optional, default = None) – Neutral fiber index of the previous interation.

  • plot_YSE (boolean, optional, default = False) – If true, plot the yield strength envelope

  • decoupling (boolean, optional, default = False) – If true, the rheology is decoupled and we plot 2 sets of curvatures on ax if plot_YSE.

  • show (boolean, optional, default = True) – If true, show the plot once the first decoupled part is plotted on ax if plot_YSE.

  • ax (object, optional, default = None) – Axis for plotting.

  • figsize (tuple, optional, default = mpl.rcParams['figure.figsize']) – Size of the output figure.

Te_HF_Conversion.Planet_constants module

Module contents

Te_HF_Conversion

Te_HF_Conversion provides a function and an example script for converting a given elastic thickness of the lithosphere into a planetary heat flow, or a temperature profile into a yield strength envelope and elastic thickness. Radiogenic heat contribution and wet or dry rheologies are implemented.

Conversion_Te_HF

Determine the surface, crust, and mantle heat flows given the input parameters.

Curv_Moment

Performs the to moment calculation.

Conversion_Tprofile_Te

Convert a temperature profile into an elastic thickness and yield strength envelope.

Brittle_Strength

Compute the brittle part of the yield strength envelope based on planetary constants.

Planet_constants

Contains the constants used in the calculations.

Te_HF_Conversion.Brittle_Strength(Tc, R_mpr, g_surf, rhom, rhoc, rhobar, z_profile)

Compute the Brittle strength of the lithosphere based on the approach of Mueller & Phillips (1995).

Returns

  • d_sig_tab1 (array size(depth)) – Brittle yield strength envelope in compression (Pa).

  • d_sig_tab2 (array size(depth)) – Brittle yield strength envelope in tension (Pa).

Parameters
  • Tc (float) – Crustal thickness (m).

  • R_mpr (float) – Mean radius of the body (m).

  • g_surf (float) – Gravitational attraction of the surface (m s-2).

  • rhoc (float) – Crustal density (kg m-3).

  • rhom (float) – Mantle density (kg m-3).

  • rhobar (float) – Mean density of the body (kg m-3).

  • z_profile (array, float) – Depth array (downward positive).

Te_HF_Conversion.Conversion_Te_HF(Q_crust, A_crust, n_crust, Q_mantle, A_mantle, n_mantle, g_surf, rhobar, R_mpr, Te, Tc, k_crust, k_mantle, K_curv, H_c, rhoc, rhom, eps, young, poisson, sig_y, Ts, R_gas, HF_min=None, HF_max=None, HF_step=None, step_depth=None, max_depth=None, quiet=True, plot=False, plot_YSE=False, figsize=[6.4, 4.8])

Determine the surface, crustal, and mantle heat flows, mechanical thickness, and thermal gradients from input rheology and elastic parameters.

Returns

  • F_c (float) – The crustal heat flow (mW m-2).

  • F_m (float) – The mantle heat flow (mW m-2).

  • F_s (float) – The surface heat flow (mW m-2).

  • dT_c (float) – The crust temperature gradient (K km-1).

  • dT_m (float) – The mantle temperature gradient (K km-1).

  • dT_s (float) – The surface temperature gradient (K km-1).

  • Tm (Float) – Mechanical thickness of the lithosphere (m).

  • d_sig_tmp1_best (array, size(max_depth / step_depth)) – The best-fitting YSE compression (Pa).

  • d_sig_tmp0_best (array, size(max_depth / step_depth)) – The best-fitting YSE tension (Pa).

  • ax1 (matplotlib axes object) – If plot is True – Axis where the YSE is plotted.

  • ax2 (matplotlib axes object) – If plot is True – Axis where the temperature profile is plotted.

Parameters
  • Q_crust (float) – Activation energy for the crust (J mol-1).

  • A_crust (float) – Empirical constant for the crust (Pa-n s-1).

  • n_crust (float) – Rheological constant for the crust.

  • Q_mantle (float) – Activation energy for the mantle (J mol-1).

  • A_mantle (float) – Empirical constant for the mantle (Pa-n s-1).

  • n_mantle (float) – Rheological constant for the mantle.

  • g_surf (float) – Gravitational attraction of the surface (m s-2).

  • rhobar (float) – Mean density of the body (kg m-3).

  • R_mpr (float) – Mean radius of the body (m).

  • Te (float) – Elastic thickness (m).

  • Tc (float) – Crustal thickness (m).

  • k_crust (float) – Thermal conductivity in the crust (W m−1 K−1).

  • k_mantle (float) – Thermal conductivity in the mantle (W m−1 K−1).

  • K_curv (float) – Plate curvature (m-1).

  • H_c (float) – Average volumetric crustal heat production (W kg-1).

  • rhoc (float) – Crustal density (kg m-3).

  • rhom (float) – Mantle density (kg m-3).

  • eps (float) – Strain rate (s-1).

  • young (float) – Young’s modulus (Pa).

  • poisson (float) – Poisson’s ratio.

  • sig_y (float) – Bounding stress (Pa).

  • Ts (float) – Surface temperature (K).

  • R_gas (float) – Gas constant (J mol-1 K-1).

  • HF_min (float, optional, default = None) – Minimum heat flow to test (mW m-2), if None we guess it assuming mechanical thickness equals elastic thickness (zero curvature).

  • HF_max (float, optional, default = None) – Maximum heat flow to test (mW m-2), if None we guess it assuming mechanical thickness equals elastic thickness (zero curvature).

  • HF_step (float, optional, default = 1) – Heat flow step to test (mW m-2)

  • step_depth (integer, optional, default = Te / 1000.) – Iteration depth step for the integration.

  • max_depth (integer, optional, default = Te * 3) – Maximum depth for the integration.

  • quiet (boolean, optional, default = True) – if True, print various outputs.

  • plot (boolean, optional, default = False) – if True, plot the best-fit yield strength envelope and temperature profile.

  • plot_YSE (boolean, optional, default = False) – if True, plot the yield strength envelope for each tested heat flows.

  • figsize (tuple, optional, default = mpl.rcParams['figure.figsize']) – Size of the output figure.

Te_HF_Conversion.Conversion_Tprofile_Te(T_profile, z_profile, Q_crust, A_crust, n_crust, Q_mantle, A_mantle, n_mantle, g_surf, rhobar, R_mpr, Tc, rhoc, rhom, eps, young, poisson, sig_y, R_gas, K_curv=1e-07, Te_min=5, Te_max=300, Te_step=1, quiet=True, plot=False, figsize=[6.4, 4.8])

Determine the elastic thicknesses from the input temperature profile and rheology.

Returns

  • Te (float) – Elastic thickness of the lithosphere (m).

  • d_sig_tmp1_best (array, size(max_depth / step_depth)) – The best-fitting YSE compression (Pa).

  • d_sig_tmp0_best (array, size(max_depth / step_depth)) – The best-fitting YSE tension (Pa).

  • ax1 (matplotlib axes object) – If plot is True – Axis where the YSE is plotted.

  • ax2 (matplotlib axes object) – If plot is True – Axis where the temperature profile is plotted.

Parameters
  • T_profile (array, float) – Temperature profile (K).

  • z_profile (array, float) – Depth (downward positive) associated with each temperature (m). The profile should contain with equidistant values and start from 0.

  • Q_crust (float) – Activation energy for the crust (J mol-1).

  • A_crust (float) – Empirical constant for the crust (Pa-n s-1).

  • n_crust (float) – Rheological constant for the crust.

  • Q_mantle (float) – Activation energy for the mantle (J mol-1).

  • A_mantle (float) – Empirical constant for the mantle (Pa-n s-1).

  • n_mantle (float) – Rheological constant for the mantle.

  • g_surf (float) – Gravitational attraction of the surface (m s-2).

  • rhobar (float) – Mean density of the body (kg m-3).

  • R_mpr (float) – Mean radius of the body (m).

  • Tc (float) – Crustal thickness (m).

  • rhoc (float) – Crustal density (kg m-3).

  • rhom (float) – Mantle density (kg m-3).

  • eps (float) – Strain rate (s-1).

  • young (float) – Young’s modulus (Pa).

  • poisson (float) – Poisson’s ratio.

  • sig_y (float) – Bounding stress (Pa).

  • R_gas (float) – Gas constant (J mol-1 K-1).

  • K_curv (float, optional, default = 1e-7) – Plate curvature (m-1).

  • Te_min (float, optional, default = 5) – Minimum elastic thickness investigated (km).

  • Te_max (float, optional, default = max(300, z_profile)) – Maximum elastic thickness investigated (km).

  • Te_step (float, optional, default = 1) – Elastic thickness step to test (km).

  • quiet (boolean, optional, default = True) – if True, print various outputs.

  • plot (boolean, optional, default = False) – if True, plot the best-fit yield strength envelope and temperature profile.

  • figsize (tuple, optional, default = mpl.rcParams['figure.figsize']) – Size of the output figure.

Te_HF_Conversion.Curv_Moment(d_sig_tmp0, d_sig_tmp1, K_curv, young, poisson, depth, step_depth, sig_y, HF=0, neutralfib=None, plot_YSE=False, decoupling=False, show=True, ax=None, figsize=[6.4, 4.8])

Determine the bending moment given the input yield strength envelope and curvature.

Returns

  • Mx (float) – The bending moment of the plate

  • d_sig_tab1 (array size(depth)) – Integrated part of the yield strength envelope in compression (Pa)

  • d_sig_tab2 (array size(depth)) – Integrated part of the yield strength envelope in tension (Pa)

  • sig_ela (array size(depth)) – Integrated elastic part of the yield strength envelope (Pa)

  • neutralfib (float) – Neutral fiber index to be used for the next iteration

Parameters
  • d_sig_tmp0 (float) – Stress curve, tension (Pa).

  • d_sig_tmp1 (float) – Stress curve, compression (Pa).

  • K_curv (float) – Plate curvature (m-1).

  • young (float) – Young’s modulus (Pa).

  • poisson (float) – Poisson’s ratio.

  • depth (array, float) – Input depth for the integration (m).

  • step_depth (float) – Iteration depth step for the integration.

  • sig_y (float) – Bounding stress (Pa).

  • HF (float, optional, default = 0) – The input mantle heat flow (W m-2).

  • neutralfib (int, optional, default = None) – Neutral fiber index of the previous interation.

  • plot_YSE (boolean, optional, default = False) – If true, plot the yield strength envelope

  • decoupling (boolean, optional, default = False) – If true, the rheology is decoupled and we plot 2 sets of curvatures on ax if plot_YSE.

  • show (boolean, optional, default = True) – If true, show the plot once the first decoupled part is plotted on ax if plot_YSE.

  • ax (object, optional, default = None) – Axis for plotting.

  • figsize (tuple, optional, default = mpl.rcParams['figure.figsize']) – Size of the output figure.