ZelongGuo / dislocation

Dislocation sources for elastic deformation calculations.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Dislocation

Still Under Developing...

Calculating elastic deformation from dislocation sources

Mind the unit: recommend the International System of Units.

Though strain is a dimensionless quantity, specifying dislocation unit same with fault parameters would help avoid further transformation.

Point source model codes have not been tested yet, use them at your own risk.

1. Compile and Install

Compile (by shared library/dynamic link library, dll)

Using setup.py file, building shared library in current directory otherwise in ./build

python setup.py build --build-lib ./

or, equivalently using gcc or clang compiler, -undefined dynamic_lookup is essential for undefined symbols:

gcc/clang src/dislocation.c src/okada_dc3d.c src/okada_disloc3d.c -fPIC -O2 -I<NumPy_core_include_path> -I<Python_include_path>/python3.XX -shared -undefined dynamic_lookup -o dislocation.so

Then you can copy the shared library .so file to your site-packages folder of your current python environment, or to your working directory. Then you could import the module successfully.

2. Todo

  • Reduce singularities of triangular elements with Nikkhoo and Walter GJI algorithms ...
  • Install with Pypi

2. Reference:

  • Okada, Y., 1992, Internal deformation due to shear and tensile faults in a half-space, Bull. Seism. Soc. Am., 82, 1018-1040.

  • Brendan J. Meade, 2007, Algorithms for the calculation of exact displacements, strains, and stresses for triangular dislocation elements in a uniform elastic half space, Computer & Geosciences, 33, 1064-1075.

  • Nikkhoo, M., Walter, T. R., 2015, Triangular dislocation: an analytical, artefact-free solution. Geophysical Journal International, 201, 2, 1119-1141.

More Useful Resources:

Codes:
okada_wrapper
okada4py
dc3d from stanford

Zelong Guo, Potsdam
zelong.guo@outlook.com

About

Dislocation sources for elastic deformation calculations.

License:GNU General Public License v3.0


Languages

Language:C 91.9%Language:Fortran 7.8%Language:Python 0.3%