Skip to main content

Translate floor plan geometry into building energy models

Project description

plan2eplus

plan2eplus makes it easy to translate floor plan geometry into building energy models

plan2eplus is a Python library designed for authoring building energy models, with the aim of helping designers better understand the energy consumption and thermal performance of proposed building during the early stages of design. plan2eplus is designed for EnergyPlus, a popular software for creating building energy models.

plan2eplus provides support for:

  • Translating validated geometric information into EnergyPlus models
  • Studying the impact of natural ventilation on thermal performance using EnergyPlus's AirflowNetwork
  • Quickly visualizing input geometries as 2D plans
  • Studying the impact of different floor plans on thermal performance

About

Typical methods for creating an energy model for a given floor plan can be slow and error-prone. In a typical workflow, one might obtain the dimensions of the geometries of the components of their floorplan, redraw the geometry based on these dimensions, and then have another program generate the energy model. plan2eplus relieves the need to redraw geometries, making it possible for users to go directly from dimensions of the plan to energy models. The package exposes a series of user friendly objects that can either be defined in Python or in JSON files, making it easy bring geometric information from a variety of venues.

plan2eplus is designed for early-stage, climate-aware architecture. As such, support for EnergyPlus's AirflowNetwork, which enables users to understand the potential benefits of using natural ventilation, is a first-order consideration. plan2eplus also provides methods for visualizing floor plans and various quantities of interest, enabling designers to quickly understand how their chosen design affects thermal performance. As part of this goal, plan2eplus also provides functionality to quickly generate a series of different designs and study the impact of changes.

Install

plan2eplus will soon hosted on pypi. It will be easy to install using traditional methods for Python package installation.

# with uv
uv install plan2eplus

# with pip
pip install plan2eplus

plan2eplus provides an interface to EnergyPlus, making it easy to author EnergyPlus models. In order to run energy models on your device, you will need a local installation on EnergyPlus. You can download EnergyPlus here. Note: currently, plan2eplus has only been tested using EnergyPlus 22.1.

Usage

Below is a basic example of a workflow for creating a simple model with two adjacent rooms. For more examples, please refer to the (forthcoming) documentation.

from replan2eplus.ezcase.ez import EZ

from replan2eplus.ops.zones.user_interface import Room
from replan2eplus.geometry.domain import Domain
from replan2eplus.geometry.range import Range

# define geometry - all values are in meters
domain1 = Domain(horz_range=Range(0,1), vert_range=Range(0,1))
domain2 = Domain(horz_range=Range(1,2), vert_range=Range(0,1))
height = 3.00

# define rooms
room1 = Room(id=0, name="room1", domain1, height)
room2 = Room(id=1, name="room2", domain2, height)
rooms = [room1, room2]

# define the case
case = (
    EZ()
    .add_zones(rooms)
    .add_subsurfaces(SubsurfaceInputs(edge_groups, details), airboundary_edges)
    .add_constructions()
)

# run the case
case.save_and_run()

Contributing

Please contact jnwagwu@stanford.edu if you are interested in helping to make plan2eplus better!

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

plan2eplus-0.1.1.tar.gz (60.0 kB view details)

Uploaded Source

Built Distribution

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

plan2eplus-0.1.1-py3-none-any.whl (103.4 kB view details)

Uploaded Python 3

File details

Details for the file plan2eplus-0.1.1.tar.gz.

File metadata

  • Download URL: plan2eplus-0.1.1.tar.gz
  • Upload date:
  • Size: 60.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for plan2eplus-0.1.1.tar.gz
Algorithm Hash digest
SHA256 d4f0f4cecd885a34de48f09de8370535e85b281f81d00835cc6ce95f9ba851b2
MD5 2595d7deb77c1cfa444af23b05f2ae75
BLAKE2b-256 9615108b88e447bce27e0a0a5e6fe3f5f409eb32ebb5c88b0817ff5b661f937c

See more details on using hashes here.

File details

Details for the file plan2eplus-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: plan2eplus-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 103.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for plan2eplus-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f5ee155a14de67eff2c0f6138e8b01c749f50648880c8d07694dcb712dcfc293
MD5 7af3f9a7605c025c19afdd476c7ab97e
BLAKE2b-256 f82b7dac21ee3bb1fb08ad758d1c4b886a73d679efc0f6deabf194df690555ff

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