Geology Reference
In-Depth Information
WRITE(6,13)
13 FORMAT(1X,'Enter upper edge of fault, down-dip in metres.')
READ(5,*)DU
WRITE(6,14)
14 FORMAT(1X,'Enter lower edge of fault, down-dip in metres.')
READ(5,*)DL
WRITE(6,15)
15 FORMAT(1X,'Enter fault half-length in metres.')
READ(5,*)L
C Convert dip and rake to radians.
DIP=DIP*PI/180.D0
RAKE=RAKE*PI/180.D0
C Find dip-slip and strike-slip components.
SLIPD=SLIP*DCOS(RAKE)
SLIPS=SLIP*DSIN(RAKE)
C Generate surface plot file, plot.dat, for ten fault lengths
C by ten fault lengths.
X(3)=0.D0
DO 16 I=0,50
AI=DFLOAT(I)
X(1)=0.4D0*AI*L
DO 17 J=0,50
AJ=DFLOAT(J)
X(2)=0.4D0*AJ*L
CALL DIPS(UD,X,DIP,SLIPD,DU,DL,L)
CALL STRIKES(US,X,DIP,SLIPS,DU,DL,L)
DO 18 K=1,3
U(K)=UD(K)+US(K)
18
CONTINUE
WRITE(1,19)X(1),X(2),U(1),U(2),U(3)
19
FORMAT(1X,5D14.6)
17
CONTINUE
16
CONTINUE
END
C
SUBROUTINE DIPS(U,X,DIP,SLIP,DU,DL,L)
C
C This subroutine calculates the displacement vector U(3),
C at the field point X(3), for a dip-slip fault, dipping at angle DIP,
C with slip magnitude SLIP, upper boundary measured down-dip at DU,
C lower boundary down-dip at DL, fault extending along the strike
C from -L to L.
C
IMPLICIT DOUBLE PRECISION(A-H,O-Z)
DIMENSION U(3),X(3)
DOUBLE PRECISION L
C Set value of pi.
PI=3.141592653589793D0
C Find parameters of field point distances normal and parallel to
C the fault and its image.
R2=X(2)*DSIN(DIP)-X(3)*DCOS(DIP)
R3=X(2)*DCOS(DIP)+X(3)*DSIN(DIP)
Q2=X(2)*DSIN(DIP)+X(3)*DCOS(DIP)
Q3=-X(2)*DCOS(DIP)+X(3)*DSIN(DIP)
C Find U(1).
CALL DIP1(U1,L,DL,X,DIP,R2,R3,Q2,Q3)
U(1)=U1
CALL DIP1(U1,-L,DU,X,DIP,R2,R3,Q2,Q3)
U(1)=U(1)+U1
CALL DIP1(U1,-L,DL,X,DIP,R2,R3,Q2,Q3)
U(1)=U(1)-U1
Search WWH ::




Custom Search