--- title: "Muscle synergy analysis with musclesyneRgies" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{analysis} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) ``` ```{r setup} library(musclesyneRgies) ``` ## Analysis functions For example, one can measure the full width at half maximum (FWHM) of the activation patterns or their centre of activity (CoA). ```{r, results = "hide", fig.width = 4, fig.asp = 1} # Load a typical activation pattern of 30 cycles (from locomotion) data("act_pattern") # Reduce activation pattern to the first cycle act_sub <- act_pattern$signal[1:which(act_pattern$time == max(act_pattern$time))[1]] # Calculate FWHM of the first cycle act_sub_FWHM <- FWHM(act_sub) # Calculate CoA of the first cycle act_sub_CoA <- CoA(act_sub) # Half maximum (for the plots) hm <- min(act_sub) + (max(act_sub) - min(act_sub)) / 2 hm_plot <- act_sub hm_plot[which(hm_plot > hm)] <- hm hm_plot[which(hm_plot < hm)] <- NA # Plots plot(act_sub, ty = "l", xlab = "Time", ylab = "Amplitude") lines(hm_plot, lwd = 3, col = 2) # FWHM (horizontal, in red) graphics::abline(v = act_sub_CoA, lwd = 3, col = 4) # CoA (vertical, in blue) ``` Or perhaps one might want to investigate the nonlinear behaviour of a long activation pattern. ```{r, results = "hide"} act <- act_pattern$signal # Calculate the local complexity or Higuchi's fractal dimension (HFD) nonlin_HFD <- HFD(act)$Higuchi # Calculate the global complexity or Hurst exponent (H) nonlin_H <- Hurst(act, min_win = max(act_pattern$time))$Hurst message("Higuchi's fractal dimension: ", round(nonlin_HFD, 3)) message("Hurst exponent: ", round(nonlin_H, 3)) ```