Makes not-honoring technique.
Mechanical properties given node by node.
27
28 real*8, intent(out) :: rho, lambda, mu, gamma, qs, qp
29 real*8, intent(in) :: xs, ys, zs, depth, zs_all,&
30 vs30, thickness
31 integer*4 :: sub_tag_all
32 real*8 :: ni, vs, vp, depth_real
33 real*8, dimension(1) :: val1
34
35 rho = 0.d0;
36 lambda = 0.d0;
37 mu = 0.d0;
38 gamma = 0.d0;
39 qs = 0.d0;
40 qp = 0.d0
41
42
43
44
45
46 if ((depth .ge. 0.0d0) .and. (zs_all .ge. 0.0d0)) then
47
48
49
50 if(dabs(zs) .le. 800.d0) then
51 vs = 523.d0;
52 vp = 1988.d0;
53 rho = 2050.d0;
54 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
55 mu = rho * vs**2.d0;
56 qs = vs/10.d0;
57 qp = vp/10.d0
58 gamma = 4.d0*datan(1.d0)*5.d0/qs;
59
60
61 elseif(dabs(zs) .le. 1200.d0) then
62 vs = 600.d0;
63 vp = vs * 3.2d0;
64 rho = 2050.d0;
65 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
66 mu = rho * vs**2.d0;
67 qs = vs/10.d0;
68 qp = vp/10.d0
69 gamma = 4.d0*datan(1.d0)*5.d0/qs;
70
71
72 elseif(dabs(zs) .le. 1800.d0) then
73 vs = 1515.d0;
74 vp = vs * 2.d0;
75 rho = 2400.d0;
76 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
77 mu = rho * vs**2.d0;
78 qs = vs/10.d0;
79 qp = vp/10.d0
80 gamma = 4.d0*datan(1.d0)*5.d0/qs;
81
82
83 elseif(dabs(zs) .le. 2800.d0) then
84 vs = 2850.d0;
85 vp = 5100.d0;
86 rho = 2450.d0;
87 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
88 mu = rho * vs**2.d0;
89 qs = vs/10.d0;
90 qp = vp/10.d0
91 gamma = 4.d0*datan(1.d0)*5.d0/qs;
92
93
94 elseif(dabs(zs) .le. 3100.d0) then
95 vs = 2300.d0;
96 vp = 3900.d0;
97 rho = 2450.d0;
98 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
99 mu = rho * vs**2.d0;
100 qs = vs/10.d0;
101 qp = vp/10.d0
102 gamma = 4.d0*datan(1.d0)*5.d0/qs;
103
104
105 else
106 vs = 2600.d0;
107 vp = 4500.d0;
108 rho = 2650.d0;
109 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
110 mu = rho * vs**2.d0;
111 qs = vs/10.d0;
112 qp = vp/10.d0
113 gamma = 4.d0*datan(1.d0)*5.d0/qs;
114 endif
115
116 else
117
118 if(dabs(zs) .le. 2800.d0) then
119 vs = 2850.d0;
120 vp = 5100.d0;
121 rho = 2450.d0;
122 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
123 mu = rho * vs**2.d0;
124 qs = vs/10.d0;
125 qp = vp/10.d0
126 gamma = 4.d0*datan(1.d0)*5.d0/qs;
127
128
129 elseif(dabs(zs) .le. 3100.d0) then
130 vs = 2300.d0;
131 vp = 3900.d0;
132 rho = 2450.d0;
133 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
134 mu = rho * vs**2.d0;
135 qs = vs/10.d0;
136 qp = vp/10.d0
137 gamma = 4.d0*datan(1.d0)*5.d0/qs;
138
139
140 else
141 vs = 2600.d0;
142 vp = 4500.d0;
143 rho = 2650.d0;
144 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
145 mu = rho * vs**2.d0;
146 qs = vs/10.d0;
147 qp = vp/10.d0
148 gamma = 4.d0*datan(1.d0)*5.d0/qs;
149
150 endif
151
152 endif
153
154
155