Skip to contents

Extract or replace subsets of three-velocities

Arguments

x

A three-vector

index

elements to extract or replace

value

replacement value

Details

These methods (should) work as expected: an object of class 3vel is a three-column matrix with rows corresponding to three-velocities; a single argument is interpreted as a row number. Salient use-cases are u[1:5] <- u[1] and u[1] <- 0.

To extract a single component, pass a second index: u[,1] returns the x- component of the three-velocity.

Extraction functions take a drop argument, except for x[i] which returns a vec object.

Currently, u[] returns u but I am not sure this is desirable. Maybe it should return unclass(u) or perhaps c(unclass(u)).

Use idiom u[] <- x to replace entries of u elementwise.

Examples


u <- r3vel(10)
u[1:4]
#> A vector of three-velocities (speed of light = 1)
#>               x          y           z
#> [1,] 0.18874018  0.8636937  0.18189218
#> [2,] 0.38216431 -0.1809655 -0.39821124
#> [3,] 0.09806402 -0.1392114 -0.97876843
#> [4,] 0.85096759  0.3023276 -0.06083608
u[5:6] <- 0

u[7:8] <- u[1]

u[,1] <- 0.1