segall92: Elastostatic subsidence of a half space

Description Usage Arguments References Examples

View source: R/segall92.R

Description

Elastostatic subsidence of a half space

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
segall92()

surface_displacement_ringdisk(
  x,
  radius,
  depth,
  thickness,
  p0 = 1,
  nuu = 1/4,
  ShearModulus = 1.5e+10,
  BiotCoef = 1,
  verbose = TRUE,
  x.lim,
  tol_pow,
  nsub
)

Arguments

x
radius, depth, thickness

numeric; the radius, midpoint depth, and thickness of the circular-disk pressure source; the midpoint-depth must be at least thickness/2

p0

numeric; the (uniform) pressure change inside the circular-disk source

nuu

numeric; the undrained Poisson's ratio

ShearModulus

numeric; the elastic shear modulus

BiotCoef

numeric; Biot's coefficient (usually written as α); Note that this is converted to Geertsma's coefficent by BiotCoef/ShearModulus

verbose

logical; should messages be given?

x.lim

numeric; the limit of integration in the radial direction

tol_pow

numeric; the exponent applied to .Machine$double.eps used as the integration tolerance (see integrate); Increasing this to increase inegration accuracy will increase computation time

nsub

integer; the number of subdivisions in the integration (see integrate)

References

Segall, P. (1992), Induced stresses due to fluid extraction from axisymmetric reservoirs, PAGEOPH, 139: 535. doi: 10.1007/BF00879950

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Calculate surface displacements from a pressure-disk source

# Radial distances (e.g., observation points) and pressure source strength
# (in this case, keep distances in km to stabilize integration
#  and then rescale pressure to maintain unit consistency)
r <- seq(0, 15, length.out=151)
Pa <- 80e3 #Pa (N / m^2)
pressure <- 2.5 * Pa * (1000^2)

# dimensions of inflating (pressure > 0) or deflating (pressure < 0) reservoir
disk.radius <- 4
disk.thickness <- 2
disk.middepth <- 3

# calculations...
res <- surface_displacement_ringdisk(r, radius = disk.radius, thickness = disk.thickness, depth = disk.middepth, p0 = pressure)
head(res)

with(res,{
  uz_sc <- -uz
  ur_sc <- ur
  yl <- range(c(uz_sc, ur_sc, err), na.rm=TRUE)
  plot(x, uz_sc, col=NA, log='', ylim=yl, xaxs='i',
       ylab="Displacement, mm", xlab="Distance from source, km", main="Surface Displacements: Pressure-disk Source")
  abline(h=0, col='grey')

  lines(x, uz_sc, lwd=1.5)
  text(10, 7, "Vertical")

  lines(x, ur_sc, lty=2, lwd=1.5)
  text(5, 5, "Radial")

  lines(x, err, lty=3, lwd=1.5)
  text(4.5, -0.75, "Radial strain\n(mm/km)", pos=2)

  mtext(sprintf("Segall (1992) model with radius: %s, Thickness: %s, Depth: %s", disk.radius, disk.thickness, disk.middepth), font=3)
})

abarbour/deform documentation built on Feb. 15, 2022, 6:24 p.m.