Skip to main content

An energy modeling tool designed to model residential end-use loads and DERs

Project description

OCHRE

OCHRE: The Object-oriented Controllable High-resolution Residential Energy Model

OCHRE™ is a Python-based energy modeling tool designed to model end-use loads and distributed energy resources in residential buildings. It can model flexible devices---including HVAC equipment, water heaters, electric vehicles, solar PV, and batteries---and the thermal and electrical interactions between them. OCHRE has been used to generate diverse and high-resolution load profiles, examine the impacts of advanced control strategies on energy costs and occupant comfort, and assess grid reliability and resilience through building-to-grid co-simulation.

More information about OCHRE can be found in our documentation, on NREL's website, and from the Powered By OCHRE webinar recording.

If you use OCHRE for your research or other projects, please fill out our user survey.

Installation

OCHRE can be installed using pip from the command line:

pip install ochre-nrel

Alternatively, you can install a specific branch, for example:

pip install git+https://github.com/NREL/OCHRE@dev

Note that OCHRE requires Python version >=3.9 and <3.13.

Usage

OCHRE can be used to simulate a residential dwelling or an individual piece of equipment. In either case, a python object is instantiated and then simulated. A set of input parameters and/or input files must be defined.

Below is a simple example of simulating a dwelling:

import os
import datetime as dt
from ochre import Dwelling
from ochre.utils import default_input_path # for using sample files
dwelling = Dwelling(
    start_time=dt.datetime(2018, 1, 1, 0, 0),
    time_res=dt.timedelta(minutes=10),       
    duration=dt.timedelta(days=3),
    hpxml_file=os.path.join(default_input_path, "Input Files", "bldg0112631-up11.xml"),
    hpxml_schedule_file=os.path.join(default_input_path, "Input Files", "bldg0112631_schedule.csv"),
    weather_file=os.path.join(default_input_path, "Weather", "USA_CO_Denver.Intl.AP.725650_TMY3.epw"),
)

df, metrics, hourly = dwelling.simulate()

This will return 3 variables:

  • df: a Pandas DataFrame with 10 minute resolution
  • metrics: a dictionary of energy metrics
  • hourly: a Pandas DataFrame with 1 hour resolution (verbosity >= 3 only)

For more examples, see:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ochre_nrel-0.9.2.tar.gz (45.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ochre_nrel-0.9.2-py3-none-any.whl (44.8 MB view details)

Uploaded Python 3

File details

Details for the file ochre_nrel-0.9.2.tar.gz.

File metadata

  • Download URL: ochre_nrel-0.9.2.tar.gz
  • Upload date:
  • Size: 45.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for ochre_nrel-0.9.2.tar.gz
Algorithm Hash digest
SHA256 11e2b4b8bfbb36d43f16555770b4e5c8875c27a94d0907e8362c72b5568a56c5
MD5 5e11413df78d09c8ea48d79f6525870f
BLAKE2b-256 58606f7fcaab8d858ee2339577d40df40dc086fc735076dd9d4dba60f18dccab

See more details on using hashes here.

File details

Details for the file ochre_nrel-0.9.2-py3-none-any.whl.

File metadata

  • Download URL: ochre_nrel-0.9.2-py3-none-any.whl
  • Upload date:
  • Size: 44.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.7

File hashes

Hashes for ochre_nrel-0.9.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f2c36aadfb3808535fd8ad230af3bb91d24a3098e072636172c02eb3b261f5db
MD5 8d9aa5cafb87c09b070e2ea24851ba89
BLAKE2b-256 ff52372fd10adb2b29bf2830e1b385a693b1d0b7e14c84f27ed49b4bf50cd421

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page