chirp.table(x, n.chirp=5, chirp.range=c(0.1, -0.1), chirp.rate=NULL, chirp.offset=NULL, cost.fun="entropy", n.levels=6, taper="poly2", dct.type=2, boundary="periodic", n.taper=NULL, scale=NULL, thresh=NULL, p=1, prob=0.5, ...)
as.ptable
only,
an object of
ptable, cpt, cp.molecule
.
When
x
is a vector or univariate time series,
the length of
x
should be divisible by
2^n.levels
and
should demean first.
chirp.rate
is missing,
then
chirp.rate
will be set to
seq(from=chirp.range[1], to=chirp.range[2], length=n.chirp)
.
"entropy"
,
"threshold"
,
"sure"
, and "
lp
" are available.
See
pcosts
for details.
x
is divided into
2^n.levels
blocks each of length
length(x)/2^n.levels
.
If
n.levels
is bigger than
ml
, where
ml
is the maximum possible level,
computed from the
max.level
function, then
n.levels
is set to
ml
and
a warning message is given.
2
or
4
indicating which of DCT-II or DCT-IV should be used.
See the function
dct
for details.
"boxcar", "poly1", "poly2", "poly3", "poly4", "poly5"
, or
"trig"
.
See details below for the definitions of these tapers.
"cp.reflect", "periodic"
and
"zero"
.
See details below for the definitions of these rules.
2*n.taper
.
By default,
n.taper
is set to
length(x)/2^(n.level+1)
,
which is the maximum possible length at the finest blocking level.
cost.fun
.
See
pcosts
for details.
(0,2]
giving the degree of the
lpnorm when
cost.fun
is
"lp"
.
See
pcosts
for details.
cost.fun
is
"threshold"
or
"sure"
.
See
pcosts
for details.
(0,1)
used to
compute the threshold for when
cost.fun
is
"threshold"
.
See
pcosts
for details.
0
to
n.levels
for each chirp rate.
The attribute
pcosts
is a numeric matrix of
2^(n.levels+1)-1 times n.chirp
of costs based on
cost.fun
.
Additional information about the transform is
stored in attribute
dictionary
.
The returned cosine packet table
has class
chirp.table
, inheriting from classes
ptable.mat
,
cpt.mat
, and
crystal.vector.mat
.
See
crystal.vector.mat.object
for details about the data structure.
A chirplet table is a list of cosine packet tables packed into
a matrix.
Each element of the list corresponds to a different chirp function
A chirplet table is a redundant non-invertible
transform of the data.
Invertible orthogonal transforms can be selected
from a chirplet table using the
best.basis
function,
the
best.chirp.rate
function,
and the
Subscript
operators.
The subscript operator takes two indexes:
the first index corresponds to the usual index for
cosine packet crystals and the second index corresponds
to the chirp rate.
Available tapers:
the taper is a discontinuous "boxcar" function, and is equivalent to no tapering on the block.
poly1
has one continuous derivative.
The tapers
poly2
to
poly5
have
two to five continuous derivatives respectively. the series is reflected (and then periodically extended). For perfect reconstruction, symmetric/antisymmetric wavelets are needed.
2^(n.levels)
. n.levels, taper, dct.type, boundary
can be reset using function
wavelet.options
, see
wavelet.options
for details.
Coifman, R. R., Matviyenko, G. and Meyer, Y. (1996). Wigner distributions and related atomic decompositions. Technical report, Yale University.
sig1 <- make.signal("cexp", n=256, sweep=128, freq=5) sig0 <- make.signal("cexp", n=256, sweep=0, freq=25) sig2 <- rts(c(sig0, sig1), start=0, deltat=1/512) sig.ct <- chirp.table(sig2, n.level=3, n.chirp=9, chirp.range=c(-2,2)) sig.bb1 <- best.basis(sig.ct) sig.bb2 <- best.chirp.rate(sig.ct)