Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

QMath

Transformation of coordinate systems


Description

The functions provide mathematical c functions as RMmodels

Usage

RFcalc(model, params, ...)
R.minus(x, y, factor)
R.plus(x, y, factor)
R.div(x, y, factor)
R.mult(x, y, factor)
R.const(x)
R.c(a, b, c, d, e, f, g, h, i, j, l, m, n, o, p, q, ncol, factor)
R.p(proj, new, factor)
R.is(x, is, y)
R.lon()
R.lat()

R.gamma(x)
R.acos(x)
R.asin(x)
R.atan(x)
R.atan2(y, x)
R.cos(x)
R.sin(x)
R.tan(x)
R.acosh(x)
R.asinh(x)
R.atanh(x)
R.cosh(x)
R.sinh(x)
R.tanh(x)
R.exp(x)
R.log(x)
R.expm1(x)
R.log1p(x)
R.exp2(x)
R.log2(x)
R.pow(x, y)
R.sqrt(x)
R.hypot(x, y)
R.cbrt(x)
R.ceil(x)
R.fabs(x)
R.floor(x)
R.fmod(x, y)
R.round(x)
R.trunc(x)
R.erf(x)
R.erfc(x)
R.lgamma(x)
R.remainder(x, y)
R.fdim(x, y)
R.fmax(x, y)
R.fmin(x, y)

## S4 method for signature 'ANY,RMmodel'
e1 %% e2
## S4 method for signature 'RMmodel,ANY'
e1 %% e2
## S4 method for signature 'RMmodel,character'
e1 * e2
## S4 method for signature 'character,RMmodel'
e1 * e2
## S4 method for signature 'RMmodel,character'
e1 + e2
## S4 method for signature 'RMmodel,factor'
e1 + e2
## S4 method for signature 'RMmodel,list'
e1 + e2
## S4 method for signature 'character,RMmodel'
e1 + e2
## S4 method for signature 'data.frame,RMmodel'
e1 + e2
## S4 method for signature 'factor,RMmodel'
e1 + e2
## S4 method for signature 'RMmodel,character'
e1 - e2
## S4 method for signature 'character,RMmodel'
e1 - e2
## S4 method for signature 'RMmodel,character'
e1 / e2
## S4 method for signature 'character,RMmodel'
e1 / e2
## S4 method for signature 'ANY,RMmodel'
e1 ^ e2
## S4 method for signature 'RMmodel,ANY'
e1 ^ e2
## S4 method for signature 'RMmodel,character'
e1 ^ e2
## S4 method for signature 'character,RMmodel'
e1 ^ e2
## S4 method for signature 'RMmodel'
abs(x)
## S4 method for signature 'RMmodel'
acosh(x)
## S4 method for signature 'RMmodel'
asin(x)
## S4 method for signature 'RMmodel'
asinh(x)
## S4 method for signature 'ANY,RMmodel'
atan2(y,x)
## S4 method for signature 'RMmodel,ANY'
atan2(y,x)
## S4 method for signature 'RMmodel'
atan(x)
## S4 method for signature 'RMmodel'
atanh(x)
## S4 method for signature 'RMmodel'
ceiling(x)
## S4 method for signature 'RMmodel'
cos(x)
## S4 method for signature 'RMmodel'
cosh(x)
## S4 method for signature 'RMmodel'
exp(x)
## S4 method for signature 'RMmodel'
expm1(x)
## S4 method for signature 'RMmodel'
floor(x)
## S4 method for signature 'RMmodel'
lgamma(x)
## S4 method for signature 'RMmodel'
log1p(x)
## S4 method for signature 'RMmodel'
log2(x)
## S4 method for signature 'RMmodel'
log(x)
## S4 method for signature 'RMmodel,missing'
round(x,digits)
## S4 method for signature 'RMmodel'
sin(x)
## S4 method for signature 'RMmodel'
sinh(x)
## S4 method for signature 'RMmodel'
sqrt(x)
## S4 method for signature 'RMmodel'
tan(x)
## S4 method for signature 'RMmodel'
tanh(x)
## S4 method for signature 'RMmodel'
trunc(x)

Arguments

model,params

object of class RMmodel, RFformula or formula; best is to consider the examples below, first.
The argument params is a list that specifies free parameters in a formula description, see RMformula. model is usually a R.model given here.

e1,e2,x,y,a, b, c, d, e, f, g, h, i, j, l, m, n, o, p, q

constant or object of class RMmodel, in particular R.model

ncol

in contrast to c, R.c also allows for defining matrices; ncol gives the number of columns

factor

constant factor multiplied with the function. This is useful when linear models are built

is

one of "==", "!=", "<=", "<", ">=", ">"

proj

selection of a component of the vector giving the location. Default value is 1.

new

coordinate system or other kind of isotropy which is supposed to be present at this model. It shold always be given if the coordinates are not cartesian.

digits

number of digits. Does not work with a RMmodel

...

for advanced use: further options and control arguments for the simulation that are passed to and processed by RFoptions. If params is given, then ... may include also the variables used in params.

Details

R.plus

adds two values

R.minus

substracts two values

R.mult

multiplies two values

R.div

devides two values

R.const

defines a constant

R.c

builds a vector

R.is

evaluates equalities and inequalities; note that TRUE is returned if the equality or inequality holds up to a tolerance given by RFoptions()$nugget$tol

R.p

takes a component out of the vector giving the location

R.lon, R.lat

longitudinal and latitudinal coordinate, given in the spherical system, i.e. in radians. (earth system is in degrees).

R.round

Note that R.round rounds away from zero.

For the remaining models see the corresponding C functions for their return value. (For any ‘R.model’ type ‘man model’ under Linux.)

Value

Formally, the functions return an object of class RMmodel, except for RFcalc that returns a scalar. Neither vectors nor parentheses are allowed.

Note

Instead of R.model the standard function can be used in case there is no ambiguity, i.e., c(...),asin(x), atan(x), atan2(y, x), cos(x), sin(x), tan(x), acosh(x), asinh(x), atanh(x), cosh(x), sinh(x), tanh(x), exp(x), log(x), expm1(x), log2(x), log1p(x), exp2(x), ^, sqrt(x), hypot(a,b), cbrt(x), ceiling(x), abs(x), floor(x), round(x), trunc(x), erf(x), erfc(x), lgamma(x). See the examples below.

The function RFcalc is intended for simple calculations only and it is not excessively tested. Especially, binary operators should be used with caution.

Note that all the functions here are NOT recognized as being positive definite (or negative definite), e.g. cos in R^1:

  1. please use the functions given in RMmodels for definite functions (for cos see RMbessel)

  2. Using uncapsulated substraction to build up a covariance function is ambiguous, see the example in RMtrend

Author(s)

See Also

Examples

RFoptions(seed=0) ## *ANY* simulation will have the random seed 0; set
##                   RFoptions(seed=NA) to make them all random again


## simple calculation
RFcalc(3 + R.sin(pi/4))

## calculation performed on a field
RFfctn(R.p(1) + R.p(2), 1:3, 1:3) 
RFfctn(10 + R.p(2), 1:3, 1:3) 

## calculate the distances between two vectors
print(RFfctn(R.p(new="iso"), 1:10, 1:10))

## simulation of a non-stationary field where
## anisotropy by a transform the coordinates (x_1^2, x_2^1.5)
x <- seq(0.1, 6, 0.12)
Aniso <- R.c(R.p(1)^2, R.p(2)^1.5)
z <- RFsimulate(RMexp(Aniso=Aniso), x, x)


## calculating norms can be abbreviated:
x <- seq(-5, 5, 5) #0.1)
z2 <- RFsimulate(RMexp() + -40 + exp(0.5 * R.p(new="isotropic")), x, x)
z1 <- RFsimulate(RMexp() + -40 + exp(0.5 * sqrt(R.p(1)^2 + R.p(2)^2)), x, x)
stopifnot(all.equal(z1, z2))
plot(z1)

RandomFields

Simulation and Analysis of Random Fields

v3.3.10
GPL (>= 3)
Authors
Martin Schlather [aut, cre], Alexander Malinowski [aut], Marco Oesting [aut], Daphne Boecker [aut], Kirstin Strokorb [aut], Sebastian Engelke [aut], Johannes Martini [aut], Felix Ballani [aut], Olga Moreva [aut], Jonas Auel[ctr], Peter Menck [ctr], Sebastian Gross [ctr], Ulrike Ober [ctb], Paulo Ribeiro [ctb], Brian D. Ripley [ctb], Richard Singleton [ctb], Ben Pfaff [ctb], R Core Team [ctb]
Initial release

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.