Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(v2.4.0) - Sinergym working with JSON instead of IDF to manage building models #340

Merged
merged 52 commits into from
May 26, 2023

Conversation

AlejandroCN7
Copy link
Member

@AlejandroCN7 AlejandroCN7 commented May 17, 2023

Description

This PR will adapt Sinergym to work with epJSON files instead of IDF files in building model's internal definition.

Motivation and Context

JSON is a universal format, better than use a specific format such as IDF. Moreover, Energyplus aims to work and support JSON over IDF.

  • I have raised an issue to propose this change (required for new features and bug fixes)

Why is this change required? What problem does it solve? Please, reference issue or issues opened previously.

Fixes #332

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation (update in the documentation)
  • Improvement (of an existing feature)
  • Others

Checklist:

  • I've read the CONTRIBUTION guide (required)
  • My change requires a change to the documentation.
  • I have updated the tests.
  • I have updated the documentation accordingly.
  • I have reformatted the code using autopep8 second level aggressive.
  • I have reformatted the code using isort.
  • I have ensured cd docs && make spelling && make html pass (required if documentation has been updated.)
  • I have ensured pytest tests/ -vv pass. (required).
  • I have ensured pytype -d import-error sinergym/ pass. (required)

Changelog (very general, see commits):

  • Equivalent epJSON files added in Sinergym, obtained from IDF adaptation. Deleted IDF old files
  • Config.py: Reformat config file in sinergym/config/modeling.py and updated for JSON new functionality, made the class method names more general.
  • Simulator and environment: Implemented a more generic structure. Adapted to JSON formart.
  • Adapted DDY model to eppy structure (opyplus is not case-sensitive, and it is required in JSON).
  • Common: Deleted functions that are not going to be used anymore, added eppy_to_dict function, taking care of some eppy bugs with json format.
  • Moved get_current_time_info from common to modeling module.
  • Adapted tests and documentation to these changes.
  • Fixed weekday in building files runperiod element.
  • Fixed sphinxcontrib-jquery extension version.

….building by json load, update adapt_idf_to_epw and save_building_model to save JSON file instead
@AlejandroCN7 AlejandroCN7 added the BackEnd Simulator and communication interface label May 17, 2023
@AlejandroCN7 AlejandroCN7 self-assigned this May 17, 2023
…SON methodology (Dictionary structure changes lightly)
…ect (this class will not be updated anymore)
…ite some adaptations to new json methodology
…names and schedulers getter improved with simulator properties
@AlejandroCN7 AlejandroCN7 marked this pull request as ready for review May 26, 2023 13:13
@AlejandroCN7 AlejandroCN7 merged commit df73dfd into main May 26, 2023
@AlejandroCN7 AlejandroCN7 deleted the feat/issue-332 branch May 26, 2023 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BackEnd Simulator and communication interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Enhancement]: Use JSON file in building models
1 participant