RFfractaldim: RFfractaldimension

Description Usage Arguments Details Value References See Also Examples

View source: R/D.H.R

Description

The function estimates the fractal dimension of a process

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
RFfractaldim(x, y = NULL, z = NULL, data, grid, 
 bin=NULL,
 vario.n=5,
 sort=TRUE,
 fft.m = c(65, 86), ## in % of range of l.lambda
 fft.max.length=Inf,
 fft.max.regr=150000,
 fft.shift = 50, # in %; 50:WOSA; 100: no overlapping
 method=c("variogram", "fft"), 
 mode = if (interactive ()) c("plot", "interactive") else "nographics", 
 pch=16, cex=0.2, cex.main=0.85,
 printlevel = RFoptions()$basic$printlevel,
 height=3.5,
 ...)

Arguments

x \argX

If x is not given and data is not an sp object, a grid with unit grid length is assumed

y,z \argYz
data

the values measured; it can also be an sp object

grid \argGrid
bin

sequence of bin boundaries for the empirical variogram

vario.n

first vario.n values of the empirical variogram are used for the regression fit that are not NA.

sort

If TRUE then the coordinates are permuted such that the largest grid length is in x-direction; this is of interest for algorithms that slice higher dimensional fields into one-dimensional sections.

fft.m

numeric vector of two components; interval of frequencies for which the regression should be calculated; the interval is given in percent of the range of the frequencies in log scale.

fft.max.length

The first dimension of the data is cut into pieces of length fft.max.length. For each piece the FFT is calculated and then the average for all pieces is taken. The pieces may overlap, see the argument fft.shift.

fft.max.regr

If the fft.m is too large, parts of the regression fit will take a very long time. Therefore, the regression fit is calculated only if the number points given by fft.m is less than fft.max.regr.

fft.shift

This argument is given in percent [of fft.max.length] and defines the overlap of the pieces defined by fft.max.length. If fft.shift=50 the WOSA estimator is given; if fft.shift=100 no overlap exists.

method

list of implemented methods to calculate the fractal dimension; see Details

mode

character. A vector with components 'nographics', 'plot' or 'interactive':

'nographics'

no graphical output

'plot'

the regression line is plotted

'interactive'

the regression domain can be chosen interactively

Usually only one mode is given. Two modes may make sense in the combination c("plot", "interactive"). In this case, all the results are plotted first, and then the interactive mode is called. In the interactive mode, the regression domain is chosen by two mouse clicks with the left mouse; a right mouse click leaves the plot.

pch

vector or scalar; sign by which data are plotted.

cex

vector or scalar; size of pch.

cex.main

The size of the title in the regression plots.

printlevel

integer. If printlevel is 0 nothing is printed. If printlevel=1 error messages are printed. If printlevel=2 warnings and the regression results are given. If printlevel>2 tracing information is given.

height

height of the graphics window

...

graphical arguments

Details

The function calculates the fractal dimension by various methods:

Value

The function returns a list with elements vario, fft corresponding to the 2 methods given in the Details.

Each of the elements is itself a list that contains the following elements.

x

the x-coordinates used for the regression fit

y

the y-coordinates used for the regression fit

regr

the return list of the lm.

sm

smoothed curve through the (x,y) points

x.u

NULL or the restricted x-coordinates given by the user in the interactive plot

y.u

NULL or y-coordinates according to x.u

regr.u

NULL or the return list of lm for x.u and y.u

D

the fractal dimension

D.u

NULL or the fractal dimension corresponding to the user's regression line

References

variogram method

fft

See Also

RMmodel, RFhurst

Examples

1
2
3
4
5
6
RFoptions(seed=0) ## *ANY* simulation will have the random seed 0; set
##                   RFoptions(seed=NA) to make them all random again

x <- seq(0, 10, 0.001)
z <- RFsimulate(RMexp(), x)
RFfractaldim(data=z)

RandomFields documentation built on Jan. 19, 2022, 1:06 a.m.