R/bootStateSpace-pb-ssm-fixed-data-dot.R

Defines functions .PBSSMFixedData

.PBSSMFixedData <- function(i,
                            path,
                            prefix,
                            n,
                            time,
                            delta_t,
                            mu0,
                            sigma0_l,
                            alpha,
                            beta,
                            psi_l,
                            nu,
                            lambda,
                            theta_l,
                            type,
                            covariates,
                            gamma,
                            kappa) {
  fn <- file.path(
    path,
    paste0(
      prefix,
      "_",
      "data",
      "_",
      i,
      ".Rds"
    )
  )
  run <- function(n,
                  time,
                  delta_t,
                  mu0,
                  sigma0_l,
                  alpha,
                  beta,
                  psi_l,
                  nu,
                  lambda,
                  theta_l,
                  type,
                  covariates,
                  gamma,
                  kappa) {
    data <- simStateSpace::SimSSMFixed(
      n = n,
      time = time,
      delta_t = delta_t,
      mu0 = mu0,
      sigma0_l = sigma0_l,
      alpha = alpha,
      beta = beta,
      psi_l = psi_l,
      nu = nu,
      lambda = lambda,
      theta_l = theta_l,
      type = type,
      x = covariates,
      gamma = gamma,
      kappa = kappa
    )
    saveRDS(
      object = data,
      file = fn
    )
    invisible()
  }
  tryCatch(
    {
      if (file.exists(fn)) {
        readRDS(
          file = fn
        )
      } else {
        run(
          n = n,
          time = time,
          delta_t = delta_t,
          mu0 = mu0,
          sigma0_l = sigma0_l,
          alpha = alpha,
          beta = beta,
          psi_l = psi_l,
          nu = nu,
          lambda = lambda,
          theta_l = theta_l,
          type = type,
          covariates = covariates,
          gamma = gamma,
          kappa = kappa
        )
      }
    },
    error = function(e) {
      run(
        n = n,
        time = time,
        delta_t = delta_t,
        mu0 = mu0,
        sigma0_l = sigma0_l,
        alpha = alpha,
        beta = beta,
        psi_l = psi_l,
        nu = nu,
        lambda = lambda,
        theta_l = theta_l,
        type = type,
        covariates = covariates,
        gamma = gamma,
        kappa = kappa
      )
    }
  )
  invisible()
}

Try the bootStateSpace package in your browser

Any scripts or data that you put into this service are public.

bootStateSpace documentation built on April 4, 2025, 1:35 a.m.