|
void | applySizingValues () |
| For each object in the model with autosizable fields, retrieves the autosized values from the sizing run and then sets these values in the object explicitly. More...
|
|
void | autosize () |
| For each object in the model with autosizable fields, sets all autosizable fields to 'autosize'. More...
|
|
void | connect (ModelObject sourceObject, unsigned sourcePort, ModelObject targetObject, unsigned targetPort) const |
| Connects the sourcePort on the source ModelObject to the targetPort on the target ModelObject. More...
|
|
void | disconnect (ModelObject object, unsigned port) |
| Disconnects the port on the given ModelObject. More...
|
|
boost::optional< ComponentData > | insertComponent (const Component &component) |
| Inserts Component into Model and returns the primary object, if possible. More...
|
|
std::vector< ModelObject > | modelObjects (bool sorted=false) const |
| Get all model objects. More...
|
|
bool | operator== (const Model &other) const |
| Equality test, tests if this Model shares the same implementation object with other. More...
|
|
std::vector
< openstudio::IdfObject > | purgeUnusedResourceObjects () |
| Removes all ResourceObjects with nonResourceObjectUseCount() == 0. More...
|
|
std::vector
< openstudio::IdfObject > | purgeUnusedResourceObjects (IddObjectType iddObjectType) |
| Removes all ResourceObjects of given IddObjectType with directUseCount() == 0. More...
|
|
|
| Model () |
| Creates a new, empty Model. More...
|
|
| Model (const openstudio::IdfFile &idfFile) |
| Creates a new Model with one ModelObject for each IdfObject in the given IdfFile. More...
|
|
| Model (const openstudio::Workspace &workspace) |
| Creates a new Model with one ModelObject for each WorkspaceObjects in the given Workspace. More...
|
|
virtual | ~Model () |
|
|
WorkflowJSON | workflowJSON () const |
| Get the WorkflowJSON. More...
|
|
boost::optional< SqlFile > | sqlFile () const |
| Returns the EnergyPlus output SqlFile if set. More...
|
|
boost::optional< Building > | building () const |
| Get the Building object if there is one, this implementation uses a cached reference to the Building object which can be significantly faster than calling getOptionalUniqueModelObject<Building>(). More...
|
|
boost::optional
< FoundationKivaSettings > | foundationKivaSettings () const |
| Get the FoundationKivaSettings object if there is one, this implementation uses a cached reference to the FoundationKivaSettings object which can be significantly faster than calling getOptionalUniqueModelObject<FoundationKivaSettings>(). More...
|
|
boost::optional
< PerformancePrecisionTradeoffs > | performancePrecisionTradeoffs () const |
| Get the PerformancePrecisionTradeoffs object if there is one, this implementation uses a cached reference to the PerformancePrecisionTradeoffs object which can be significantly faster than calling getOptionalUniqueModelObject<PerformancePrecisionTradeoffs>(). More...
|
|
boost::optional
< LifeCycleCostParameters > | lifeCycleCostParameters () const |
| Get the LifeCycleCostParameters object if there is one, this implementation uses a cached reference to the LifeCycleCostParameters object which can be significantly faster than calling getOptionalUniqueModelObject<LifeCycleCostParameters>(). More...
|
|
boost::optional< RunPeriod > | runPeriod () const |
| Get the RunPeriod object if there is one, this implementation uses a cached reference to the RunPeriod object which can be significantly faster than calling getOptionalUniqueModelObject<RunPeriod>(). More...
|
|
boost::optional< YearDescription > | yearDescription () const |
| Get the YearDescription object if there is one, this implementation uses a cached reference to the YearDescription object which can be significantly faster than calling getOptionalUniqueModelObject<YearDescription>(). More...
|
|
boost::optional< int > | calendarYear () const |
| Get or create the YearDescription object if there is one, then call method from YearDescription. More...
|
|
std::string | dayofWeekforStartDay () const |
|
bool | isDayofWeekforStartDayDefaulted () const |
|
bool | isLeapYear () const |
|
bool | isIsLeapYearDefaulted () const |
|
bool | setCalendarYear (int calendarYear) |
|
void | resetCalendarYear () |
|
bool | setDayofWeekforStartDay (std::string dayofWeekforStartDay) |
|
void | resetDayofWeekforStartDay () |
|
bool | setIsLeapYear (bool isLeapYear) |
|
void | resetIsLeapYear () |
|
int | assumedYear () |
|
openstudio::Date | makeDate (openstudio::MonthOfYear monthOfYear, unsigned dayOfMonth) |
|
openstudio::Date | makeDate (unsigned monthOfYear, unsigned dayOfMonth) |
|
openstudio::Date | makeDate (openstudio::NthDayOfWeekInMonth n, openstudio::DayOfWeek dayOfWeek, openstudio::MonthOfYear monthOfYear) |
|
openstudio::Date | makeDate (unsigned dayOfYear) |
|
boost::optional< WeatherFile > | weatherFile () const |
| Get the WeatherFile object if there is one, this implementation uses a cached reference to the WeatherFile object which can be significantly faster than calling getOptionalUniqueModelObject<WeatherFile>(). More...
|
|
Schedule | alwaysOnDiscreteSchedule () const |
| Get an always on schedule with discrete type limits if there is one. More...
|
|
std::string | alwaysOnDiscreteScheduleName () const |
| Get the always on schedule with discrete type limits name. More...
|
|
Schedule | alwaysOffDiscreteSchedule () const |
| Get an always off schedule with discrete type limits if there is one. More...
|
|
std::string | alwaysOffDiscreteScheduleName () const |
| Get the always off schedule with discrete type limits name. More...
|
|
Schedule | alwaysOnContinuousSchedule () const |
| Get an always on schedule with continuous type limits if there is one. More...
|
|
std::string | alwaysOnContinuousScheduleName () const |
| Get the always on schedule with continuous type limits name. More...
|
|
Node | outdoorAirNode () const |
| Get a Node named 'Model Outdoor Air Node' (intended to be forward translated to an OutdoorAir:Node) and not connected to a PlantLoop or AirLoopHVAC. More...
|
|
SpaceType | plenumSpaceType () const |
| Get the space type used for plenums if there is one. More...
|
|
std::string | plenumSpaceTypeName () const |
| Get the space type name used for plenums. More...
|
|
|
bool | setWorkflowJSON (const WorkflowJSON &workflowJSON) |
| Set the WorkflowJSON. More...
|
|
void | resetWorkflowJSON () |
| Reset the WorkflowJSON. More...
|
|
bool | setSqlFile (const SqlFile &sqlFile) |
| Sets the EnergyPlus output SqlFile. More...
|
|
bool | resetSqlFile () |
| Resets the EnergyPlus output SqlFile. More...
|
|
|
template<typename T > |
boost::optional< T > | getModelObject (const Handle &handle) const |
| Returns the ModelObject referenced by handle if it is of type T. More...
|
|
template<typename T > |
T | getUniqueModelObject () |
| Returns the unique ModelObject of type T, creates a one if none are found. More...
|
|
template<typename T > |
boost::optional< T > | getOptionalUniqueModelObject () const |
| Returns the unique ModelObject of type T if it is found. More...
|
|
template<typename T > |
std::vector< T > | getModelObjects (bool sorted=false) const |
| Returns all ModelObjects of type T. More...
|
|
template<typename T > |
std::vector< T > | getConcreteModelObjects () const |
| Returns all ModelObjects of type T, using T::iddObjectType() to speed up the search. More...
|
|
template<typename T > |
std::vector< T > | getModelObjects (const std::vector< openstudio::Handle > &handles) const |
| Returns the subset of ModelObjects referenced by handles which are of type T. More...
|
|
template<typename T > |
boost::optional< T > | getModelObjectByName (const std::string &name) const |
| Returns the ModelObjects of type T with name (exactMatch). More...
|
|
template<typename T > |
std::vector< T > | getModelObjectsByName (const std::string &name, bool exactMatch=true) const |
| Returns all ModelObjects of type T with given name. More...
|
|
template<typename T > |
boost::optional< T > | getConcreteModelObjectByName (const std::string &name) const |
|
template<typename T > |
std::vector< T > | getConcreteModelObjectsByName (const std::string &name) const |
|
std::vector< WorkspaceObject > | addAndInsertObjects (const std::vector< IdfObject > &objectsToAdd, const std::vector< IdfObject > &objectsToInsert) |
|
std::vector< WorkspaceObject > | addAndInsertObjects (const std::vector< WorkspaceObject > &objectsToAdd, const std::vector< WorkspaceObject > &objectsToInsert) |
|
std::vector< WorkspaceObject > | addAndInsertObjects (const std::vector< WorkspaceObject > &objectsToAdd, const std::vector< std::vector< WorkspaceObject > > &objectsToInsert) |
|
boost::optional< WorkspaceObject > | addObject (const IdfObject &idfObject) |
|
std::vector< WorkspaceObject > | addObjects (const std::vector< IdfObject > &idfObjects, bool checkNames=true) |
|
std::vector< WorkspaceObject > | addObjects (const std::vector< WorkspaceObject > &objects, bool checkNames=true) |
|
bool | canBeTarget (const Handle &handle, const std::set< std::string > &referenceListNames) const |
|
T | cast () const |
|
Workspace | clone (bool keepHandles=false) const |
|
Workspace | cloneSubset (const std::vector< Handle > &handles, bool keepHandles=false, StrictnessLevel level=StrictnessLevel::Draft) const |
|
bool | connectProgressBar (openstudio::ProgressBar &progressBar) |
|
bool | disconnectProgressBar (openstudio::ProgressBar &progressBar) |
|
bool | fastNaming () const |
|
boost::optional< IddObject > | getIddObject (const IddObjectType &type) const |
|
boost::optional< WorkspaceObject > | getObject (Handle handle) const |
|
boost::optional< WorkspaceObject > | getObjectByNameAndReference (std::string name, const std::vector< std::string > &referenceNames) const |
|
boost::optional< WorkspaceObject > | getObjectByTypeAndName (IddObjectType objectType, const std::string &name) const |
|
std::vector< WorkspaceObject > | getObjects (const std::vector< Handle > &handles) const |
|
std::vector< WorkspaceObject > | getObjectsByName (const std::string &name, bool exactMatch=true) const |
|
std::vector< WorkspaceObject > | getObjectsByReference (const std::string &referenceName) const |
|
std::vector< WorkspaceObject > | getObjectsByReference (const std::vector< std::string > &referenceNames) const |
|
std::vector< WorkspaceObject > | getObjectsByType (IddObjectType objectType) const |
|
std::vector< WorkspaceObject > | getObjectsByType (const IddObject &objectType) const |
|
std::vector< WorkspaceObject > | getObjectsByTypeAndName (IddObjectType objectType, const std::string &name) const |
|
std::vector< Handle > | handles (bool sorted=false) const |
|
IddFile | iddFile () const |
|
IddFileType | iddFileType () const |
|
boost::optional< WorkspaceObject > | insertObject (const IdfObject &idfObject) |
|
std::vector< WorkspaceObject > | insertObjects (const std::vector< IdfObject > &idfObjects) |
|
std::vector< WorkspaceObject > | insertObjects (const std::vector< WorkspaceObject > &objects) |
|
bool | isInIddFile (IddObjectType type) const |
|
bool | isMember (const Handle &handle) const |
|
bool | isValid () const |
|
bool | isValid (StrictnessLevel level) const |
|
std::vector< std::pair< QUrl,
openstudio::path > > | locateUrls (const std::vector< URLSearchPath > &t_paths, bool t_create_relative_paths, const openstudio::path &t_infile) |
|
boost::optional< std::string > | name (const Handle &handle) const |
|
std::string | nextName (const std::string &name, bool fillIn) const |
|
std::string | nextName (const IddObjectType &iddObjectType, bool fillIn) const |
|
unsigned | numObjects () const |
|
unsigned | numObjectsOfType (IddObjectType type) const |
|
unsigned | numObjectsOfType (const IddObject &objectType) const |
|
std::vector< WorkspaceObject > | objects (bool sorted=false) const |
|
std::vector< WorkspaceObject > | objectsWithURLFields () const |
|
bool | operator!= (const Workspace &other) const |
|
std::ostream & | operator<< (std::ostream &os, const Workspace &workspace) |
|
bool | operator== (const Workspace &other) const |
|
boost::optional< T > | optionalCast () const |
|
WorkspaceObjectOrder | order () |
|
const WorkspaceObjectOrder | order () const |
|
bool | removeObject (const Handle &handle) |
|
bool | removeObjects (const std::vector< Handle > &handles) |
|
bool | save (const openstudio::path &p, bool overwrite=false) |
|
void | setFastNaming (bool fastNaming) |
|
bool | setStrictnessLevel (StrictnessLevel level) |
|
std::vector< Handle > | sort (const std::vector< Handle > &handles) const |
|
std::vector< WorkspaceObject > | sort (const std::vector< WorkspaceObject > &objects) const |
|
StrictnessLevel | strictnessLevel () const |
|
bool | swap (WorkspaceObject ¤tObject, IdfObject &newObject, bool keepTargets=false) |
|
void | swap (Workspace &other) |
|
IdfFile | toIdfFile () const |
|
ValidityReport | validityReport () const |
|
ValidityReport | validityReport (StrictnessLevel level) const |
|
VersionString | version () const |
|
boost::optional< WorkspaceObject > | versionObject () const |
|
| Workspace (const Workspace &other) |
|
| Workspace (StrictnessLevel level) |
|
| Workspace () |
|
| Workspace (const IdfFile &idfFile, StrictnessLevel level=StrictnessLevel::None) |
|
| Workspace (StrictnessLevel level, IddFileType iddFileType) |
|
virtual | ~Workspace () |
|
Model derives from Workspace and is a container for ModelObjects as defined by the OpenStudio IDD.
The OpenStudio Model is primarily a container for ModelObjects which together define a complete or partial model of a building for energy simulation. A ModelObject cannot exist outside of a Model which ensures that each ModelObject can access the full Model to search for related ModelObjects. Model also accepts a connection to EnergyPlus simulation output through the SqlFile access to the SQLite output of EnergyPlus. Each ModelObject may then access simulation output in its own context. Connection to simulation data from other simulation engines is planned for the future.
The OpenStudio Model input data model is based on the schema defined by the OpenStudio IDD. Each concrete ModelObject wraps a particular data type in the OpenStudio IDD and Model enforces collection level constraints such as preventing multiple definitions of unique objects, updating reference fields that point from one ModelObject to another when the target's name changes, etc. Most of Model's capabilities for managing data according to an IDD schema are implemented in the Workspace base class. See the Workspace documentation in the utilities sub-project for more information about Workspace.