This repository contains an URBANopt™ Example GeoJSON Project to demonstrate its basic principles. It combines a set of URBANopt modules to implement a district-scale energy analysis workflow. Each of these modules is developed and managed in separate source code repositories. The different modules used in the URBANopt Example GeoJSON Project workflow include:
-
URBANopt Core Gem defines the FeatureFile class.
-
URBANopt GeoJSON Gem has functionality to translate the GeoJSON Features to OpenStudio Models for simulation.
-
URBANopt Scenario Gem allows the user to specify, run and compare multiple district-scale energy scenarios.
-
URBANopt Reporting Gem generates the URBANopt results according to a consistent schema.
-
OpenStudio Common Measures Gem , OpenStudio Model Articulation Gem and OpenStudio Standards Gem modules are part of the OpenStudio SDK.
The
example project has different projects based on the geometry method used to create
buildings, such as the
default project
, createbar project
and the floorspace project
.
There are commands to run, post process and delete these project described as
rake tasks within the
Rakefile.
More details on these projects and their implementation is described in the Developer Documentation.
An overview of the commands:
To view all rake tasks
bundle exec rake -T
Running the projects
To run all projects and scenarios
bundle exec rake run_all
To run a specific scenario for a project
bundle exec rake run_baseline[json,csv]
bundle exec rake run_high_efficiency[json,csv]
bundle exec rake run_mixed[json,csv]
Where json
is the name of the FeatureFile and csv
is the name of the
scenario file corresponding to that feature file. For example, to run the createbar
project for
baseline scenario, use
the example_project.json
as json and createbar_scenario.csv
as csv.
To run the thermal storage scenario
bundle exec rake run_thermal_storage[json,csv]
Where json
is the FeatureFile (such as example_project.json
) and csv
is the name of the
baseline, high efficiency or mixed scenario csv for this feature file (for example thermal_storage_scenario.csv
).
Post-processing the projects
To post-process all projects and scenarios
bundle exec rake post_process_all[json,csv]
To post-process a specific scenario for a project
bundle exec rake post_process_baseline[json,csv]
bundle exec rake post_process_high_efficiency[json,csv]
bundle exec rake post_process_mixed[json,csv]
Where json
is the is the name of the FeatureFile and csv
is the name of the scenario file
corresponding to the feature file that you would like to post-process.
bundle exec rake post_process_thermal_storage[json,csv]
Where json
is the example_project.json
FeatureFile and csv
is the name of a scenario file for this feature file.
Visualizing post-processing results
After running the post processing commands, the results of the post-processing can be visualized in an html file.
To visualize and compare features in a scenario
bundle exec rake visualize_features[scenario_file]
Where scenario_file
is the name of the csv and dictates the scenario for which feature results are
visualized.
To visualize and compare scenarios
bundle exec rake visualize_scenarios
Clearing the projects
To clear all projects and scenarios
bundle exec rake clear_all[json,csv]
To clear a specific scenario for a project
bundle exec rake clear_baseline[json,csv]
bundle exec rake clear_high_efficiency[json,csv]
bundle exec rake clear_mixed[json,csv]
Where json
is the is the name of the FeatureFile and csv
is the name of the scenario file
corresponding to the feature file that you would like to clear.
bundle exec rake clear_thermal_storage[json,csv]
Where, json
is the example_project.json
FeatureFile and csv
is the name of a scenario file for this feature file.