#include <LayeredConstruction.hpp>
Public Member Functions | |
Constructors and Destructors | |
virtual | ~LayeredConstruction () |
Getters | |
std::vector< Material > | layers () const |
Returns the material layers that make up this construction. More... | |
Material | getLayer (unsigned layerIndex) const |
Get the Material at layerIndex, where layerIndex is between 0 and numLayers() - 1. More... | |
Setters | |
bool | eraseLayer (unsigned layerIndex) |
Erases the Material at layerIndex, if possible. More... | |
bool | insertLayer (unsigned layerIndex, const Material &material) |
Insert opaqueMaterial at layerIndex, if possible. More... | |
bool | setLayer (unsigned layerIndex, const Material &material) |
Set the layer at layerIndex to opaqueMaterial, if possible. More... | |
bool | setLayers (const std::vector< Material > &materials) |
Set the construction to use opaqueMaterials as its layers, if layersAreValid(opaqueMaterials). More... | |
bool | setLayer (const ModelPartitionMaterial &modelPartitionMaterial) |
Sets the construction to use modelPartitionMaterial. More... | |
Queries | |
bool | isSymmetric () const |
Returns true if this is a symmetric layered construction. More... | |
bool | equalLayers (const LayeredConstruction &other) const |
Returns true if this construction has the same layers as other one. More... | |
bool | reverseEqualLayers (const LayeredConstruction &other) const |
Returns true if this construction has the same layers but in reverse order as other one. More... | |
std::vector< unsigned > | nullLayers () const |
Returns layer indices that do not actually point to a Material. More... | |
unsigned | numLayers () const |
Returns the number of non-null layers in this construction. More... | |
std::vector< unsigned > | getLayerIndices (const Material &material) const |
Returns the indices from which this construction points to material. More... | |
Standards Methods | |
boost::optional< OpaqueMaterial > | insulation () const |
Returns the layer designated as insulation, if such a designation has been made. More... | |
bool | setInsulation (const OpaqueMaterial &insulationLayer) |
Notes that insulationLayer is the perturbable insulation layer. More... | |
void | resetInsulation () |
Removes any existing insulation layer designations. More... | |
void | ensureUniqueLayers () |
Ensures that all materials in this construction are used by this construction only. More... | |
Public Member Functions inherited from openstudio::model::ConstructionBase | |
boost::optional< double > | exteriorVisibleAbsorptance () const |
Get the visible absorptance of the exterior side of this construction (dimensionless). More... | |
double | getNetArea () const |
Returns the sum of the surface area of all planar surfaces that use this construction (m^2). More... | |
boost::optional< double > | heatCapacity () const |
Get the heat capacity of this construction (J/m^2*K). More... | |
boost::optional< double > | interiorVisibleAbsorptance () const |
Get the visible absorptance of the interior side of this construction (dimensionless). More... | |
bool | isFenestration () const |
bool | isGreenRoof () const |
Returns true if the construction has RoofVegetation as the outer layer. More... | |
bool | isModelPartition () const |
bool | isOpaque () const |
bool | isSolarDiffusing () const |
Returns true if isFenestration and any material layers are solar diffusing. More... | |
boost::optional< RenderingColor > | renderingColor () const |
Returns the rendering color. More... | |
void | resetRenderingColor () |
Resets the rendering color. More... | |
bool | setConductance (double value) |
Set the conductance of this surface in W/m^2*K, if possible. More... | |
bool | setConductance (double value, double filmResistance) |
Set the conductance of this surface in W/m^2*K, if possible. More... | |
bool | setRenderingColor (const RenderingColor &renderingColor) |
Sets the rendering color. More... | |
bool | setUFactor (double value) |
Set the u-factor of this surface in W/m^2*K, if possible. More... | |
bool | setUFactor (double value, double filmResistance) |
Set the u-factor of this surface in W/m^2*K, if possible. More... | |
boost::optional< double > | thermalConductance () const |
Get the thermal conductance of this construction (W/m^2*K). More... | |
boost::optional< double > | thermalConductance (double filmResistance) const |
Get the thermal conductance of this construction (W/m^2*K). More... | |
boost::optional< double > | uFactor () const |
Get the u-factor of this construction (W/m^2*K). More... | |
boost::optional< double > | uFactor (double filmResistance) const |
Get the u-factor of this construction (W/m^2*K). More... | |
boost::optional< double > | visibleTransmittance () const |
Get the visible transmittance of this construction (dimensionless). More... | |
virtual | ~ConstructionBase () |
StandardsInformationConstruction | standardsInformation () const |
Returns this construction's standards information, constructing a new object if necessary. More... | |
Public Member Functions inherited from openstudio::model::ResourceObject | |
unsigned | directUseCount (bool excludeChildren=false) const |
Returns the number of objects that use this resource directly. More... | |
unsigned | nonResourceObjectUseCount (bool excludeChildren=false) const |
Returns the number of non-ResourceObjects that use this resource either directly or indirectly. More... | |
virtual | ~ResourceObject () |
Public Member Functions inherited from openstudio::model::ParentObject | |
std::vector< IddObjectType > | allowableChildTypes () const |
Returns a vector of allowable children types. More... | |
std::vector< ModelObject > | children () const |
Return direct child objects in the Model. More... | |
virtual | ~ParentObject () |
Public Member Functions inherited from openstudio::model::ModelObject | |
virtual | ~ModelObject () |
ModelObject | clone () const |
Creates a deep copy of this object, placing it in this object's model(). More... | |
ModelObject | clone (Model model) const |
Creates a deep copy of this object, placing it in model. More... | |
Component | createComponent () const |
Method for creating sharable Model snippets. More... | |
Model | model () const |
Returns the Model that contains this object. More... | |
boost::optional< ParentObject > | parent () const |
Return this object's parent in the hierarchy, if it has one. More... | |
std::vector< ResourceObject > | resources () const |
Get the resources directly used by this ModelObject. More... | |
template<typename T > | |
std::vector< T > | getModelObjectSources () const |
Get all objects of type T that point to this object. More... | |
template<typename T > | |
std::vector< T > | getModelObjectSources (IddObjectType iddObjectType) const |
Get all objects of type T that point to this object. More... | |
template<typename T > | |
boost::optional< T > | getModelObjectTarget (unsigned index) const |
Get the object of type T pointed to by this object from field index. More... | |
template<typename T > | |
std::vector< T > | getModelObjectTargets () const |
Get all objects of type T to which this object points. More... | |
const std::vector< std::string > & | outputVariableNames () const |
Get all output variables names that could be associated with this object. More... | |
std::vector< OutputVariable > | outputVariables () const |
Get all output variables associated with this object, must run simulation to generate data. More... | |
boost::optional < openstudio::TimeSeries > | getData (const OutputVariable &variable, const std::string &envPeriod) const |
Get data associated with this output variable and this object. More... | |
std::vector< LifeCycleCost > | lifeCycleCosts () const |
Returns the list of all LifeCycleCosts that refer to this object. More... | |
std::vector< IdfObject > | removeLifeCycleCosts () |
Removes all LifeCycleCosts that refer to this object. More... | |
IddObjectType | iddObjectType () const |
This is a virtual function that will tell you the type of iddObject you are dealing with. More... | |
AdditionalProperties | additionalProperties () const |
Returns this object's additional properties, constructing a new object if necessary. More... | |
bool | hasAdditionalProperties () const |
Returns true if this object has additional properties. More... | |
std::vector< IdfObject > | removeAdditionalProperties () |
Removes all additional properties that refer to this object. More... | |
bool | setParent (ParentObject &newParent) |
set the parent, child may have to call non-const methods on the parent More... | |
bool | operator< (const ModelObject &right) const |
bool | operator== (const ModelObject &other) const |
equality test More... | |
bool | operator!= (const ModelObject &other) const |
inequality test More... | |
std::vector< ScheduleTypeKey > | getScheduleTypeKeys (const Schedule &schedule) const |
Return the ScheduleTypeKeys indicating how schedule is used in this object. More... | |
boost::optional< double > | getAutosizedValue (std::string valueName, std::string unitString) const |
Gets the autosized component value from the sql file. More... | |
virtual std::vector < EMSActuatorNames > | emsActuatorNames () const |
Return the names of the available ems actuators. More... | |
virtual std::vector< std::string > | emsInternalVariableNames () const |
Return the names of the available ems internal variables. More... | |
boost::optional< ModelObject > | connectedObject (unsigned port) const |
boost::optional< unsigned > | connectedObjectPort (unsigned port) const |
Static Public Member Functions | |
Static Methods | |
static bool | layersAreValid (const std::vector< Material > &materials) |
Returns true if materials defines a valid EnergyPlus construction. More... | |
static bool | layersAreValid (const std::vector< OpaqueMaterial > &opaqueMaterials) |
static bool | layersAreValid (const std::vector< FenestrationMaterial > &fenestrationMaterials) |
Related Functions | |
(Note that these are not member functions.) | |
typedef std::vector < LayeredConstruction > | LayeredConstructionVector |
typedef boost::optional < LayeredConstruction > | OptionalLayeredConstruction |
Related Functions inherited from openstudio::model::ConstructionBase | |
typedef std::vector < ConstructionBase > | ConstructionBaseVector |
typedef boost::optional < ConstructionBase > | OptionalConstructionBase |
Related Functions inherited from openstudio::model::ResourceObject | |
typedef boost::optional < ResourceObject > | OptionalResourceObject |
typedef std::vector < ResourceObject > | ResourceObjectVector |
Related Functions inherited from openstudio::model::ParentObject | |
std::vector< ModelObject > | getRecursiveChildren (const ParentObject &object, bool includeLifeCycleCostsAndAdditionalProperties=false, bool includeUsedResources=true) |
Returns object and all other objects accessible by calling children() on encountered ParentObjects . More... | |
std::vector< ModelObject > | getRecursiveChildrenAndResources (const ModelObject &object) |
Returns object and all other objects accessible by calling children() and resources() on encountered ModelObjects . More... | |
Related Functions inherited from openstudio::model::ModelObject | |
std::vector< ResourceObject > | getRecursiveResources (const ModelObject &object) |
Returns all ResourceObjects accessible by recursively calling .resources() starting from object. More... | |
Additional Inherited Members | |
Protected Types inherited from openstudio::model::ModelObject | |
typedef detail::ModelObject_Impl | ImplType |
Protected Member Functions inherited from openstudio::model::ResourceObject | |
ResourceObject (IddObjectType type, const Model &model) | |
Constructs a new PlanarSurface object in the model. More... | |
Protected Member Functions inherited from openstudio::model::ParentObject | |
ParentObject (IddObjectType type, const Model &model) | |
Constructs a new ParentObject object in the model. More... | |
Protected Member Functions inherited from openstudio::model::ModelObject | |
ModelObject (IddObjectType type, const Model &model, bool fastName=false) | |
ModelObject (std::shared_ptr< detail::ModelObject_Impl > impl) | |
LayeredConstruction is a ConstructionBase that serves as a base class to concrete construction classes that are composed of Material layers.
|
inlinevirtual |
void openstudio::model::LayeredConstruction::ensureUniqueLayers | ( | ) |
Ensures that all materials in this construction are used by this construction only.
Allows standards to then appply standards specified material properties to each layer (e.g. SRI).
bool openstudio::model::LayeredConstruction::equalLayers | ( | const LayeredConstruction & | other | ) | const |
Returns true if this construction has the same layers as other one.
bool openstudio::model::LayeredConstruction::eraseLayer | ( | unsigned | layerIndex | ) |
Erases the Material at layerIndex, if possible.
Must have 0 <= layerIndex < numLayers, and resulting construction must satisfy layersAreValid.
Material openstudio::model::LayeredConstruction::getLayer | ( | unsigned | layerIndex | ) | const |
Get the Material at layerIndex, where layerIndex is between 0 and numLayers() - 1.
Throws a openstudio::Exception if layerIndex >= numLayers.
std::vector<unsigned> openstudio::model::LayeredConstruction::getLayerIndices | ( | const Material & | material | ) | const |
Returns the indices from which this construction points to material.
bool openstudio::model::LayeredConstruction::insertLayer | ( | unsigned | layerIndex, |
const Material & | material | ||
) |
Insert opaqueMaterial at layerIndex, if possible.
Must have 0 <= layerIndex <= numLayers, and this construction must have no layers or satisfy isOpaque == true. Furthermore, the resulting construction must satisfy layersAreValid.
boost::optional<OpaqueMaterial> openstudio::model::LayeredConstruction::insulation | ( | ) | const |
Returns the layer designated as insulation, if such a designation has been made.
bool openstudio::model::LayeredConstruction::isSymmetric | ( | ) | const |
Returns true if this is a symmetric layered construction.
std::vector<Material> openstudio::model::LayeredConstruction::layers | ( | ) | const |
Returns the material layers that make up this construction.
Listed in order from outside in, that is, the Material at index 0 faces out from the point of view of the Zone, should this LayeredConstruction be associated with a PlanarSurface.
|
static |
Returns true if materials defines a valid EnergyPlus construction.
Returns false if layers are empty. Checks the following rules if first layer is an OpaqueMaterial:
Checks the following rules if first layer is a FenestrationMaterial:
Checks the following rules if first layer is a ModelPartitionMaterial:
|
static |
|
static |
std::vector<unsigned> openstudio::model::LayeredConstruction::nullLayers | ( | ) | const |
Returns layer indices that do not actually point to a Material.
Before simulation, the returned vector should be empty.
unsigned openstudio::model::LayeredConstruction::numLayers | ( | ) | const |
Returns the number of non-null layers in this construction.
void openstudio::model::LayeredConstruction::resetInsulation | ( | ) |
Removes any existing insulation layer designations.
Does not touch the actual composition of the construction.
bool openstudio::model::LayeredConstruction::reverseEqualLayers | ( | const LayeredConstruction & | other | ) | const |
Returns true if this construction has the same layers but in reverse order as other one.
bool openstudio::model::LayeredConstruction::setInsulation | ( | const OpaqueMaterial & | insulationLayer | ) |
Notes that insulationLayer is the perturbable insulation layer.
Only works if insulationLayer is already in this construction.
bool openstudio::model::LayeredConstruction::setLayer | ( | unsigned | layerIndex, |
const Material & | material | ||
) |
Set the layer at layerIndex to opaqueMaterial, if possible.
Must have 0 <= layerIndex < numLayers, and this construction must satisfy isOpaque == true. Furthermore, the resulting construction must satisfy layersAreValid.
bool openstudio::model::LayeredConstruction::setLayer | ( | const ModelPartitionMaterial & | modelPartitionMaterial | ) |
Sets the construction to use modelPartitionMaterial.
Clears out all previous Material layers.
bool openstudio::model::LayeredConstruction::setLayers | ( | const std::vector< Material > & | materials | ) |
Set the construction to use opaqueMaterials as its layers, if layersAreValid(opaqueMaterials).
Clears out all previous Material layers.
|
related |
|
related |