gmwm 2.0.0
This is the second general release of the Generalized Method of Wavelet Moments (GMWM) R Package. Considerable amount of work has been done to improve the user experience across all disciplines.
Highlights
- IMU Data Object Improvements
- New time series modeling term: GM (Gauss-Markov)
- More flexible MODWT, DWT, and AVAR Wrappers
- Improved IMU Parameter Search Algorithm
- Faster Batch WVAR Processing
- Rewritten visual model comparison
- Auto-version check on package load
Time Series Processed Model Syntax
- New model term that enables users to specify a guass-markov process (GM).
- The GM is a reparameterization of an AR1 process using the freqeuncy of the data.
- Note: The conversion to and fro GM is done outside the C++ backend. Internally, the term is treated as an AR1 with frequency of 1.
Decomposition Methods
- New flexible R wrappers for
- Discrete Wavelet Transform (DWT)
- Maximal Overlap Discrete Wavelet Transform (MODWT)
- Allan Variance (AVAR)
- Support is now available for taking up to a specific scale.
- DWT and MODWT now have built-in
brick.wall
support. - New
brick.wall
R wrapper to later handle boundary coefficients.
Wavelet Variance
- Calculate the Wavelet Variance for DWT composition in addition to an MODWT decomposition.
- Change the level of decomposition for the WV.
- New batch data set processing function in C++
Model Comparison
- Reimplemented
compare.models()
function that removes the large spaces between plots. - Labels are now around the top and right of the plot.
Data Objects
imu
andlts
objects now have a frequency, unit, and name component.- All data objects were rewritten so that data is placed first and foremost.
- Attributes of the data are now accessed via
attr(x,"name")
- Attributes of the data are now accessed via
- Smart printing has been enabled for data objects. No longer will console be flooded with text!
- Objects print the first and last 10 observations.
update.*
function- Added a means to update parameters of an object without recreating it.
IMU
- New grid search algorithm for IMU parameters that relies upon dominance of the first few scales.
- Improved loading experience with the addition of
read.imu
that returns an R IMU object type. - The
wvar.imu
function now calls a new batch wrapper that processes multiple signals quickly. - Added ability to subset IMU without losing attributes. (Limited to pairs of data.)
Package Load
- Auto-version check on package load
- Connects to CRAN to see if a new package exists and alerts the user.
- More specific startup messages to help users access the resources of the package.
External Data Package Install
- Established the SMAC Group Data Repo
- Rewrote install_imudata to make use of the data repo
- Removed
dl.file
andinstall_
functions.
Internal
- Added quick
create_imu()
andcreate_wvar()
objects to avoid long checks. - Added
ar1_to_gm()
andgm_to_ar1()
to convert to and for the GM object. - Added
is.*()
functions for gmwm-based objects to avoid constantly callinginherit(x,"*")
.
Bug Fixes
freq
now affects thex
-axis.- The transformation with
DR()
is no longer the identity. Instead, we opt to use a logarithmic approach.- In transform_data, DR now has the absolute value taken and then a log.
- In untransform_data, DR now is exponentiated.
- Capitalized axis when displaying
imu
graphs.
Known Bugs
- The
compare.wvar
does not work with typewvar.imu
.