[cig-commits] commit: Remove frictionplaneeigenstress since it is never used.

Mercurial hg at geodynamics.org
Thu May 10 13:59:42 PDT 2012


changeset:   96:094204a4ef99
tag:         tip
user:        Walter Landry <wlandry at caltech.edu>
date:        Thu May 10 13:59:07 2012 -0700
files:       src/friction3d.f90
description:
Remove frictionplaneeigenstress since it is never used.


diff -r b5130569e265 -r 094204a4ef99 src/friction3d.f90
--- a/src/friction3d.f90	Thu May 10 07:11:16 2012 -0700
+++ b/src/friction3d.f90	Thu May 10 13:59:07 2012 -0700
@@ -30,153 +30,6 @@ MODULE friction3d
   REAL*8, PRIVATE, PARAMETER :: pid2 = 1.57079632679489655799898173427209258079_8
 
 CONTAINS
-
-  !-----------------------------------------------------------------
-  !> subroutine FrictionPlaneExpEigenStress
-  !!
-  !! *** this function is deprecated ***
-  !
-  ! compute the eigen-stress (forcing moment) to be relaxed by
-  ! rate-dependent inelastic deformation in the case of a frictional
-  ! surface:
-  !
-  !       sigma^i = C:F:sigma
-  !
-  ! where C is the elastic moduli tensor, F is the heterogeneous
-  ! fluidity moduli tensor and sigma is the instantaneous stress
-  ! tensor. for a frictional surface, the eigenstrain-rate is given
-  ! by
-  !
-  !       epsilon^i^dot = F:sigma = gamma^dot R
-  !
-  ! where gamma^dot is the slip rate (a scalar) and R is the
-  ! deviatoric, symmetric, and unitary, tensor:
-  !
-  !       R_ij = 1/2 ( t_i n_j + t_j n_i ) / sqrt( t_j t_j )
-  !
-  ! where the shear traction t_i is the projection of the traction
-  ! vector on the plane surface. the strain amplitude is given by
-  !
-  !       gamma^dot = vo sinh( taus / (t_c )
-  !
-  ! where taus is the effective shear on the fault plane,
-  !
-  !       taus = tau + mu*sigma
-  !
-  ! where tau is the shear and sigma the normal stress. tau and sigma
-  ! assumed to be the co-seismic change only, not the absolute
-  ! stress. vo is a reference slip velocity, and t_c, the critical
-  ! stress, corresponds to (a-b)*sigma in the framework of rate-and-
-  ! state friction. the effective viscosity eta* and the fluidity
-  !
-  !       eta* = tau / gamma^dot
-  !       fluidity = 1 / eta*
-  !
-  ! are used to compute the optimal time-step.
-  !
-  ! sylvain barbot (07/24/07) - original form
-  !                (07/24/07) - deprecated (see frictioneigenstress)
-  !-----------------------------------------------------------------
-  SUBROUTINE frictionplaneeigenstress(sig,mu,structure, &
-       n1,n2,n3,sx1,sx2,sx3,dx1,dx2,dx3,moment,maxwelltime,gamma,dt)
-    INTEGER, INTENT(IN) :: sx1,sx2,sx3
-    REAL*8, INTENT(IN) :: mu,dx1,dx2,dx3
-    TYPE(LAYER_STRUCT), DIMENSION(:), INTENT(IN) :: structure
-    TYPE(TENSOR), INTENT(IN), DIMENSION(sx1,sx2,sx3) :: sig
-    TYPE(TENSOR), INTENT(INOUT), DIMENSION(sx1,sx2,sx3) :: moment
-    REAL*8, OPTIONAL, INTENT(INOUT) :: maxwelltime
-#ifdef ALIGN_DATA
-    REAL*4, INTENT(IN), DIMENSION(sx1+2,sx2,sx3) :: n1,n2,n3
-    REAL*4, INTENT(OUT), DIMENSION(sx1+2,sx2,sx3), OPTIONAL :: gamma
-#else
-    REAL*4, INTENT(IN), DIMENSION(sx1,sx2,sx3) :: n1,n2,n3
-    REAL*4, INTENT(OUT), DIMENSION(sx1,sx2,sx3), OPTIONAL :: gamma
-#endif
-    REAL*8, INTENT(IN), OPTIONAL :: dt
-
-    INTEGER :: i1,i2,i3
-    TYPE(TENSOR) :: s
-    REAL*8, DIMENSION(3) :: t,ts,n
-    REAL*8 :: vo,taue,tauc,taun,taus,gammadot,impulse, &
-         friction,tau,scaling,cohesion
-
-    ! delta function scaling
-    scaling=sqrt(pi2)*dx1
-
-    DO i3=1,sx3
-       
-       vo=structure(i3)%gammadot0
-       tauc=structure(i3)%stressexponent
-       friction=structure(i3)%friction
-       cohesion=structure(i3)%cohesion
-
-       DO i2=1,sx2
-          DO i1=1,sx1
-             n=(/ DBLE(n1(i1,i2,i3)),DBLE(n2(i1,i2,i3)),DBLE(n3(i1,i2,i3))/)
-             impulse=sqrt(sum(n*n))
-
-             IF (impulse .LE. 0.01_8/dx1) CYCLE
-
-             ! discrete delta function impulse
-             n=n/impulse
-             
-             ! traction = sigma . n
-             s=sig(i1,i2,i3)
-             t=s .tdot. n
-
-             ! signed normal component
-             taun=SUM(t*n)
-
-             ! absolute value of shear component
-             ts=t-taun*n
-             taus=SQRT(SUM(ts*ts))
-             
-             ! effective shear stress on fault plane
-             tau=taus+friction*taun
-
-             ! warning for wrong input
-             IF ((tau/tauc) .gt. 20) THEN
-                WRITE_DEBUG_INFO
-                WRITE (0,'("------------------------------------------")')
-                WRITE (0,'("wrong value of (a-b)sigma gives rise to")')
-                WRITE (0,'("(a-b)sigma=",3ES11.3E2)') tauc
-                WRITE (0,'("tau=",3ES11.3E2)') tau
-                WRITE (0,'("taus=",3ES11.3E2)') taus
-                WRITE (0,'("taun=",3ES11.3E2)') taun
-                WRITE (0,'("tau/((a-b)sigma)=",3ES11.3E2)') tau/tauc
-                WRITE (0,'("------------------------------------------")')
-                STOP 5
-             END IF
-
-             ! effective stress
-             taue=tau-cohesion
-
-             ! yield surface test
-             IF ((0._8 .GE. taus) .OR. (taue .LE. 1e-8)) CYCLE
-
-             ! shear traction direction
-             ts=ts/taus
-
-             ! deviatoric strain rate
-             gammadot=vo*2*my_sinh(taue/tauc)
-
-             IF (PRESENT(maxwelltime)) &
-                  maxwelltime=MIN(maxwelltime,taue/mu/gammadot)
-
-             ! provide the strain-rate on request
-             IF (PRESENT(gamma)) THEN
-                gamma(i1,i2,i3)=REAL(gamma(i1,i2,i3)+gammadot*impulse*scaling*dt)
-             END IF
-
-             ! deviatoric strain
-             moment(i1,i2,i3)=moment(i1,i2,i3) .plus. &
-                  (ts .sdyad. ((2._8*mu*impulse*gammadot)*n))
-
-          END DO
-       END DO
-    END DO
-
-  END SUBROUTINE frictionplaneeigenstress
 
   !-----------------------------------------------------------------
   !> subroutine FrictionEigenStress



More information about the CIG-COMMITS mailing list