Home

Awesome

DibsDataSourceCSV

Overview

This repository contains a set of utilities utils and a Python file named datasource_csv. The primary purpose of datasource_csv is to provide functionality for handling Excel and CSV files, performing calculations on data and returning objects as results. DataSourceCSV implements the DataSource interface defined in another module called dibs_computing_core. Both packages are part of Python non-domestic building simulation program called 'Dynamic ISO Building Simulator' or short DIBS.

File Structure

Arguments:

Usage

To use the functionalities provided by this repository, follow these steps:

  1. Installation: Use pip to install the module. This will automatically install the required dependencies mentioned in pyproject.toml.

    pip install dibs_datasource_csv
    

    To use the full DIBS model it is recommended to install the DibsCLI bundling the DibsComputingCore, DibsDataSourceCSV and the DibsData. To install the DIBS Command Line Interface (DibsCLI) use the following command:

    pip install dibs_cli
    
  2. Importing DatasourceCSV: You can import and use the DataSourceCSV class directly from the terminal or any Python environment.

    python
    
    from dibs_computing_core.iso_simulator.dibs.dibs import DIBS
    from dibs_datasource_csv.datasource_csv import DataSourceCSV
    import dibs_data
    
  3. Performing Simulation: Use the methods provided in dibs class (calculate_result_of_one_building or multi) to perform calculations on your data. The method calculate_result_of_one_building simulates one building and multi simulates multiple building simultaneously for more performance.

    # Example usage
    datasource_csv = DataSourceCSV(path="path_to_your_data", "din18599", "mid", "sia2024", "2007-2021") or 
    datasource_csv = DataSourceCSV(path="path_to_your_data", profile_from_norm="din18599", gains_from_group_values="mid", usage_from_norm="sia2024", weather_period="2007-2021")
    
    dibs = DIBS(datasource_csv)
    
    simulation_time, result_of_all_hours, summary_result = dibs.calculate_result_of_one_building()
    
    # To see the hourly result of the simulated building
    print(result_of_all_hours)
    
    # To see the summary result of the simulated building
    print(summary_result)
    

Further information

For a detailed installation guide and further information on DIBS see the wiki and the DIBS Project Page.

How to cite

Please cite the Dynamic ISO Building Simulator (DIBS) as defined here.

Legacy

The current Dynamic ISO Building Simulator (DIBS) is a PyPI package implementation of the initial DIBS implementation by Julian Bischof, Simon Knoll and Michael Hörner.

Contributing

Contributions to this repository are welcome. If you find any bugs, have feature requests, or want to contribute enhancements, feel free to open an issue or submit a pull request.

License

This repository is licensed under the MIT License. Feel free to use, modify, and distribute the code as per the terms of this license.

Acknowledgement

The Dynamic ISO Building Simulator has been developed in context of the 'ENOB:DataNWG Forschungsdatenbank Nichtwohngebäude' (www.datanwg.de) project and the project 'FlexGeber - Demonstration of flexibility options in the building sector and their integration with the energy system in Germany' at Institut Wohnen und Umwelt (IWU), Darmstadt. The preparation of the publication as a Python package on Pypi was undertaken within the EnOB:LezBAU project, where the DIBS model provides the basis for the calculation of the operational energy within the LezBAU web tool.

<p float="left"> <img src="https://github.com/IWUGERMANY/DibsComputingCore/blob/main/src/img/IWU_Logo.PNG" width="15%" /> </p>

<b>ENOB:DataNWG<b> <b>Funding code:</b> Fkz.: 03ET1315
<b>Project duration:</b> 01.12.2015 until 31.05.2021

<b>FlexGeber<b> <b>Funding code:</b> Fkz.: 03EGB0001
<b>Project duration:</b> 01.10.2017 until 31.07.2022

<b>ENOB:LezBAU<b> <b>Funding code:</b> Fkz.: 03EN1074A </br><b>Project duration:</b> 01.01.2023 until 31.12.2025

<b>All funded by:</b>

<p float="left"> <img src="https://github.com/IWUGERMANY/DibsComputingCore/blob/main/src/img/BMWi_Logo.png" width="30%" /> </p> in accordance with the parliamentary resolution of the German Parliament.