SPEED
MAKE_MECH_PROP_CASE_060.f90 File Reference

Go to the source code of this file.

Functions/Subroutines

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.
 

Function/Subroutine Documentation

◆ make_mech_prop_case_060()

subroutine make_mech_prop_case_060 ( real*8, intent(out)  rho,
real*8, intent(out)  lambda,
real*8, intent(out)  mu,
real*8, intent(out)  gamma,
real*8, intent(out)  qs,
real*8, intent(out)  qp,
real*8, intent(in)  xs,
real*8, intent(in)  ys,
real*8, intent(in)  zs,
real*8, intent(in)  depth,
real*8, intent(in)  zs_all,
real*8, intent(in)  vs30,
real*8, intent(in)  thickness,
integer*4  sub_tag_all 
)

Makes not-honoring technique.

Mechanical properties given node by node.

Definition at line 23 of file MAKE_MECH_PROP_CASE_060.f90.

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

Referenced by make_eltensor_for_cases().

Here is the caller graph for this function: