SPEED
MAKE_MECH_PROP_CASE_060.f90
Go to the documentation of this file.
1! Copyright (C) 2012 The SPEED FOUNDATION
2! Author: Ilario Mazzieri
3!
4! This file is part of SPEED.
5!
6! SPEED is free software; you can redistribute it and/or modify it
7! under the terms of the GNU Affero General Public License as
8! published by the Free Software Foundation, either version 3 of the
9! License, or (at your option) any later version.
10!
11! SPEED is distributed in the hope that it will be useful, but
12! WITHOUT ANY WARRANTY; without even the implied warranty of
13! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14! Affero General Public License for more details.
15!
16! You should have received a copy of the GNU Affero General Public License
17! along with SPEED. If not, see <https://urldefense.com/v3/__http://www.gnu.org/licenses/__;!!JTSHVUr6R1OOzg!aDbB_NDNNqzY5Rv71QLDFP6IQtf6PDbmxUO5-QKFq4zgkjrbIcf8DjlIuTdJhwQR9vU$ >.
18
19
21
22
23 subroutine make_mech_prop_case_060(rho, lambda, mu, gamma, qs, qp, & !outputs
24 xs, ys, zs, Depth, zs_all,&
25 vs30, thickness, sub_tag_all)
26
27 real*8, intent(out) :: rho, lambda, mu, gamma, qs, qp
28 real*8, intent(in) :: xs, ys, zs, depth, zs_all, vs30, thickness
29 integer*4 :: sub_tag_all
30 real*8 :: ni, vs, vp, depth_real, xleft, xright, yup, ydown
31! real*8, parameter :: bufferLayer = 6000.0d0
32
33 rho = 0.d0;
34 lambda = 0.d0;
35 mu = 0.d0;
36 gamma = 0.d0;
37 qs = 0.d0;
38 qp = 0.d0
39
40 !Left Top 629160.875000 9354624.000000 -32.000000
41 !Left Down 628957.563000 9262946.000000 443.000000
42 !Right Top 739448.625000 9354298.000000 -28.000000
43 !Right Down 739071.438000 9262575.000000 406.000000
44
45 xleft = dabs(xs - 628957.563d0)
46 xright = dabs(xs - 739448.625d0)
47 yup = dabs(ys - 9354624.000d0)
48 ydown = dabs(ys - 9262575.000d0)
49
50
51 if ((depth .ge. 0.0d0).and.(zs_all .ge. 0.0d0)) then
52 if( (xleft.le.6000) .or. (xright.le.6000) .or. (yup.le.6000) .or. (ydown.le.6000) ) then
53 ! MATERIAL INSIDE THE BASIN MODIFIED AS OUTCROPPING BEDROCK
54 vs = 2300.d0
55 vp = 4100.d0
56 rho = 2000.d0
57 qs = 150
58 qp = 283
59 else
60 ! MATERIAL INSIDE THE BASIN
61 vs = 582.d0
62 vp = 1600.d0
63 rho = 1200.d0
64 qs = 25
65 qp = 44
66 endif
67 else
68 ! OUTCROPPING BEDROCK
69 vs = 2300.d0
70 vp = 4100.d0
71 rho = 2000.d0
72 qs = 150
73 qp = 283
74 endif
75
76 lambda = rho * (vp**2 - 2*vs**2)
77 mu = rho * vs**2
78 gamma = (3.1415*(2.d0/3.d0))/qs
79
80 end subroutine make_mech_prop_case_060
subroutine make_mech_prop_case_060(rho, lambda, mu, gamma, qs, qp, xs, ys, zs, depth, zs_all, vs30, thickness, sub_tag_all)
Makes not-honoring technique.