25 xs, ys, zs, Depth, zs_all,&
26 vs30, thickness, sub_tag_all)
28 real*8,
intent(out) :: rho, lambda, mu, gamma, qs, qp
29 real*8,
intent(in) :: xs, ys, zs, depth, zs_all,&
31 integer*4 :: sub_tag_all
32 real*8 :: ni, vs, vp, depth_real
33 real*8,
dimension(1) :: val1
46 if (sub_tag_all.eq.1)
then
49 vs = 150 + 40*dabs(zs)**(0.4);
52 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
56 gamma = 4.d0*datan(1.d0)*5.d0/qs;
60 elseif (sub_tag_all.eq.2)
then
61 val1(1) = minval((/ 600.d0,360.d0+0.68*dabs(zs) /));
65 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
69 gamma = 4.d0*datan(1.d0)*5.d0/qs;
74 elseif (sub_tag_all.eq.3)
then
78 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
82 gamma = 4.d0*datan(1.d0)*5.d0/qs;
87 elseif (sub_tag_all.eq.4)
then
90 if (dabs(zs) .le. 1200.d0) vs = 1515.d0
94 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
98 gamma = 4.d0*datan(1.d0)*5.d0/qs;
101 elseif (sub_tag_all.eq.5)
then
105 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
109 gamma = 4.d0*datan(1.d0)*5.d0/qs;
112 elseif (sub_tag_all.eq.6)
then
116 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
120 gamma = 4.d0*datan(1.d0)*5.d0/qs;
125 lambda = rho * (vp**2.d0 - 2.d0*vs**2.d0);
129 gamma = 4.d0*datan(1.d0)*5.d0/qs;
subroutine make_mech_prop_case_031(rho, lambda, mu, gamma, qs, qp, xs, ys, zs, depth, zs_all, vs30, thickness, sub_tag_all)
Makes not-honoring technique.