Description Usage Arguments Details Note Author(s) Examples
Getting and setting the speed of light
1 2 3 |
c |
Scalar, speed of light. If missing, return the speed of light |
downstairs |
Boolean, with default |
to_natural,change_time |
Boolean, specifying the nature of the passive transform matrix |
In the context of an R package, the symbol “c” presents
particular problems. In the lorentz package, the speed of light
is denoted “sol”, for ‘speed of light’. You can set the
speed of light with sol(x)
, and query it with sol()
; see
the examples. An infinite speed of light is sometimes useful for
Galilean transforms.
The speed of light is a global variable, governed by
options("c")
. If NULL
, define c=1
. Setting
showSOL
to TRUE
makes sol()
change the prompt to
display the speed of light which might be useful.
Function eta()
returns the Minkowski flat-space metric
omitted
Note that the top-left element of eta()
is -c^2, not
-1.
Function ptm()
returns a passive transformation matrix that
converts displacement vectors to natural units (to_natural=TRUE
)
or from natural units (to_natural=FALSE
). Argument
change_time
specifies whether to change the unit of time (if
TRUE
) or the unit of length (if FALSE
).
Typing “sol(299792458)
” is a lot easier than typing
“options("c"=299792458)
”, which is why the package uses
the idiom that it does.
Robin K. S. Hankin
1 2 3 4 5 6 7 8 9 | sol() # returns current speed of light
sol(299792458) # use SI units
sol() # speed of light now SI value
eta() # note [t,t] term
u <- as.3vel(c(100,200,300)) # fast terrestrial speed, but not relativistic
boost(u) # boost matrix practically Galilean
is.consistent.boost(boost(u)) # should be TRUE
sol(1) # revert to relativisitic units
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.