Skip to main content

Hybrid Electric and Heat Panel Model

Project description

FirstPVTModel

2D model for a PVT system.

Model basics.

The model can be run as a python module from the command-line interface. The model exposes:

  • an overall method, for running the entire model including analysis;
  • an analysis module, which can be executed to run the figure generation only;
  • and an enforcement module.

The model aims to simulate the running of an integrated PV-T, hot-water, and load system. The system modelled consists of a PV-T panel component, a hot-water tank, and a system for simulating the demands placed on the system by the end user.

Running the Model

The model can be executed with python3.7 from a command line by calling: python3.7 -m pvt_model.

The model can be run as a decoupled panel or as an integrated (coupled) system.

For running the model, the following CLI arguments are required as a minimum:

  • --initial-month <month_number> - Specifies the month for which weather data should be used.
  • --location <location_folder> - Specifies the location-related information. For an example location, see the system_data/london folder.
  • --portion-covered <0-1> - Must be used to specify the portion of the panel which is covered with PV cells.
  • --pvt-data-file <pv_data_file.yaml> - The PV-T data YAML file must be specified.
  • --output <extension-independent output file name> - The name of the output file, to which data should be saved, independent of file extension, should be specified.

For running the model as a stand-alone (decoupled) panel, the following requirements are required as an addition to the minimum above:

  • --decoupled --steady-state - Must be used to specify that the run is decoupled and steady-state.
  • --steady-state-data-file <steady-state system data file> - Information about the runs that should be conducted needs to be specified.
  • --x-resolution <int> - Specifies the number of elements to use in the x-direction.
  • --y-resolution <int> - Specifies the number of elements to use in the y-direction.

For running the model as an integrated (coupled) panel, the following requirements are required as an addition to the minimum above:

  • --dynamic - Must be used to specifiy that the run is coupled and dynamic.
  • --exchanger-data-file <exchanger_data_file.yaml> - Must be used to specify the YAML data file for the heat exchanger.
  • --resolution <int> - The temporal resolution to use for the model.
  • --tank-data-file <tank_data_file.yaml> - Must be used to specify the YAML data file for the hot-water tank.

For ease of use, the following command-line arguments are recommended when conducting a dynamic and coupled run:

  • --average-irradiance - Stipulates that an average irradiance profile for the month must be used.
  • --start-time <int> - The start time, in hours from midnight, for which to run the simularion. 0 is the default;

For help with the arguments needed in order to run the model, use the inbuilt help display: python3.7 -m pvt_model --help.

NOTE: If you receive a KeyError: <int> on the command-line, it is likely that the argument --average-irradiance must be used. This is because solar-irradiance profiles are missing for certain days, and the command must be used to average over those profiles which are specified.

Running the Analysis Module

The analysis module can also be run from the command-line interface. This should be executed as a python module: py -m pvt_model.analysis -df <output_file_path_with_extension>.

Creating a Pull Request

All pull requests need to be approved by a repository administrator and need to pass a series of automated tests.

To confirm that your code will pass, run the scritp test-pvt-model.sh from the root of the repository to ensure that your code confirms to the standards required of the repository (regarding formatting and type annotations etc.), that all automated tests are passing, and that all type: ignore and pylint: disable flags are dedclared.

HPC Support

NOTE: Support is included to run the model on Imperial's high-performance computing (HPC) system. Scripts for deploying runs are located in the scripts directory. This directory can be safely ignored when deploying the model on a home-PC setup.

Copyright

Copyright Benedict Winchester, 2021

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

heatpanel-1.1.0.tar.gz (105.9 kB view details)

Uploaded Source

Built Distribution

heatpanel-1.1.0-py3-none-any.whl (149.0 kB view details)

Uploaded Python 3

File details

Details for the file heatpanel-1.1.0.tar.gz.

File metadata

  • Download URL: heatpanel-1.1.0.tar.gz
  • Upload date:
  • Size: 105.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.5.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.7.3

File hashes

Hashes for heatpanel-1.1.0.tar.gz
Algorithm Hash digest
SHA256 9a8775eaa353d5e6014e5a5a8118ab3b5c7781d7c64b74d3e14a5c7045689b47
MD5 a52242c34da9cfbc1e84be70c441c0c5
BLAKE2b-256 58a32823451dbf3f46406c694419c063b053dc58f977d1c477d2e53bbfc00140

See more details on using hashes here.

File details

Details for the file heatpanel-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: heatpanel-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 149.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.5.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.7.3

File hashes

Hashes for heatpanel-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc740bbd771ed503226b70e18a2faa7afae076b9cab4732a52853ee09f3b5fcd
MD5 004fdf242e3942f35e32d7e2182144a6
BLAKE2b-256 9fb6ac29782842480633ac1d4c74562a1801e3e12c9e72ee8f741e41de889868

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page