Giter Site home page Giter Site logo

geodynamics / relax Goto Github PK

View Code? Open in Web Editor NEW
25.0 14.0 18.0 86.53 MB

Relax implements a semi-analytic Fourier-domain solver and equivalent body forces to compute quasi-static relaxation of stress perturbation.

License: GNU General Public License v3.0

Python 2.57% Shell 8.91% TeX 8.22% Tcl 0.24% Fortran 59.39% Cuda 18.19% C++ 0.86% C 1.46% Batchfile 0.03% Assembly 0.13%

relax's Introduction

Relax: It's not an acronym, it's a motto!

Relax: It's not an acronym, it's a motto!

RELAX

time-dependent postseismic deformation with afterslip and viscoelastic flow.

INSTALLATION:

The code is written in Fortran90 and is optimized for the the gfortran and the INTEL ifort compiler. The gmt 4.5+ library is required to export results to GMT for post-processing.

DOCUMENTATION:

Generate a .pdf file of the documentation with the command:

pdflatex latex/documentation.tex

Generate a browsable version of the code with:

doxygen .doxygen

RUN:

Some examples are available in the examples directory. Look up the *.sh files for comments and explanations.

VISUALIZATION:

Many outputs are exported in the General Mapping Tools (GMT) format, deformation maps can be obtained with typical GMT post-processing. Check the post-processing and visualization tools available in the 'util' directory. Make sure to have the .ps file viewer 'gv' or the .pdf file viewer 'xpdf' installed. Simulations can be visualized in 3D with the free software Paraview (paraview.org).

PURPOSE:

RELAX computes nonlinear time-dependent viscoelastic deformation with powerlaw rheology and rate-strengthening friction in a cubic grid due to coseismic stress changes, initial stress, surface loads, and/or moving faults.

DESCRIPTION:

Computation is done semi-analytically inside a cartesian grid. The grid is defined by its size sx1sx2sx3 and the sampling intervals dx1, dx2 and dx3. Rule of thumb is to allow for at least five samples per fault length or width, and to have the tip of any fault at least 10 fault widths away from any edge of the computational grid.

Coseismic stress changes and initial coseismic deformation results from the presence of dislocations in the brittle layer. Fault geometry is prescribed following Okada or Wang's convention, with the usual slip, strike, dip and rake and is converted to a double-couple equivalent body-force analytically. Current implementation allows shear fault (strike slip and dip slip), dykes, Mogi source, and surface traction. Faults and dykes can be of arbitrary orientation in the half space.

INPUT:

Static dislocation sources are discretized into a series of planar segments. Slip patches are defined in terms of position, orientation, and slip, as illustrated in the following figure:

                 N (x1)
                /
               /| Strike
   x1,x2,x3 ->@------------------------      (x2)
              |\        p .            \ W
              :-\      i .              \ i
              |  \    l .                \ d
              :90 \  S .                  \ t
              |-Dip\  .                    \ h
              :     \. | Rake               \
              |      -------------------------
              :             L e n g t h
              Z (x3)

Dislocations are converted to double-couple equivalent body-force analytically. Solution displacement is obtained by application of the Green's functions in the Fourier domain.

For friction faults where slip rates are evaluated from stress and a constitutive law, the rake corresponds to the orientation of slip. That is, if r_i is the rake vector and v_i is the instantaneous velocity vector, then r_j v_j >= 0.

REFERENCES:

More information about parameters and constitutive laws can be found in

S. Barbot and Fialko Y., "Fourier-Domain Green's Function for an Elastic Semi- Infinite Solid under Gravity, with Applications to Earthquake and Volcano Deformation", Geophysical Journal International, v. 182, no. 2, pp. 568-582, 2010, doi:10.1111/j.1365-246X.2010.04655.x

and

S. Barbot and Fialko Y., "A Unified Continuum Representation of Postseismic Relaxation Mechanisms: Semi-Analytic Models of Afterslip, Poroelastic Rebound and Viscoelastic Flow", Geophysical Journal International, v. 182, 3, p. 1124-1140, 2010, doi:10.1111/j.1365-246X.2010.04678.x

Please cite these papers in publications or public presentations when referring to this method.

relax's People

Contributors

sbarbot avatar wlandry avatar smasuti avatar eheien avatar

Stargazers

NiKoJJ avatar Xiaoyong Wu avatar AmazonCc avatar Zhang Yunjun avatar Suoya Fan avatar Kefeng He avatar Bryan Marfito avatar  avatar Brendan Meade avatar  avatar Andy Tian avatar  avatar Rick Bennett avatar  avatar  avatar  avatar  avatar  avatar Zhongqiu He avatar  avatar  avatar  avatar President_K avatar Jiyang Ye avatar Junle Jiang avatar

Watchers

Jed Brown avatar Bill Broadley avatar James Cloos avatar  avatar Valere Lambert avatar Lorraine Hwang avatar Hiro Matsui avatar  avatar  avatar Rick Bennett avatar Xiaowen Wang avatar Tyler Esser avatar  avatar  avatar

relax's Issues

Help : the error when estimate the fault creep

Dear Sylvain,
Recently, when i use it to estimate my own case for fault creep, it take an error, just like this,

error at line 00203 of source file /home/rkkommu/src/relax/relax-git/src/friction3d.f90

wrong value of (a-b)sigma gives rise to
(a - b) * sigma = 1.000E-03
tau = 1.734E+00
tau_s = 1.571E+00
tau_n = 2.715E-01
tau / ((a - b) sigma) = 1.734E+03

I check the friction3d file , it said if (tau/tauc) .gt. 20 ,then will print the error tips.
I followed your paper of parkfield postseismic deformation, and my total slip similar to 0.5m. So I set the (a-b)sig from 0.2Mpa to 1.4Mpa. Because of using fault displacement in meters and dimension in kilometers , so I multiply 1E-3 and change it to Gpa. The reference rate is from 1 to 50 mm.
Is my understanding wrong? I was wondering if you can help me ,thank you.
Yours,
Jingwei

Relax binary don't calculates and plots the coseismic displacement (000-up.grd)

Hi guys

I am Abraham, a young geologist, actually, I work in a seismotectonic project. After I run the Relax binary with "source setup.sh" in my terminal, I start to run the co-stress.sh but the software doesn't plot the displacement data, only I obtained the:
Strain.txt and Strain.grd database
c grid.vtp
in.param
report.txt
rfaults-001.vtp
rfaults-001.xy

and I need the 000-up.grd

My database is containing by 5292 observation planes and I don't know what happen with my displacement.

how set the appropriate grids (SX DX)

Recently, I try to set a new model to do the study. My vertical fault geometry is about 2*2km patches. The total length of fault is 200km,and the depth is 30km. So I set the SX = 512, then set the Dx = 0.35 for a best result by trial and error. However the range of SX*DX is small than I want. When I increase the SX to 1024 , the code don't output any result. Then i found the max value of SX is about 800. In addition, if I increase the DX, the reslut is not good as the Dx =0.35. So my question is how to set an appropriate grids values to get the best result and the most range both.
Thank you.

Install geodynamics/relax

Hi everyone!
I wanna ask about installing, when I try to source setup.sh the result is error like this
image
sorry for very basic question

GMT fatal error

I receive a "fatal error" when running the practice file for a left-lateral strike slip fault. I copied and pasted the code from Figure 6 in the user documentation. When I run the launch file, I get the message:

GMT Fatal Error: No SI/US keyword in GMT configuration file (FONT_LABEL = 12p,Helvetica,black
)

None of the .grd files are produced. Has anyone encountered this error before?

Thanks

chi-chi example can't get the same result of figure3a

Dear author,
The Relax is a good method to research the postseismic. And the name of Relax is full of wisdom. Recently ,i use the chi-chi earthquake example (Rousset et al,2012)to study the code. I want to get the the same result of figure3a. so i use the coseismic.sh and change the
# observation depth (dispalcement amd stress)
0 15
Then ,I use the grdmath method which is told in 6.4 chapter to calculate the norm of the deviatoric stress.
However, I get result like figure, the value is smaller than the paper. I don't change other parameters.
I was wonder if you can help me.

How to set the time integration parameter when there are multiple viscoelastic layers with different Maxwell time

Hi all,
In the guidebook, the integration time seems to be equal to year/tm, where year is what user wants. My question is: when there are multiple viscoelastic layers with different Maxwell time, which tm should be used to calculate the integration time?
For example, there is a jelly sandwich model where the tm of the lower curst is tm=10yr and the tm of the asthenosphere is tm=5yr. Then I want to calculate the post-seismic deformation after 70yr, how do I calculate the integration time? Should it be 70/5 or 70/10?
I am confused by this for a long time. Thank you very much!

the input of coseismic slip model

Hi everyone,
I am new to using Relax. As I know, the coseismic slip distribution is always described by Lon/Lat/Depth. Converting to the format required by Relax is not easy. And I am worried about errors while converting the coordinate system. Is there any method or script to guarantee the conversion is correct?
I was wondering if you could help me. Thank you!
Yours sincerely,
Xiongwei

Installment on Mac OS

Dear Prof. Barbot,

Recently, I have been using the executable program of RELAX on MacOS and obtained a lot of insights with this brilliant tool. However, I need to modify the resampling rate of vtk outputs to detect the detailed 3D fearture. So I tried to install the master version of RELAX but it kept showing error of not finding "NETCDF". I added options to give path of my netcdf files as you suggested in last issuse but still couldn't fix it (other necessary affiliated files are all set). I would appreciate it a lot if you could give any comments for this situation!
1
2
Best,
Chao

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.