Recent Releases of opendsm
opendsm - v1.2.7
Release v1.2.7
Overview
This release brings significant improvements to OpenDSM's clustering methodology, modernizes the build system, and integrates comparison group functionality although it is not currently documented or exposed cleanly through the API.
New Features
Enhanced Clustering with Multi-Metric Voting System
- Clustering Revision - Introduced a new voting system that evaluates multiple clustering indices to determine optimal cluster configurations (#580)
- Supports voting between various clustering quality metrics
- Improves cluster selection reliability and robustness
- Adds comprehensive tests for the new clustering methodology
Comparison Groups
- Comparison Group Functionality - Integrated Comparison Groups into OpenDSM, providing basic access to comparison groups (#577)
- Consolidates clustering methodology across systems
- Currently undocumented code and we still need to develop API for user ease-of-use
- Includes 176 commits of GRIDmeter codebase integration
Improvements
Build System Modernization
- Migration to pyproject.toml - Replaced deprecated
setup.pywith modernpyproject.tomlconfiguration (#566)- Switched to
uvpackage manager for improved dependency management - Addresses Docker build deprecation warnings (setup.py support ending Oct 2025)
- Updated Dockerfile to use
uv pip compileanduv pip install
- Switched to
Bug Fixes
- Example Data Fix - Corrected temperature values in example data that were accidentally modified (#575)
- Clustering Bug Fixes - Various refinements and bug fixes in clustering implementation
- Dependency Updates - Fixed and updated project dependencies
Testing
- Added new tests for clustering voting system
- Enhanced test coverage for clustering methodology
- Updated test platforms and configurations
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.2.6...v1.2.7
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 4 months ago
opendsm - v1.2.6
What's Changed
- Fixed bug in
from_seriesinstantiation of daily data class by @travis-recurve in https://github.com/opendsm/opendsm/pull/565
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.2.5...v1.2.6
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 10 months ago
opendsm - v1.2.5
What's Changed
- Expose SpectralClustering's assign_labels options.
discretizeandcluster_qrare not always deterministic with seed so for regression testingkmeansis suggested by @travis-recurve in https://github.com/opendsm/opendsm/pull/564 - Added more metrics to BaselineMetrics by @travis-recurve in https://github.com/opendsm/opendsm/pull/564
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.2.4...v1.2.5
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 10 months ago
opendsm - v1.2.4
What's Changed
- Added seeding to spectral clustering by @travis-recurve in https://github.com/opendsm/opendsm/pull/560
- Fixed bug where seed was not being propagated to clustering settings by @travis-recurve in https://github.com/opendsm/opendsm/pull/560
- New model metrics by @travis-recurve in https://github.com/opendsm/opendsm/pull/561
- Changed failed model metrics to be nan rather than None by @travis-recurve in https://github.com/opendsm/opendsm/pull/561
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.2.2...v1.2.3
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 11 months ago
opendsm - v1.2.2
What's Changed
- Fixed daily model not using adjusted normalized metrics by @travis-recurve in https://github.com/opendsm/opendsm/pull/559
- Ensure the autocorrelation function usage is consistent by @travis-recurve in https://github.com/opendsm/opendsm/pull/559
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.2.1...v1.2.2
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 11 months ago
opendsm - v1.2.1
What's Changed
- Revert how autocorr is calculated by @canchola-recurve in https://github.com/opendsm/opendsm/pull/558
New Contributors
- @canchola-recurve made their first contribution in https://github.com/opendsm/opendsm/pull/558
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.2.0...v1.2.1
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 11 months ago
opendsm - v1.2.0
What's Changed
- Add hourly model uncertainty by @travis-recurve in https://github.com/opendsm/opendsm/pull/553
- Daily and billing models now use BaselineMetrics natively by @travis-recurve in https://github.com/opendsm/opendsm/pull/554
- Data sufficiency can now be modified using a settings dictionary for R&D purposes by @travis-recurve in https://github.com/opendsm/opendsm/pull/555
- Migrate to modern logger interface by @emmanuel-ferdman in https://github.com/opendsm/opendsm/pull/551
New Contributors
- @emmanuel-ferdman made their first contribution in https://github.com/opendsm/opendsm/pull/551
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.1.0...v1.2.0
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve 11 months ago
opendsm - v1.1.0
What's Changed
Hourly Model
- disallow negative cvrmse in hourly model
- added temp_bin/cluster/temp interaction
- updating clustering
- updating hourly settings and adding clustering
- clustering sort update
- adaptive robust elasticnet
- added fixed temperature bins
- extreme temperature bin settings update
- modified temporal_cluster code
Daily Model
- added daily CVRMSE >= 0 and PNRMSE pass for sufficiency
- fixing broken tests and making daily model use baseline_metrics
- updating daily model settings to no longer use model_fields on instantiated class
Miscellaneous
- revised adaptive loss penalization
- modified extreme value flag to be based on IQR rule
- ignores numpy warnings when dividing by zero and returns a NaN instead by @ssuffian in https://github.com/opendsm/opendsm/pull/549
- fixes the warning data to only inculde invalid temperature rows by @ssuffian in https://github.com/opendsm/opendsm/pull/548
- update README.md by @travis-recurve in https://github.com/opendsm/opendsm/pull/546
Full Changelog: https://github.com/opendsm/opendsm/compare/v1.0.0...v1.1.0
Energy Systems - Building Energy Monitoring
- Python
Published by travis-recurve about 1 year ago
opendsm - v4.1.1
What's Changed
- Add GHI sufficiency check requiring 90% coverage for each month by @jason-recurve in https://github.com/opendsm/eemeter/pull/538
- Add weights to daily model by @travis-recurve in https://github.com/opendsm/eemeter/pull/536
- Feature/adaptive hourly fit by @travis-recurve in https://github.com/opendsm/eemeter/pull/539
Full Changelog: https://github.com/opendsm/eemeter/compare/v4.1.0...v4.1.1
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve over 1 year ago
opendsm - v4.0.7
What's Changed
- Bump version by @keasey-recurve in https://github.com/openeemeter/eemeter/pull/511
- Update README.rst by @travis-recurve in https://github.com/openeemeter/eemeter/pull/512
- Handle ambiguous and nonexistent local times by @jason-recurve in https://github.com/openeemeter/eemeter/pull/515
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.6...v4.0.7
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve over 1 year ago
opendsm - v4.0.6
What's Changed
- Update docs by @keasey-recurve in https://github.com/openeemeter/eemeter/pull/509
- Add working directory to gh action by @keasey-recurve in https://github.com/openeemeter/eemeter/pull/510
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.5...v4.0.6
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve over 1 year ago
opendsm - v4.0.8
What's Changed
- Add platform to docker-compose for nlopt wheel by @ssuffian in https://github.com/openeemeter/eemeter/pull/519
- Fixed issue with docs build by pinning old version of griffe by @ssuffian in https://github.com/openeemeter/eemeter/pull/522
- Constrain balance point on T_min_seg and T_max_seg by @ssuffian in https://github.com/openeemeter/eemeter/pull/520
- have HourlyBaselineData/HourlyReportingData where is_electricity=True NaN zero rows by @ssuffian in https://github.com/openeemeter/eemeter/pull/523
- Ensures the model.warnings/model.disqualification fields exist across both models by @ssuffian in https://github.com/openeemeter/eemeter/pull/526
- Fix hourly metrics deserialization by @ssuffian in https://github.com/openeemeter/eemeter/pull/527
- Handle ambiguous and nonexistent local times when creating billing data by @jason-recurve in https://github.com/openeemeter/eemeter/pull/517
- Add case for when all observations are identical by @ssuffian in https://github.com/openeemeter/eemeter/pull/521
- fix linear fit bug by @travis-recurve in https://github.com/openeemeter/eemeter/pull/529
- Update to avoid FutureWarnings and DeprecationWarnings by @ssuffian in https://github.com/openeemeter/eemeter/pull/525
- Add github action for publishing to PyPi by @jason-recurve in https://github.com/openeemeter/eemeter/pull/530
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.7...v4.0.8
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve over 1 year ago
opendsm - v4.0.5
What's Changed
- Flip slope when deserializing legacy hdd_only models
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.4...v4.0.5
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve almost 2 years ago
opendsm - v4.0.4
What's Changed
- Fix issues with legacy model deserialization
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.3...v4.0.4
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve almost 2 years ago
opendsm - v4.0.3
What's Changed
- Move masking behavior for rows with missing temperature from reporting dataclass to prediction output
- Add disqualification check to billing model predict()
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.2...v4.0.3
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve almost 2 years ago
opendsm - v4.0.2
What's Changed
- Point test data to correct branch
- Fix issues with datetimeindex
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.1...v4.0.2
Energy Systems - Building Energy Monitoring
- Python
Published by jason-recurve almost 2 years ago
opendsm - v4.0.1
What's Changed
- Correct dataframe input behavior and final row temperature aggregation
- Remove unnecessary datetime normalization in order to respect hour of day
- Convert timestamps in certain warnings to strings to allow serialization
- Allow configuration of segment_type in HourlyModel wrapper
Full Changelog: https://github.com/openeemeter/eemeter/compare/v4.0.0...v4.0.1
Energy Systems - Building Energy Monitoring
- Python
Published by joydeep-recurve about 2 years ago
opendsm - v4.0.0
What's Changed
- Update daily model methods, API, and serialization
- Provide new API for hourly model to match daily syntax and prepare for future additions
- Add baseline and reporting dataclasses to support compliant initialization of meter and temperature data
Full Changelog: https://github.com/openeemeter/eemeter/compare/v3.2.0...v4.0.0
Energy Systems - Building Energy Monitoring
- Python
Published by joydeep-recurve about 2 years ago
opendsm - OpenEEmeter v1.0.0 Release notes
Welcome to the OpenEEmeter. This fully documented and supported release provides libraries for calculating monthly and daily weather-normalized metered energy savings. It reflects the official guidance of the CalTRACK methods specification and can be used to generate CalTRACK compliant savings estimates.
This official release of the OpenEEmeter is designed for analysts who want to quickly calculate weather-normalized metered energy savings. An enhanced data formatter and loader along with standard outputs have allowed us to deprecate the ETL library and Datastore application associated with the alpha releases of the OpenEEmeter.
You may download and use the OpenEEmeter with no restrictions or licensing fees. You can run meters locally, deploy it on your own servers, or wrap it into a larger application. We’d love to hear about your ideas for using it.
While the OpenEEmeter is generally pretty amazing, there are some things that it can’t do yet. We’re counting on Elon Musk for most of those things. In the meantime, feel free to let us know how we can improve it.
Energy Systems - Building Energy Monitoring
- Python
Published by philngo almost 9 years ago