#include <LayeredConstruction.hpp>
Public Member Functions | |
Constructors and Destructors | |
virtual | ~LayeredConstruction () override=default |
LayeredConstruction (const LayeredConstruction &other)=default | |
LayeredConstruction (LayeredConstruction &&other)=default | |
LayeredConstruction & | operator= (const LayeredConstruction &)=default |
LayeredConstruction & | operator= (LayeredConstruction &&)=default |
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 () override=default |
ConstructionBase (const ConstructionBase &other)=default | |
ConstructionBase (ConstructionBase &&other)=default | |
ConstructionBase & | operator= (const ConstructionBase &)=default |
ConstructionBase & | operator= (ConstructionBase &&)=default |
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... | |
ResourceObject & | operator= (const ResourceObject &)=default |
ResourceObject & | operator= (ResourceObject &&)=default |
ResourceObject (const ResourceObject &other)=default | |
ResourceObject (ResourceObject &&other)=default | |
virtual | ~ResourceObject () override=default |
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... | |
ParentObject & | operator= (const ParentObject &)=default |
ParentObject & | operator= (ParentObject &&)=default |
ParentObject (const ParentObject &other)=default | |
ParentObject (ParentObject &&other)=default | |
virtual | ~ParentObject () override=default |
Public Member Functions inherited from openstudio::model::ModelObject | |
virtual | ~ModelObject () override=default |
ModelObject (const ModelObject &other)=default | |
ModelObject (ModelObject &&other)=default | |
ModelObject & | operator= (const ModelObject &)=default |
ModelObject & | operator= (ModelObject &&)=default |
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... | |
boost::optional< std::string > | cadObjectId () const |
bool | setCADObjectId (const std::string &cadObjectId) |
boost::optional< std::string > | gbXMLId () const |
bool | setGBXMLId (const std::string &gbXMLId) |
boost::optional< std::string > | displayName () const |
bool | setDisplayName (const std::string &displayName) |
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 (const std::string &valueName, const std::string &units) 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 |
Public Member Functions inherited from openstudio::WorkspaceObject | |
bool | canBeSource () const |
bool | canBeSource (unsigned index, const std::vector< std::string > &refLists=std::vector< std::string >()) const |
std::vector< std::string > | canBeTarget () const |
std::vector< unsigned > | getSourceIndices (const Handle &targetHandle) const |
std::vector< WorkspaceObject > | getSources (IddObjectType type) const |
boost::optional< WorkspaceObject > | getTarget (unsigned index) const |
IdfObject | idfObject () |
IdfObject | idfObject () const |
bool | initialized () const |
bool | isSource () const |
bool | isTarget () const |
unsigned | numSources () const |
bool | objectListFieldsEqual (const WorkspaceObject &other) const |
bool | objectListFieldsNonConflicting (const WorkspaceObject &other) const |
bool | operator< (const WorkspaceObject &right) const |
std::ostream & | operator<< (std::ostream &os, const WorkspaceObject &workspaceObject) |
WorkspaceObject & | operator= (WorkspaceObject &&)=default |
WorkspaceObject & | operator= (const WorkspaceObject &)=default |
std::vector < openstudio::IdfObject > | remove () |
bool | setPointer (unsigned index, const Handle &targetHandle) |
std::vector< WorkspaceObject > | sources () const |
std::vector< WorkspaceObject > | targets () const |
Workspace | workspace () const |
WorkspaceObject (const WorkspaceObject &other)=default | |
WorkspaceObject (WorkspaceObject &&other)=default | |
virtual | ~WorkspaceObject () override=default |
Public Member Functions inherited from openstudio::IdfObject | |
std::string | briefDescription () const |
T | cast () const |
std::vector< T > | castVector (const std::vector< U > &objects) |
std::vector< std::vector < std::string > > | clearExtensibleGroups () |
IdfObject | clone (bool keepHandle=false) const |
std::string | comment () const |
boost::optional< std::string > | createName (bool overwrite=true) |
std::vector< unsigned > | dataFields () const |
bool | dataFieldsEqual (const IdfObject &other) const |
std::vector< std::string > | eraseExtensibleGroup (unsigned groupIndex) |
std::vector< IdfExtensibleGroup > | extensibleGroups () const |
boost::optional< std::string > | fieldComment (unsigned index, bool returnDefault=false) const |
boost::optional< double > | getDouble (unsigned index, bool returnDefault=false) const |
IdfExtensibleGroup | getExtensibleGroup (unsigned groupIndex) const |
boost::optional< std::string > | getField (unsigned index, bool returnDefault=false) const |
std::vector< Handle > | getHandles (const std::vector< T > &objects) |
boost::optional< int > | getInt (unsigned index, bool returnDefault=false) const |
OSOptionalQuantity | getQuantity (unsigned index, bool returnDefault=false, bool returnIP=false) const |
boost::optional< std::string > | getString (unsigned index, bool returnDefault=false, bool returnUninitializedEmpty=false) const |
boost::optional< unsigned > | getUnsigned (unsigned index, bool returnDefault=false) const |
Handle | handle () const |
IddObject | iddObject () const |
IdfObject (IddObjectType type, bool fastName=false) | |
IdfObject (const IdfObject &other) | |
IdfObject (const IddObject &, bool fastName=false) | |
IdfObject (IdfObject &&other) noexcept | |
IdfExtensibleGroup | insertExtensibleGroup (unsigned groupIndex) |
IdfExtensibleGroup | insertExtensibleGroup (unsigned groupIndex, const std::vector< std::string > &values) |
bool | isDataField (unsigned index) const |
bool | isEmpty (unsigned index) const |
bool | isObjectListField (unsigned index) const |
bool | isValid (StrictnessLevel level, bool checkNames=false) const |
boost::optional< unsigned > | maxExtensibleGroups () const |
boost::optional< unsigned > | maxFields () const |
unsigned | minExtensibleGroups () const |
unsigned | minFields () const |
boost::optional< std::string > | name (bool returnDefault=false) const |
std::string | nameString (bool returnDefault=false) const |
unsigned | numExtensibleGroups () const |
unsigned | numFields () const |
unsigned | numNonextensibleFields () const |
std::vector< unsigned > | objectListFields () const |
bool | objectListFieldsEqual (const IdfObject &other) const |
bool | objectListFieldsNonConflicting (const IdfObject &other) const |
bool | operator!= (const IdfObject &other) const |
std::ostream & | operator<< (std::ostream &os, const IdfObject &IdfObject) |
IdfObject & | operator= (IdfObject &&other) noexcept |
IdfObject & | operator= (const IdfObject &other) |
bool | operator== (const IdfObject &other) const |
boost::optional< T > | optionalCast () const |
std::vector< std::string > | popExtensibleGroup () |
std::ostream & | print (std::ostream &os) const |
std::ostream & | printField (std::ostream &os, unsigned index, bool isLastField=false) const |
std::ostream & | printName (std::ostream &os, bool hasFields=true) const |
IdfExtensibleGroup | pushExtensibleGroup (const std::vector< std::string > &values) |
IdfExtensibleGroup | pushExtensibleGroup () |
std::vector< unsigned > | requiredFields () const |
void | setComment (const std::string &msg) |
bool | setDouble (unsigned index, double value) |
bool | setFieldComment (unsigned index, const std::string &cmnt) |
bool | setInt (unsigned index, int value) |
boost::optional< std::string > | setName (const std::string &newName) |
bool | setQuantity (unsigned index, const Quantity &q) |
bool | setString (unsigned index, const std::string &value) |
bool | setUnsigned (unsigned index, unsigned value) |
std::vector< T > | subsetCastVector (const std::vector< U > &original) |
ValidityReport | validityReport (StrictnessLevel level, bool checkNames=false) const |
virtual | ~IdfObject ()=default |
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) |
Static Public Member Functions inherited from openstudio::IdfObject | |
static boost::optional< IdfObject > | load (const std::string &text) |
static boost::optional< IdfObject > | load (const std::string &text, const IddObject &iddObject) |
static int | printedFieldSpace () |
Related Functions | |
(Note that these are not member functions.) | |
using | LayeredConstructionVector = std::vector< LayeredConstruction > |
using | OptionalLayeredConstruction = boost::optional< LayeredConstruction > |
Related Functions inherited from openstudio::model::ConstructionBase | |
using | ConstructionBaseVector = std::vector< ConstructionBase > |
using | OptionalConstructionBase = boost::optional< ConstructionBase > |
Related Functions inherited from openstudio::model::ResourceObject | |
using | OptionalResourceObject = boost::optional< ResourceObject > |
using | ResourceObjectVector = std::vector< ResourceObject > |
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 | |
Public Types inherited from openstudio::WorkspaceObject | |
typedef boost::optional < WorkspaceObject > | OptionalWorkspaceObject |
typedef std::vector < WorkspaceObject > | WorkspaceObjectVector |
Public Types inherited from openstudio::IdfObject | |
typedef std::pair< IdfObject, IdfObject > | IdfObjectPair |
typedef std::vector< IdfObject > | IdfObjectVector |
typedef boost::optional < IdfObject > | OptionalIdfObject |
Protected Types inherited from openstudio::model::ModelObject | |
using | ImplType = detail::ModelObject_Impl |
Protected Types inherited from openstudio::WorkspaceObject | |
typedef detail::WorkspaceObject_Impl | ImplType |
Protected Types inherited from openstudio::IdfObject | |
typedef detail::IdfObject_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) | |
Protected Member Functions inherited from openstudio::WorkspaceObject | |
WorkspaceObject (std::shared_ptr< detail::WorkspaceObject_Impl > impl) | |
Protected Member Functions inherited from openstudio::IdfObject | |
IdfObject (std::shared_ptr< detail::IdfObject_Impl > impl) | |
LayeredConstruction is a ConstructionBase that serves as a base class to concrete construction classes that are composed of Material layers.
|
overridevirtualdefault |
|
default |
|
default |
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.
|
default |
|
default |
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 |