Purpose
There is a close connection between singular values of SVD and maximum stretch that happens as a result of transformation

What happens when a matrix hits a unit circle ? .Consider a matrix

> A <- matrix(data = c(-2, 11, -10, 5), nrow = 2, ncol = 2, byrow = T)
> print(A)
     [,1] [,2]
[1,]   -2   11
[2,]  -10    5

Transform unit circle

> N <- 1000
> theta <- seq(0, 2 * pi, length = N)
> x <- cos(theta)
> y <- sin(theta)
> B <- A %*% t(cbind(x, y))
> B <- t(B)
> par(mfrow = c(1, 1))
> plot(x, y, ylim = c(-20, 20), xlim = c(-20, 20), col = "blue")
> par(new = T)
> plot(B[, 1], B[, 2], ylim = c(-20, 20), xlim = c(-20, 20), col = "red")
> abline(v = 0)
> abline(h = 0)

SVD_Play-003.jpg

The maximum stretch is

> print(max(sqrt(B[, 1]^2 + B[, 2]^2)))
[1] 14.14213

The same value can be obtained by looking at SVD
maximum value of the singular value

> print(max(svd(A)$d))
[1] 14.14214