Nothing
## ---- include = FALSE---------------------------------------------------------
library(ggplot2)
library(data.table)
library(doremi)
set.seed(1)
knitr::opts_chunk$set(
collapse = TRUE,
warning = FALSE,
fig.align="center",
fig.width = 5,
fig.height = 5,
comment = "#>"
)
## -----------------------------------------------------------------------------
# create a time vector
time <- 0:90
# create an excitation mechanism
exc <- rep(c(0,1,0),c(11,30,50))
# generate simulated data
set.seed(123)
variable <- generate.panel.1order(time = time,
excitation = exc,
tau = 5,
nind = 1,
intranoise = 1)
plot(variable)
## -----------------------------------------------------------------------------
est_result <- analyze.1order(data = variable,
input = "excitation",
time = "time",
signal = "signal",
dermethod = "gold",
derparam = 13)
## -----------------------------------------------------------------------------
plot(est_result)+
ggplot2::geom_line(data = variable,aes(time,signalraw,color = "underlying model"))+
ggplot2::labs(y = "",
title = "estimation of first order\n differential equation parameters")
## -----------------------------------------------------------------------------
set.seed(123)
variable2 <- generate.panel.2order(time = time,
excitation = exc,
period = 30,
y0 = 0,
xi = 0.1,
nind = 1,
intranoise = 0.8)
plot(variable2)
## -----------------------------------------------------------------------------
est_result2 <- analyze.2order(variable2,
input = "excitation",
time = "time",
signal = "signal",
dermethod = "glla",
derparam = 14)
plot(est_result2)+
ggplot2::geom_line(data = variable2,aes(time,signalraw,color = "underlying model"))+
ggplot2::labs(color = "",
y = "",
title = "estimation of second order \ndifferential equation parameters")
## ----fig.width = 5, fig.height = 4, fig.align = "center", echo = FALSE--------
time <- seq(0,100,0.1)
exc <- as.numeric(time >= 10 & time <= 40)
variable <- generate.1order(time = time,
excitation = exc,
y0 = 0,
tau = 10,
k = 1)
ggplot2::ggplot(data = as.data.table(variable)) +
ggplot2::ggtitle( "First order differential equation solution")+
ggplot2::geom_line(ggplot2::aes(t,y, colour = "variable"))+
ggplot2::geom_line(ggplot2::aes(t,exc, colour = "Excitation"),size = 1.5)+
ggplot2::geom_hline(yintercept=0.63*max(variable$y), linetype="dashed", colour = "gray")+
ggplot2::geom_hline(yintercept=0.37*max(variable$y), linetype="dashed", colour = "gray")+
ggplot2::geom_vline(xintercept=variable$t[variable$y==max(variable$y)], colour = "gray")+
ggplot2::geom_vline(xintercept=50, colour = "gray")+
ggplot2::geom_vline(xintercept=19, colour = "gray")+
ggplot2::geom_vline(xintercept=10, colour = "gray")+
ggplot2::annotate("segment", x = 10, xend = 19, y = -0.1, yend = -0.1, colour = "dark green", size = 1)+
ggplot2::annotate("text", x = 15, y = -0.2, label = "tau", parse = TRUE, colour = "dark green")+
ggplot2::annotate("segment", x = 40, xend = 50, y = -0.1, yend = -0.1, colour = "dark green", size = 1)+
ggplot2::annotate("text", x = 45, y = -0.2, label = "tau", parse = TRUE, colour = "dark green")+
ggplot2::annotate("text", x = 75, y = 0.7, label = "63% diff. max and eq. value", colour = "gray")+
ggplot2::annotate("text", x = 75, y = 0.3*max(variable$y), label = "37% diff. max and eq. value", colour = "gray")+
ggplot2::labs(x = "Time (arb. unit)",
y = "variable (arb. unit)",
colour = "Legend")+
ggplot2::theme_bw() +
ggplot2::theme(legend.position = "top", plot.title = ggplot2::element_text(hjust = 0.5))
## ----fig.width = 5, fig.height = 4, fig.align = "center", echo = FALSE--------
time <- 0:130
excitation <- c(rep(0,30),rep(1,50),rep(0,51))
variable <- generate.2order(time = time,
excitation = excitation,
xi = 0.2,
period = 15,
k = 1)
ggplot2::ggplot(variable)+
ggplot2::ggtitle( "Second order differential equation solution")+
ggplot2::geom_line(aes(t,y,color = "variable"))+
ggplot2::geom_line(aes(time,excitation,color = "excitation"))+
ggplot2::geom_vline(xintercept=80, colour = "gray")+
ggplot2::annotate("text", x = 100, y = 1, label = "DLO", parse = TRUE, colour = "gray")+
ggplot2::labs(x = "Time (arb. unit)",
y = "variable (arb. unit)",
colour = "Legend")+
ggplot2::theme_bw() +
ggplot2::theme(legend.position = "top", plot.title = ggplot2::element_text(hjust = 0.5))
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.