rdd_to_load()
and mdd_to_load()
takes a RddFile
and MddFile
object
respectively and format it into a data.table in
acceptable format for $load()
method in Idf class.
rdd_to_load(rdd, key_value, reporting_frequency)
mdd_to_load(
mdd,
reporting_frequency,
class = c("Output:Meter", "Output:Meter:MeterFileOnly", "Output:Meter:Cumulative",
"Output:Meter:Cumulative:MeterFileOnly")
)
A RddFile
object created using read_rdd()
and a MddFile
object created using read_mdd()
, respectively.
Key value name for all variables. If not specified and
the key_value
column in the input RddFile
object will be used. If
key_value
column does not exist, "*"
are used for all variables.
Variable value reporting frequency for all
variables. If not specified and the reporting_freqency
column in the input
RddFile
object will be used. If reporting_freqency
column does not exist,
"Timestep"
are used for all variables. All possible values: "Detailed"
,
"Timestep"
, "Hourly"
, "Daily"
, "Monthly"
, "RunPeriod"
,
"Environment"
, and "Annual"
.
Class name for meter output. All possible values:
"Output:Meter"
, "Output:Meter:MeterFileOnly"
,
"Output:Meter:Cumulative"
, and "Output:Meter:Cumulative:MeterFileOnly"
.
Default: "Output:Meter"
.
A data.table with 5 columns with an additional
attribute named eplus_version
extracted from the original RddFile
and
MddFile
:
id
: Integer type. Used to distinguish each object definition.
class
: Character type. Class names, e.g. Output:Variable
and
Output:Meter
.
index
: Integer type. Field indices.
field
: Character type. Field names.
value
: Character type. The value of each field to be added.
if (FALSE) { # \dontrun{
# read an example distributed with eplusr
path_idf <- system.file("extdata/1ZoneUncontrolled.idf", package = "eplusr")
idf <- read_idf(path_idf)
# run Design-Day-Only simulation silently
job <- idf$run(NULL, tempdir(), echo = FALSE)
# read RDD and MDD
rdd <- job$read_rdd()
mdd <- job$read_mdd()
# perform subsetting on the variables
# e.g.:
rdd_sub <- rdd[grepl("Site", variable)]
mdd_sub <- mdd[grepl("Electricity", variable)]
# use newly added helper `rdd_to_load()` and `mdd_to_load()` and `$load()` to
# add `Output:Variable` and `Output:Meter*`
idf$load(rdd_to_load(rdd_sub))
idf$load(mdd_to_load(mdd_sub))
# default `Key Value` is `"*"` and `Reporting Frequency` is `Timestep`
# can overwrite using `key_value` and `reporting_freqency` arg
rdd_to_load(rdd_sub, key_value = "Environment", reporting_frequency = "hourly")
# if input has column `key_value`, default is to use it, unless `key_value` is
# explicitly specified
rdd_to_load(rdd_sub[, key_value := "Environment"])
rdd_to_load(rdd_sub[, key_value := "Environment"], key_value = "*")
# `reporting_frequency` arg works in the same way as `key_value` arg, i.e.:
# if input has column `reporting_frequency`, use it, unless
# `reporting_frequency` is explicitly specified
rdd_to_load(rdd_sub[, reporting_frequency := "monthly"])
rdd_to_load(rdd_sub[, reporting_frequency := "monthly"], reporting_frequency = "detailed")
# if input has column `key_value`, default is to use it, unless `key_value` is
# explicitly specified
rdd_to_load(rdd_sub[, key_value := "Environment"])
rdd_to_load(rdd_sub[, key_value := "Environment"], key_value = "*")
# meter class can be further specified using `class` arg
mdd_to_load(mdd_sub, class = "Output:Meter:MeterFileOnly")
} # }