[CIG-SHORT] problem with rate-and-state friction model

Lucas Abraham Willemsen lawillem at MIT.EDU
Fri Jul 6 11:02:54 PDT 2012


Hi Surendra,
<https://owa.exchange.mit.edu/owa/?ae=PreFormAction&a=ReplyAll&t=IPM.Note&id=RgAAAAB1NXLERY9uR7yiheDQmP1BBwAd%2fVlvHQzcT4hrMS%2fFiWQQABxKrtfnAAByTLTH1oVvR59YeYz6d3qMAAAABKrzAAAJ&pspid=_1341597359938_81038258#>

When I run the code, there is 0.0 displacement (displayed by paraview). The state variable and fault traction remain unchanged, so the stress remains in excess of the strength on the middle patch. I guess that even though you record negligible changes (rounding?), the shear stress remains larger than the strength while nothing happens anymore?

with kind regards,
Lucas
________________________________
From: surendra at caltech.edu [surendra at caltech.edu]
Sent: Thursday, July 05, 2012 6:29
To: Lucas Abraham Willemsen
Subject: Re: [CIG-SHORT] problem with rate-and-state friction model

Hi Lucas,

TractionPerturbation is a recent change to PyLith, implemented after I have stopped keeping track of source code.  I hope this modification is done properly.

I ran your problem and got negligible displacements.  Although, shear stress in the middle patch is greater than strength, it could be possible that rupture started and died very soon.  The only way to test this would be to run a different code with the same set of parameters.  May be someone else has a better answer.


Surendra

On Jul 3, 2012, at 2:02 PM, Lucas Abraham Willemsen wrote:

Hi Surendra.


a*log(slipRateLinear / slipRate0) evaluates to a*log(e) = a*1.0 = a

-a*(1.0 - slipRate/slipRateLinear) should reduce to -a*1.0 = -a, since slipRate = 0 at the start (and also during every single step when a = 0.02)

These two values of 'a' then cancel. Or am I perhaps missing something extremely obvious?


Lucas


________________________________
From: surendra at caltech.edu<mailto:surendra at caltech.edu> [surendra at caltech.edu<mailto:surendra at caltech.edu>]
Sent: Tuesday, July 03, 2012 16:58
To: Lucas Abraham Willemsen
Subject: Re: [CIG-SHORT] problem with rate-and-state friction model

I am reply just based on your "P.S."  I don't see how log(x) cancels with (1-1/x)

Surendra


On Jul 3, 2012, at 1:18 PM, Lucas Abraham Willemsen wrote:

Hi,

Currently I have adapted the TPV205 example (from the workshop) to model a fault patch with rate-and-state friction. Just as in the example I apply initial tractions to the fault by using a spatialdb.

The problem is that with the values I use for the parameters, rupture should take place on a specific fault patch. According to the source code, the rate-and-state friction model is implemented as follows when the 'slip rate' is less than the 'minimum slip rate' (linearization):


      mu_f = f0 + a*log(slipRateLinear / slipRate0) + b*log(slipRate0*theta/L) -
        a*(1.0 - slipRate/slipRateLinear);

(This is different from what is currently written in the manual, eqn 6.66.) Since the fault starts with zero slip rate, verified by paraview, (v = 0), the line of code above should calculate the friction coefficient. Below I list the meaning of the symbols, and the values I used.

------------------------------------------------------------------------------------------------
mu_f:                    friction coefficient:                     will be calculated by pylith
f0:                         reference friction coefficient:    0.4
a:                          rate-state parameter a:              0.02
b:                          rate-state parameter b:              0.05
L:                          characteristic slip distance:       0.005m
slipRateLinear:   Also known as Vmin:                  1.0e-12m/s
slipRate0:            Reference slip rate:                    0.367879e-12m/s         (1/e)*10^(-12)
theta:                   State variable (at t=0)               1.359e10*s
------------------------------------------------------------------------------------------------

With these values, mu_f should reduce to f0 (=0.4) at t = 0.

I apply a uniform normal stress of 190 MPa on the fault. With mu_f = 0.4 everywhere on the fault, the strength of any fault patch should be 0.4 * 190 = 76 MPa (0 cohesion). The initial tractions are defined in the file 'tractions.spatialdb'. This file creates three initial shear stress perturbations around the uniform shear stress of 70 MPa. The middle perturbation has a shear stress of 82 MPa. Since this is larger than the shear strength of 76 MPa I would expect a rupture to initiate at the middle stress perturbation. But nothing happens.

Could someone please tell me what I am doing wrong? The strength is less than the shear stress on the middle stress perturbation. I'd therefore expect it should rupture.

I uploaded the source code at the following location: http://web.mit.edu/lawillem/www/ratestate.zip
The model can be run with the following command:

pylith tet4_200m.cfg tet4.cfg       (I suggest you add --nodes=4 or something like that, because it may run for half an hour otherwise)

Cheers,
Lucas

(P.S. When I reduce the parameter 'a' to 0.002 the middle patch does rupture. But I do not see why the parameter a has any influence. I have chosen my parameters in such a way that 'log(slipRateLinear / slipRate0)' goes to 1, cancelling the  '(1.0 - slipRate/slipRateLinear) ' term since the slipRate is initially zero. Changing the b parameter does not seem to have an effect. This suggests that the parameter 'a' does not cancel, but I fail to see why.)









_______________________________________________
CIG-SHORT mailing list
CIG-SHORT at geodynamics.org<mailto:CIG-SHORT at geodynamics.org>
http://geodynamics.org/cgi-bin/mailman/listinfo/cig-short

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://geodynamics.org/pipermail/cig-short/attachments/20120706/72cb99d4/attachment.htm 


More information about the CIG-SHORT mailing list