Skip to content

calculates strain rates using iceutils with measures velocity data

Notifications You must be signed in to change notification settings

shahinmg/measures_strain_rates

Repository files navigation

measures_strain_rates

measures_strain_rates uses iceutils to calculate strain rates from NASA's MEaSUREs velocity products (0646 optical and 0731 sar and landsat). To use this, you will need to install iceutils and rasterio

Installation

iceutils depends on these packages

numpy
scipy
matplotlib
gdal
h5py
pyproj
scikit-image
tqdm
rasterio
opencv
scikit-learn
pint
cvxopt

Below is a slightly modified version of how to install iceutils

# Install requirements
conda install -c conda-forge --file=requirements.txt

To install iceutils, you may clone a read-only version of the repository:

git clone https://github.com/bryanvriel/iceutils.git

Or, if you are developer, you may clone with SSH:

git clone [email protected]:bryanvriel/iceutils.git

Then, simply run pip install . in the main repository directory to install.

In the cloned directory, you'll find several Python source files, each containing various functions and classes. While the naming of the source files gives a hint about what they contain, all functions are classes are imported into a common namespace. For example, the file stress.py contains a function compute_stress_strain(). This function would be called as follows:

import iceutils as ice

stress_strain = ice.compute_stress_strain(vx, vy)

Python file descriptions

calc_strain_rates.py

calc_strain_rates.py calculates inputed component velocities and saves a strain rate tiff with the following bands

band 1: e_xx (units yr$^{-1}$)
band 2: e_yy (units yr$^{-1}$)
band 3: e_xy (units yr$^{-1}$)
band 4: dilatation (units yr$^{-1}$)
band 5: effective strain rate (units yr$^{-1}$)
band 6: effective_tensile strain rate (units yr$^{-1}$)
band 7: von_Mises_Stress (units Mpa)

calc_strain_rates_parallel_0646.py & calc_strain_rates_parallel_0731

calc_strain_rates_parallel_0646.py and calc_strain_rates_parallel_0731.py calculates inputed component velocities and saves a strain rate tiff with the following bands in parallel using python's multiprocessing package

band 1: e_xx (units yr$^{-1}$)
band 2: e_yy (units yr$^{-1}$)
band 3: e_xy (units yr$^{-1}$)
band 4: dilatation (units yr$^{-1}$)
band 5: effective strain rate (units yr$^{-1}$)
band 6: effective_tensile strain rate (units yr$^{-1}$)
band 7: von_Mises_Stress (units Mpa)

the von Mises stress output in band 7 is calculated using the equations from Morlighem et al (2016) equation 7. Effective tensile strain rate (band 6) comes from Morlighem et al (2016) equation 6

clip_GL_mosiac.py

clip_GL_mosiac.py clips the 0731 velocity mosiacs to a specifc extent. This was done using QGIS' gdal:cliprasterbyextent tool with QGIS' python interpreter

gdal_fill_na.py

gdal_fill_na.py fills in missing data in the velocity raster. This was only used for the 0731 velocity data.

About

calculates strain rates using iceutils with measures velocity data

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages