A thermo-visco-elastic modoel for hydraulically driven crevasse propagation through cold ice. This model was originally created by Kristin Poinar (Poinar et al., 2017), written in MatLab. The Python implementation was initially created by jzmejia Aug 2021. This repo contains the python implementaion of crevprop which includes added functionality, project restructuring, and additional/expanded equations.
import pandas as pd
from crevprop.iceblock import IceBlock
# initialize model geometry for a domain with an ice thickness
# of 1000 m and vertical resolution (dz spacing) of 1 m.
df = pd.read_csv('temperature_profile.csv')
creep_df = pd.read_csv('creep_deformation_file_name.csv',
names=['t','z'])
ib=IceBlock(1000,
1,
dt=1,
years_to_run=2,
thermal_freq=10,
crev_spacing=30,
u_surf=200,
T_profile=df,
sigmaT0=120e3,
creep_table=creep_df,
include_creep=True,
Qin_annual=5000,
shear_modulus=0.1e9
)
This model is currently under development and is not ready for public use. Module is currently unstable and we can not guarantee the validity of results or functionality until version 1 release.
iceblock.py
- main container user interfaces with to run model, spin up domain, and evolve through time.
temperature_field.py
- Thermal model for iceblock, manages and calculates changing ice temperatures, crevasse refreezing.
crevassefield.py
- Main container managing crevasse field geometry and crevasse instances for each crevasse in domain.
crevasse.py
- Crevasse object implementing crevasse evolution and fracture mechanics to evolve crevasses through time.
fracture.py
- Individual functions for linear elastic fracture mechanics. Called by Crevasse
. Stand alone use.
physical_constants.py
- Utilities, called by other files.
Note: This content will be moved to the documentation and removed from
the README.md
.
Model parameters to navigate the equations used in crevasse_propagation
within relevant literature (e.g., Poinar et al., 2017; Van der Veen 2007;
Weertman 1964, 1983, 1996).
parameter | module | units | |
---|---|---|---|
Ice thickness | H | ice_thickness |
m |
Crevase spacing | R | crev_spacing |
m |
Water depth in crevasse | w | water_depth |
m |
Longitudinal stress | sigmaT0 |
kPa | |
Shear modulus |
shear_modulus ,mu
|
0.07-3.9 GPa | |
Water flux | Q | Qin |
m |
Water flux initialization | Qin_annual |
m |
|
Fracture toughness of ice | fracture_toughness |
Pa m |
Comparison between Weertman (1964, 1983, 1996), van der veen 2007, and Poinar 2017.
parameter | 1964 | 1983 | 1996 | van der veen | poinar |
---|---|---|---|---|---|
ice thickness | H | H | |||
variable depth | y | b | z | ||
crevasse depth | L | L | d | d | |
depth to water surface | - |
a | w | ||
height of water column | d-a | ||||
average tensile stress | T | ||||
tensile stress |
|||||
compressive hydrostatic stress | |||||
shear modulus | G | ||||
constant | |||||
stress intensity factor | |||||
K at crack tip | |||||
critical K for ice | KIC | ||||
net Burgers vector | |||||
crevasse opening displacement | e(d,z) | ||||
crevasse width | W(z) |