hongyuanjia / epluspar

Conduct parametric analysis on EnergyPlus models in R
https://hongyuanjia.github.io/epluspar
Other
9 stars 0 forks source link

Bayesian calibration implementation #5

Closed hongyuanjia closed 5 years ago

hongyuanjia commented 5 years ago

This pull request includes a complete Bayesian calibration class named BayesCalibJob.

# Create:
bc <- bayes_job(idf, epw)

# Get Seed Model and Weather:
bc$version()
bc$seed()
bc$weather()

# Get RDD amd MDD Data of Seed Model:
bc$read_rdd(update = FALSE)
bc$read_mdd(update = FALSE)

# Set Input and Output Parameters:
bc$input(key_value = NULL, name = NULL, reporting_frequency = NULL, append = FALSE)
bc$output(key_value = NULL, name = NULL, reporting_frequency = NULL, append = FALSE)

# Set Calibration Parameters:
bc$param(..., .names = NULL, .num_sim = 30L)
bc$apply_measure(measure, ..., .num_sim = 30L)
bc$samples()
bc$models()

# Run Parametric Simulations:
bc$eplus_run(dir = NULL, run_period = NULL, wait = TRUE, force = FALSE,
             copy_external = FALSE, echo = wait)

# Collect Simulation Data:
bc$data_sim(resolution = NULL, exclude_ddy = TRUE, merge = FALSE, all = FALSE)

# Specify Measured Data:
bc$data_field(output, new_input = NULL, merge = FALSE, all = FALSE)

# Run Bayesian Calibration Using Stan:
bc$stan_run(iter = 2000L, chains = 4L, echo = TRUE, ...)

# Inherited Methods from `eplusr::ParametricJob`:
bc$eplus_kill()
bc$eplus_status()
bc$eplus_output_dir(which = NULL)
bc$eplus_locate_output(which = NULL, suffix = ".err", strict = TRUE)
bc$eplus_errors(which = NULL, info = FALSE)
bc$eplus_report_data_dict(which = NULL)
bc$eplus_report_data(which = NULL, key_value = NULL, name = NULL,
                     year = NULL, tz = "UTC", all = FALSE, wide = FALSE,
                     period = NULL, month = NULL, day = NULL, hour = NULL, minute = NULL,
                     interval = NULL, simulation_days = NULL, day_type = NULL,
                     environment_name = NULL)
bc$eplus_tabular_data(which = NULL, report_name = NULL, report_for = NULL,
                      table_name = NULL, column_name = NULL, row_name = NULL)
bc$eplus_save(dir = NULL, separate = TRUE, copy_external = FALSE)
bc$print()

For detailed documentation, please see ?BayesCalibJob.

hongyuanjia commented 5 years ago

As travis CI has not been setup, no checking results can be seen.