Skip to content
Open
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
93fe589
Add action and very first draft of the paper.
lymereJ Apr 4, 2024
0851c9f
Fix typo.
lymereJ Apr 4, 2024
95e88d1
Fix references.
lymereJ Apr 4, 2024
fdf851b
Minor typos.
lymereJ Apr 4, 2024
c83f341
Fix typo and add Julian's ORCID.
lymereJ Apr 26, 2024
ee21b7f
jxl mods
leijerry888 May 28, 2024
42cf3e0
address comments
leijerry888 Jun 18, 2024
33e62a0
fix ref typo
leijerry888 Jun 18, 2024
80e766e
paper update
leijerry888 Aug 7, 2024
6e6f846
typo fix
leijerry888 Aug 7, 2024
2a2da22
update paper contents based on reviewer comments
leijerry888 Jul 28, 2025
5335b5a
remove mac file
leijerry888 Jul 28, 2025
c804422
add back authors
leijerry888 Jul 28, 2025
4e3be02
Update paper.md
yanchenpnnl Jul 29, 2025
48c33e6
Merge branch 'develop' into joss_paper
lymereJ Jul 29, 2025
19036ad
Update GH action to create JOSS paper.
lymereJ Jul 29, 2025
32050a0
Merge branch 'joss_paper' into joss_paper_rev
lymereJ Jul 29, 2025
6007164
address jl comments
leijerry888 Jul 31, 2025
5ae6b2a
update bib
leijerry888 Aug 1, 2025
b9a5c16
paper revision wip
leijerry888 Feb 2, 2026
bfcc795
Fix citation in JOSS paper
AdamRJensen Feb 16, 2026
2d5fc29
Add report number and url to and change report to techreport
AdamRJensen Feb 16, 2026
025c3f3
Merge pull request #109 from AdamRJensen/patch-1
leijerry888 Feb 19, 2026
e5742ff
revise draft based on comments in https://github.com/openjournals/jos…
leijerry888 Feb 20, 2026
530f20b
add contract no in aknowledgement
leijerry888 Feb 20, 2026
84dfd63
Merge branch 'develop' into joss_paper
leijerry888 Feb 20, 2026
b0ab04e
Merge pull request #110 from AdamRJensen/patch-2
leijerry888 Feb 20, 2026
51f5e4d
add doi per request
leijerry888 Feb 24, 2026
7b7ec01
add doi for openstudio
leijerry888 Feb 24, 2026
2acc770
Merge pull request #115 from pnnl/add_doi
leijerry888 Feb 25, 2026
e54488c
Merge branch 'joss_paper_rev' into joss_paper
leijerry888 Mar 31, 2026
9fb0fb4
add footnote for Fan
leijerry888 Mar 31, 2026
6b86e38
save bib
leijerry888 Mar 31, 2026
149204e
update paper after int review
leijerry888 Apr 7, 2026
9c5b6ff
update refs
leijerry888 Apr 7, 2026
6ad222e
modify based on Jeremy feedback
leijerry888 Apr 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
on: [push]

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: ./docs/paper.md
- name: Upload
uses: actions/upload-artifact@v1
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: ./docs/paper.pdf
41 changes: 41 additions & 0 deletions docs/paper.bib
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
@misc {90.1,
title={ANSI/ASHRAE/IES 90.1-2019, Energy Standard for Buildings Except Low-Rise Residential Buildings},
author={{ASHRAE}},
organization={ASHRAE},
institution={ASHRAE},
address={Atlanta, GA},
year={2019}
}

@misc{tspr,
title={TSPR Washington State Analysis Tool},
author={{Pacific Northwest National Laboratory}},
howpublished={\url{https://energycode.pnl.gov/HVACSystemPerformance/}},
note={Accessed: 2024-04-044}
}

@report{impl_ctrl,
title={Implementation of Energy Code Controls Requirements in New Commercial Buildings},
author={{Rosenberg, M.I., P.R. Hart, M. Hatten, D. Jones, and M. Cooper}},
year={2017}
}

@report{impa_ctrl,
title={Impacts of commercial building controls on energy savings and peak load reduction},
author={{Fernandez, Nicholas EP, et al.}},
year={2017}
}

@misc{os,
title={OpenStudio},
author={{National Renewable Energy Laboratory, Argonne National Laboratory, Lawrence Berkeley National Laboratory, Oak Ridge National Laboratory, Pacific Northwest National Laboratory}},
howpublished={\url{https://openstudio.net/}},
note={Accessed: 2024-04-04}
}

@misc{osm,
title={OpenStudio SDK User Docs: Getting Started - About Measures},
author={{National Renewable Energy Laboratory, Argonne National Laboratory, Lawrence Berkeley National Laboratory, Oak Ridge National Laboratory, Pacific Northwest National Laboratory}},
howpublished={\url{https://nrel.github.io/OpenStudio-user-documentation/getting_started/about_measures/}},
note={Accessed: 2024-05-28}
}
53 changes: 53 additions & 0 deletions docs/paper.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
title: 'Control Strainer (ConStrain): a data-driven control verification framework'
tags:
- python
- energy
- building
- control
- simulation
- hvac
authors:
- name: Xuechen Lei
orcid: 0000-0003-3310-9750
affiliation: 1
- name: Jérémy Lerond
orcid: 0000-0002-1630-6886
affiliation: 1
- name: Yun Joon Jung
orcid: 0000-0003-1311-8932
affiliation: 1
- name: Julian Slane-Holloway
orcid: 0009-0008-9572-9123
affiliation: 1
Comment thread
lymereJ marked this conversation as resolved.
- name: Fan Feng
orcid: 0000-0002-6230-0063
affiliation: 1
- name: Yan Chen
orcid: 0000-0002-2988-9136
affiliation: 1

affiliations:
- name: Pacific Northwest National Laboratory, Richland, WA, USA
index: 1
date: 28 May 2024
bibliography: paper.bib
---

# Summary

The Control Strainer, or `ConStrain`, is a python-based framework that can be used by energy modelers, building engineers, and researchers to conduct consistent and automated verification of building system controls using either timeseries generated from whole-building energy simulations or from actual building automation system trend data. `ConStrain` is made of two distinct components: an expandable control verification algorithms library, and a standardized performance evaluation and reporting workflow framework. At its roots, `ConStrain`'s verification library was developed with the verification of control related building energy code requirements in mind, but it is built such that its library is expandable and can cover user-customized control verifications.

# Statement of need

Advances in building control have shown significant potential for improving building energy performance and decarbonization. Studies show that designs utilizing optimized controls that are properly tuned could cut commercial building energy consumption by approximately 29% - equivalent to 4-5 Quads, or 4-5% of the energy consumed in the United States [@impa_ctrl]. Driven by the significant control-related energy-saving potential, commercial building energy codes (such as American Society of Heating, Refrigerating and Air-Conditioning Engineers (ASHRAE) 90.1 [@90.1]) have progressed with many control-related addenda. For example, from the publication of 90.1-2004 to 90.1-2016 (four code cycles), 30% of the new requirements are related to building control (with most of them focused on Heating, Ventilation, and Air Conditioning (HVAC) system control) [@impl_ctrl].

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should probably use commercial building energy codes and standards instead of just commercial building energy codes.


However, one of the challenges to realizing those savings is the correct implementation of such advanced control strategies and regularly verifying their actual operational performance. A field study found that only 50% of systems observed have their control system correctly configured to meet the energy codes requirement, and control-related compliance verification is typically not included in the commissioning scope. Current control verification is often conducted manually, which is time-consuming, ad-hoc, incomplete, and error-prone.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@leijerry888 - Missing reference?


`ConStrain` can be used as a standalone tool and, with its Python Application Programming Interface (API), can also be integrated into established workflows of third-party tools and practices. For instance, `ConStrain` has been successfully integrated as part of the continuous integration software development process of whole-building energy simulation-based software tool (e.g., Washington State's Total System Performance Ratio Analysis Tool [@tspr]) to make sure that software code contributions as well as simulation software updates do not have unexpected impacts on the simulated performance of building system controls. Moreover, a set of `OpenStudio` [@os] measures [@osm] have also been developed to enable building energy modelers using `OpenStudio` to have access to perform verification on their models with minimal configurations required.

# Acknowledgements

ConStrain was developed at the Pacific Northwest National Laboratory and was funded under contract with the U.S. Department of Energy (DOE). It is actively being developed as an open-source project.

# References