ngrid <- 101
interval <- c(-1,1)
gauss.quad.pts <- gss::gauss.quad(ngrid,interval) # evaluation points
working.grid <- gauss.quad.pts$pt
mean_fn <- function(t) {0.4*sin(2*pi*t)}
mean_vector <- mean_fn(working.grid)
eigen_fn <- function(t, k){ sqrt(2)*{(k==2)*sin(2*pi*t) + (k==1)*cos(2*pi*t)} }
eigen_matrix <- cbind(eigen_fn(working.grid,1), eigen_fn(working.grid,2))
mean_proj <- sapply(1:2, function(r) integrate(function(x)
eigen_fn(x,r)*mean_fn(x), interval[1], interval[2])$value)
sig1 <- diag(2)
sig2 <- 2*diag(2)
alp <- 0.05
n <- 100
k <- ncol(eigen_matrix)
cutoff <- {(n - 2)*k/(n - k -1)}*qf(1-alp, k, n-k-1)
func_power <- Power_Proj_Test_ufDA(total_sample_size=n,
argvals=working.grid,
mean_vector = mean_vector, eigen_matrix = eigen_matrix,
scores_var1 = sig1, scores_var2= sig2, weights = gauss.quad.pts$wt,
sig.level=alp, alloc.ratio = c(1,1), npc_to_pick=ncol(eigen_matrix),
nsim = 5e3)
Run the code above in your browser using DataLab