- Guide
for Module Developers
- Introduction
- Modules
in EnergyPlus
- What
is a module anyway?
- What
is a module developer?
- Adding new
features
- Input
Concepts
- Input
Data Dictionary
- Data
Dictionary Naming Conventions
- Input Data
File
- Input
Considerations
- Advanced
Input Considerations
- DataSets
- Module
Structure
- Module
Outline
- Module
Example
- Changing
existing code
- Considerations
for Legacy Codes
- Code
Readability vs. Speed of Execution
- How it
fits together
- EnergyPlus
Calling Structure
- Top
Level Calling Tree
- High
Level HVAC Calling Tree (schematic - not all routines are
shown)
- Air
System Calling Tree (schematic - not all routines are
shown)
- Plant
Calling Tree (schematic - not all routines are shown)
- Zone
Equipment Calling Tree (schematic - not all routines are
shown)
- Inserting
the New Module into the Program
- HVAC
Network
- Branches,
Connectors, and Nodes
- Nodes
in the simulation
- Getting
Nodes
- Data
Flow in an HVAC Component Module
- Interfacing
with Plant
- Node
Mass Flow Variables
- EnergyPlus
Services
- Utility
Routines/Functions
- Input
Services
- Object
Services
- Branch
& Node Checking and Services
- Schedule
Services
- Data
Services
- Other
Useful Utilities
- Error
Messages
- Display
Strings
- Performance
Curve Services
- Fluid
Property Services
- Weather
Services
- Global
Data: Flags and Parameters
- Psychrometric
services
- PsyRhoAirFnPbTdbW
(Pb,Tdb,W,calledfrom)
- PsyCpAirFnWTdb
(W,Tdb,calledfrom)
- PsyHfgAirFnWTdb
(W,Tdb,calledfrom)
- PsyHgAirFnWTdb
(W,Tdb,calledfrom)
- PsyTdpFnTdbTwbPb
(Tdb,Twb,Pb,calledfrom)
- PsyTdpFnWPb
(W,Pb,calledfrom)
- PsyHFnTdbW
(Tdb,W,calledfrom)
- PsyHFnTdbRhPb
(Tdb,Rh,Pb,calledfrom)
- PsyTdbFnHW
(H,W,calledfrom)
- PsyRhovFnTdbRh
(Tdb,Rh,calledfrom)
- PsyRhovFnTdbWP
(Tdb,W,Pb,calledfrom)
- PsyRhFnTdbRhov
(Tdb,Rhov,calledfrom)
- PsyRhFnTdbWPb
(Tdb,W,Pb,calledfrom)
- PsyTwbFnTdbWPb
(Tdb,W,Pb,calledfrom)
- PsyVFnTdbWPb
(Tdb,W,Pb,calledfrom)
- PsyWFnTdpPb
(Tdp,Pb,calledfrom)
- PsyWFnTdbH
(Tdb,H,calledfrom)
- PsyWFnTdbTwbPb
(Tdb,Twb,Pb,calledfrom)
- PsyWFnTdbRhPb
(Tdb,Rh,Pb,calledfrom)
- PsyPsatFnTemp
(T,calledfrom)
- PsyTsatFnHPb
(H,Pb,calledfrom)
- PsyTsatFnPb
(P,calledfrom)
- CPCW
(Temp,calledfrom)
- CPHW
(Temp,calledfrom)
- CVHW
(Temp,calledfrom)
- RhoH2O
(Temp,calledfrom)
- Tabular
Output Utilities
- Internal
Zone Gains Services
- Output
- How
Do I Output My Variables?
- Output
Variable Dos and Don’ts
- Energy
Management System
- EMS
Actuator Interface
- Running/Testing
EnergyPlus - for Developers
- Environment
Variables to Assist Running
- Air
Loop Simulation Environment Variables
- Quick
Procedure Outline For Making Code Changes to
EnergyPlus
- Important
Rules for Module Developers
- Appendix
A. DataGlobals and DataEnvironments Modules
- DataGlobals
- DataEnvironment
- Appendix
B. Submissions and Check-ins
- Appendix
C. Documentation Specifics
- Appendix
D. Module, Subroutine, Function Templates
- Appendix
E. Test File Documentation
- Appendix
F. New or Changed Proposal Feature Template
Copyright © 2009-2026 Big Ladder Software LLC. All rights reserved. The Big Ladder name and logo are trademarks of Big Ladder Software LLC.