test_that("Excursions, alpha = 1, type = >", {
data <- integration.testdata1()
res <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, max.threads = 1
)
r <- c(
2.463175e-15, 1.030394e-09, 7.734328e-06, 0.002534894, 0.07579555,
0.4188056, 0.8192485, 0.9746894, 0.9984611, 0.9999625, 0.9999997
)
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 1, type = <", {
data <- integration.testdata1()
res <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = "<",
seed = data$seed, max.threads = 1
)
r <- c(
0.9999997, 0.9999619, 0.9984783, 0.9746628, 0.819054,
0.4196815, 0.07603522, 0.002548885, 7.762954e-06, 1.033062e-09, 2.47039e-15
)
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 1, type = =", {
data <- integration.testdata1()
res <- excursions(
alpha = 1, u = 0, mu = data$mu + 0.1, Q = data$Q, type = "=",
seed = data$seed, max.threads = 1
)
r <- c(
7.381175e-07, 8.137438e-05, 0.003200957, 0.05128127, 0.3331441,
0.6420603, 0.1815013, 0.02201733, 0.001153959, 2.520208e-05,
1.945911e-07
)
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 1, type = !=", {
data <- integration.testdata1()
res <- excursions(
alpha = 1, u = 0, mu = data$mu + 0.1, Q = data$Q, type = "!=",
seed = data$seed, max.threads = 1
)
r <- c(
0.9999993, 0.9999186, 0.996799, 0.9487187, 0.6668559, 0.3579397,
0.8184987, 0.9779827, 0.998846, 0.9999748, 0.9999998
)
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 0.1, type = >", {
data <- integration.testdata1()
res <- excursions(
alpha = 0.1, u = 0, mu = data$mu + 0.1, Q = data$Q, type = ">",
seed = data$seed, max.threads = 1
)
r <- c(0, 0, 0, 0, 0, 0, 0, 0.9801319, 0.9988921, 0.9999753, 0.9999998)
res$F[is.na(res$F)] <- 0
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 0.1, type = <", {
data <- integration.testdata1()
res <- excursions(
alpha = 0.1, u = 0, mu = data$mu + 0.1, Q = data$Q, type = "<",
seed = data$seed, max.threads = 1
)
r <- c(0.9999429, 0.9999434, 0.9978837, 0.9679513, 0, 0, 0, 0, 0, 0, 0)
res$F[is.na(res$F)] <- 0
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 0.1, type = =", {
data <- integration.testdata1()
res <- excursions(
alpha = 0.1, u = 0, mu = data$mu + 0.1, Q = data$Q, type = "=",
seed = data$seed, max.threads = 1
)
r <- c(
7.381175e-07, 8.137438e-05, 0.003200957, 0.05128127, 1, 1,
1, 0.02201733, 0.001153959, 2.520208e-05, 1.945911e-07
)
res$F[is.na(res$F)] <- 1
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, alpha = 0.1, type = !=", {
data <- integration.testdata1()
res <- excursions(
alpha = 0.1, u = 0, mu = data$mu + 0.1, Q = data$Q, type = "!=",
seed = data$seed, max.threads = 1
)
r <- c(
0.9999993, 0.9999186, 0.996799, 0.9487187, 0, 0, 0,
0.9779827, 0.998846, 0.9999748, 0.9999998
)
res$F[is.na(res$F)] <- 0
expect_equal(res$F, r, tolerance = 1e-7)
})
test_that("Excursions, move u to mu", {
data <- integration.testdata1()
res <- excursions(
alpha = 0.1, u = 1, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, max.threads = 1
)
res2 <- excursions(
alpha = 0.1, u = 0, mu = data$mu - 1, Q = data$Q, type = ">",
seed = data$seed, max.threads = 1
)
res$F[is.na(res$F)] <- 0
res2$F[is.na(res2$F)] <- 0
expect_equal(res$F, res2$F, tolerance = 1e-7)
})
test_that("Excursions, input variances", {
data <- integration.testdata1()
vars <- diag(solve(data$Q))
res1 <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, vars = vars, max.threads = 1
)
res2 <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, max.threads = 1
)
expect_equal(res1$F, res2$F, tolerance = 1e-7)
})
test_that("Excursions, ind argument order", {
data <- integration.testdata1()
vars <- diag(solve(data$Q))
ind1 <- c(1, 2, 3, 4)
ind2 <- c(4, 3, 2, 1)
ind3 <- rep(FALSE, length(data$mu))
ind3[1:4] <- TRUE
res1 <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, ind = ind1, max.threads = 1
)
res2 <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, ind = ind2, max.threads = 1
)
res3 <- excursions(
alpha = 1, u = 0, mu = data$mu, Q = data$Q, type = ">",
seed = data$seed, ind = ind3, max.threads = 1
)
expect_equal(res1$F, res2$F, tolerance = 1e-7)
expect_equal(res2$F, res3$F, tolerance = 1e-7)
})
# Tests to add:
# Test that Q.chol and Q gives the same result
# Test the max.size argument
# Test reo
# Test rho
# Test max.threads
# Test QC method
# Test ind argument
# res1 = excursions2::excursions(alpha=0.1, u=1, mu=mu.x+0.1, Q=Q.x, type='!=', seed = seed, max.threads = 1)
# res2 = excursions::excursions(alpha=0.1, u=1, mu=mu.x+0.1, Q=Q.x, type='!=', max.threads = 1)
# plot(res1$F)
# lines(res2$F, col=2)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.