advectionFspiral {CoSMoS}R Documentation

Spiraling advection field

Description

Provides an advection field corresponding to a spiral motion to/from a specified reference point (sink).

Usage

advectionFspiral(spacepoints, x0, y0, a, b, rotation = 1)

Arguments

spacepoints

vector of coordinates (2 x d), where d is the number of locations/grid points

x0

x coordinate of reference point (sink)

y0

y coordinate of reference point (sink)

a

parameter controlling the x component of rotational velocity

b

parameter controlling the y component of rotational velocity

rotation

parameter controlling the rotational direction. The following combinations hold:

  • if a > 0, b > 0, and direction = 1: spiraling CLOCKWISE TO (x0, y0)

  • if a < 0, b < 0, and direction = 1: spiraling COUNTER-CLOCKWISE FROM (x0, y0)

  • if a > 0, b > 0, and direction = 2: spiraling COUNTER-CLOCKWISE TO (x0, y0)

  • if a < 0, b < 0, and direction = 2: spiraling CLOCKWISE FROM (x0, y0)

References

Papalexiou, S.M., Serinaldi, F., Porcu, E. (2021). Advancing Space-Time Simulation of Random Fields: From Storms to Cyclones and Beyond. Water Resources Research, 57, e2020WR029466, doi: 10.1029/2020WR029466

Examples


library(ggquiver)
library(ggplot2)
## specify coordinates
m = 25
aux <- seq(0, m - 1, length = m)
coord <- expand.grid(aux, aux)

af <- advectionFspiral(spacepoints = coord,
                        x0 = floor(m / 2),
                        y0 = floor(m / 2),
                        a = 3,
                        b = 2,
                        rotation = 1)

## visualize advection field
dta <- data.frame(lon = coord[ ,1], lat = coord[ ,2], u = af[ ,1], v = af[ ,2])
ggplot(dta, aes(x = lon, y = lat, u = u, v = v)) +
geom_quiver() +
theme_light()

[Package CoSMoS version 2.1.0 Index]