Since movement in 2-D is a special case of movement in 3-D, the eRTG3D
algorithm also supports two-dimensional simulations. The underlying data structure of the algorithm remains in three-dimensional, with the third dimension (z) being constant, as for example zero. This approach guarantees a seamless transition between 2-D and 3-D simulations. Therefore, two P and Q probabilities are be extracted from 2D and 3D trajectories, then a combined simulation can take place.
trajectory.3D <- sim.crw.3d(nStep = 100, rTurn = 0.99, rLift = 0.99, meanStep = 0.1)
To simulate in 2-D the third dimension of the trajectory is set to zero:
trajectory.2D <- trajectory.3D
trajectory.2D$z <- 0
head(trajectory.2D)
#> x y z
#> 1 0.00000000 0.00000000 0
#> 2 -0.04976943 0.03299199 0
#> 3 -0.09460812 0.06814134 0
#> 4 -0.13551572 0.10242178 0
#> 5 -0.16315900 0.11669027 0
#> 6 -0.19171655 0.13107099 0
If the original trajectory is already two-dimensional, a third column z
has to be added: trajectory.2D$z <- 0
.
Now the workflow is the same as in 3-D, described in the standard workflow vignette:
Note: Since it is not feasible to use a DEM (DEM = demRaster
) in 2-D simualtions, the adding of a DEM in the somulations will result in dead ends. A BG layer (BG = bgRaster
) with a binary mask or continous probabilities for the simulation area can be passed (e.g. water bodies, nutrition sources, …).
simulation.2D <- reproduce.track.3d(trajectory.2D)
And plotting the results:
plot2d(trajectory.2D, simulation.2D, titleText = "2-D trajectory simulation")