Simple-deformation: Simple numerical deformation estimates

Description Usage Arguments Details Note See Also Examples

Description

Calculate tilts and extensions based on spatially varying displacements

Usage

1
2
3
4
5
Uniaxial_extension(x, X, left = TRUE)

Tilt(x, y = NULL, z, left = TRUE)

.setleft(x, left = TRUE)

Arguments

x

numeric; the spatial vector in real units (not an index!)

X

numeric; the quantity varying in the direction of x

left

logical; should padding be on the "left" side of the vector (i.e., index number 1)?

y

numeric; the spatial vector perpendicular to x in real units

z

numeric; values which vary in the direction perpendicular to the x-y plane

Details

Uniaxial_extension calculates the component of strain associated with deformation along a single axis. For example, the change in the Eastward displacements (or rates) in the East direction.

Tilt calculates the tilt field associates with spatial variations in vertical positions (or rates of change); the sign convention used is such that a ball placed on the x-y plane would roll in the direction of the tilt vector. Or, in other words, the tilt vector is the direction a plumb bob would move.

Calculations are done with diff.

Note

Tilt has not been well-tested for two-dimensional results!

See Also

segall85

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
# Some x values
xval. <- sort(unique(c(-7:-3, seq(-3.90,3.90,by=0.05), 3:7)))
set.seed(1221)
xanis <- rnorm(length(xval.), sd = 10)

#  surface displacements
su <- surface_displacement(xval.*1e3, C.=1e13, z_src=0.7e3)

# Vertical tilt -- assumes axial symmetry
sut <- with(su, Tilt(x, z=uz))
#               -- including anisotropic effects
sut.anis <- with(su, Tilt(x, x = sort(x + xanis), z=uz))

plot(ztilt ~ x, sut.anis, col='blue', pch=16, cex=0.5)
lines(ztilt ~ x, sut, lwd=2)

plot(ztilt ~ abs(x), sut.anis, col='blue', pch=ifelse(sign(x)==1,16,1), cex=0.5)
lines(ztilt ~ abs(x), sut, lwd=2)
 
# Uniaxial strain in the 'x' direction
sue <- with(su, Uniaxial_extension(x, X=ux))
sue.anis <- with(su, Uniaxial_extension(sort(x + xanis), X=ux))

plot(dXdx ~ x, sue.anis, col='blue', pch=16, cex=0.5)
lines(dXdx ~ x, sue, lwd=2)
 
plot(dXdx ~ abs(x), sue.anis, col='blue', pch=ifelse(sign(x)==1,16,1), cex=0.5)
lines(dXdx ~ abs(x), sue, lwd=2)

# see how the 'left' argument affects things:
.setleft(1,TRUE) # NA  1
.setleft(1,FALSE) # 1  NA

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