Learn R Programming

eplusr (version 0.8.2)

idd_object: EnergyPlus IDD object

Description

IddObject is an abstraction of a single object in an Idd. It provides more detail methods to query field properties. IddObject can only be created from the parent Idd object, using $object and $object_in_group. This is because that initialization of an IddObject needs some shared data from parent Idd object.

Usage

# class properties
iddobj$group_name()
iddobj$group_index()
iddobj$class_name()
iddobj$class_index()
iddobj$class_format()
iddobj$min_fields()
iddobj$num_fields()
iddobj$memo()
iddobj$num_extensible()
iddobj$first_extensible_index()
iddobj$extensible_group_num()

# extensible group iddobj$add_extensible_group(num = 1L) iddobj$del_extensible_group(num = 1L)

# class property assertions iddobj$has_name() iddobj$is_required() iddobj$is_unique() iddobj$is_extensible()

# field properties iddobj$field_name(index = NULL, lower = FALSE, unit = FALSE, in_ip = getOption("eplusr.view_in_ip")) iddobj$field_index(name = NULL) iddobj$field_type(which = NULL) iddobj$field_note(which = NULL) iddobj$field_unit(which = NULL, in_ip = getOption("eplusr.view_in_ip") iddobj$field_default(which = NULL, in_ip = getOption("eplusr.view_in_ip") iddobj$field_choice(which = NULL) iddobj$field_range(which = NULL)

# field property assertions iddobj$is_valid_field_num(num) iddobj$is_extensible_index(index) iddobj$is_valid_field_name(name) iddobj$is_valid_field_index(which) iddobj$is_autosizable_field(which = NULL) iddobj$is_autocalculatable_field(which = NULL) iddobj$is_numeric_field(which = NULL) iddobj$is_integer_field(which = NULL) iddobj$is_required_field(which = NULL)

iddobj$print() print(iddobj)

Arguments

  • num: A positive integer.

  • index: An integer vector of field indexes.

  • name: A character vector or field names. Can be given in "lower-style". See below.

  • lower: If TRUE, "lower-style" field names will be returned, e.g. "Thermal Resistance" will become "thermal_resistance". Default: FALSE.

  • which: An integer vector of field indexes or a character vector of field names. Field names can be given in "lower-style".

  • unit: If TRUE, field units will be also returned. Default: FALSE.

  • in_ip: If TRUE, field names or values will be returned in IP units.

Detail

$group_index returns the index of group this class belongs to.

$group_name returns the name of group this class belongs to.

$class_index returns the index of this class.

$class_name returns the name of this class.

$min_fields returns the minimum fields required for this class. If no required, 0 is returned.

$num_fields returns current total number of fields in this class. This number may change if the class is extensible and after $add_extensible_group or $del_extensible_group.

$memo returns memo of this class.

$num_extensible returns the number of extensible fields in this class.

$first_extensible_index returns the field index of the first extensible field in this class. If this class is not extensible, 0 is return.

$extensible_group_num returns the number of extensible groups in this class.

$add_extensible_groups adds extensible groups in this class.

$del_extensible_groups deletes extensible groups in this class.

$has_name return TRUE if this class has name attribute.

$is_unique return TRUE if this class is unique.

$is_required returns TRUE if this class is required.

$is_extensible returns TRUE if this class is extensible.

$field_name returns names of fields specified by field indexes. If index is NULL, names of all fields in this class are returned. If lower is TRUE, "lower-style" names are returned, i.e. all spaces and dashes is replaced by underscores. If unit is TRUE, the units of those fields are also returned. If in_ip, corresponding imperial units are returned. It only has effect when unit is TRUE.

$field_index returns indexes of fields specified by field names. If name is NULL, indexes of all fields in this class are returned.

All other $field_* returns specific field properties. If which is NULL, properties of all fields in this class are returned.

  • $field_type: returns field types. All possible values are "integer", "real", "alpha" (arbitrary string), "choice" (alpha with specific list of choices), "object-list" (link to a list of objects defined elsewhere), "external-list" (uses a special list from an external source) and "node" (name used in connecting HVAC components).

  • $field_unit: returns a character vector of field units. If in_ip is TRUE, IP unites are returned.

  • $field_default: returns a list of default values of those fields. If no defaults found, NAs are returned.

  • $field_choice: returns a list of all valid choices for those fields. If no choices found, NAs are returned.

  • $field_range: returns a list of ranges for those fields. Every range has four components: minimum (lower limit), lower_incbounds (TRUE if the lower limit should be included), maximum (upper limit), and upper_incbounds (TRUE if the upper limit should be included). For fields of character type, empty lists are returned. For fields of numeric types with no specified ranges, minimum is set to -Inf, lower_incbounds is set to FALSE, upper is set to Inf, and upper_incbounds is set to FALSE.

$is_valid_field_num returns TRUE if num is acceptable as a total number of fields in this class. Extensible property is considered. For instance, The total number of fields defined in IDD for class BuildingSurfaces:Detailed is 390. However, 396 is still a valid field number for this class as the number of field in the extensible group is 3.

$is_valid_field_name returns TRUE if name is a valid field name WITHOUT unit.

$is_valid_field_index returns TRUE if index is a valid field index.

$is_autosizable_field returns TRUE if the field can be assigned to autosize.

$is_autocalculatable_field returns TRUE if the field can be assigned to autocalculate.

$is_numeric_field returns TRUE if the field value should be numeric.

$is_integer_field returns TRUE if the field value should be an integer.

$is_required_field returns TRUE if the field is required.

See Also

Idd Class