diff --git a/CHANGELOG.md b/CHANGELOG.md index 2348e5bb0..609e6327c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,12 +6,38 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased/Snapshot] +### Added +- Enhancing `VoltageLevel` with `equals` method [#1063](https://github.com/ie3-institute/PowerSystemDataModel/issues/1063) +- `ConnectorValidationUtils` checks if parallel devices is > 0 [#1077](https://github.com/ie3-institute/PowerSystemDataModel/issues/1077) +- `GridContainerValidationUtils` checks the connectivity for all defined operation time intervals [#1091](https://github.com/ie3-institute/PowerSystemDataModel/issues/1091) +- Implemented a `CongestionResult` [#1097](https://github.com/ie3-institute/PowerSystemDataModel/issues/1097) + +### Fixed +- Fixed `MappingEntryies` not getting processed by adding `Getter` methods for record fields [#1084](https://github.com/ie3-institute/PowerSystemDataModel/issues/1084) + +### Changed +- Improvements to the search for corner points in `IdCoordinateSource` [#1016](https://github.com/ie3-institute/PowerSystemDataModel/issues/1016) +- Refactor `CsvFileConnector` and `CsvDataSource` [#1007](https://github.com/ie3-institute/PowerSystemDataModel/issues/1007) + + +## [5.0.1] - 2024-03-07 + +### Fixed +- Fixed `equals` of `ResultEntity` and `TimeSeriesEntry` [#1037](https://github.com/ie3-institute/PowerSystemDataModel/issues/1037) +- Fixed "depth of discharge" in documentation [#872](https://github.com/ie3-institute/PowerSystemDataModel/issues/872) + +## [5.0.0] - 2024-03-06 + ### Added - Formatting Spotless Groovy import order [#960](https://github.com/ie3-institute/PowerSystemDataModel/issues/960) - Implementing missing typical methods in `Try` [#970](https://github.com/ie3-institute/PowerSystemDataModel/issues/970) - Added log warning when using `SwitchInputs` with `parallelDevices` parameter [#840](https://github.com/ie3-institute/PowerSystemDataModel/issues/840) - Validation for `EvcsInput` [#1000](https://github.com/ie3-institute/PowerSystemDataModel/issues/1000) - Scaling method in system participant copy builders [#1011](https://github.com/ie3-institute/PowerSystemDataModel/issues/1011) +- Added separate field for maximum power limit for DC to evtype [#876](https://github.com/ie3-institute/PowerSystemDataModel/issues/876) +- Added test for invalid input data in `CsvRawGridSource` [#1021](https://github.com/ie3-institute/PowerSystemDataModel/issues/1021) +- Added `CsvThermalGridSource` [#1009](https://github.com/ie3-institute/PowerSystemDataModel/issues/1009) +- Enhance documentation for CSV timeseries [#825](https://github.com/ie3-institute/PowerSystemDataModel/issues/825) ### Fixed - Fixed Couchbase integration tests that randomly failed [#755](https://github.com/ie3-institute/PowerSystemDataModel/issues/755) @@ -20,6 +46,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Fixed thermal-house-documentation [#873](https://github.com/ie3-institute/PowerSystemDataModel/issues/873) - Fixed ElectricVehicle Documentation [#875](https://github.com/ie3-institute/PowerSystemDataModel/issues/875) - Fixed Equal behavior of `ConnectorResult` [#1001](https://github.com/ie3-institute/PowerSystemDataModel/issues/1001) +- Fixed test for invalid input data in `CsvGraphicSource` [#1022](https://github.com/ie3-institute/PowerSystemDataModel/issues/1022) ### Changed - Changing from comparing strings to comparing uuids in `EntitySource.findFirstEntityByUuid` [#829](https://github.com/ie3-institute/PowerSystemDataModel/issues/829) @@ -35,6 +62,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Updated contributing.md [#737](https://github.com/ie3-institute/PowerSystemDataModel/issues/737) - Don't throw exceptions for not yet implemented validations [#879](https://github.com/ie3-institute/PowerSystemDataModel/issues/879) - `CsvDataSource` throws exceptions on error [#954](https://github.com/ie3-institute/PowerSystemDataModel/issues/954) +- Removing `uuid` as required column from input and result time series [#826](https://github.com/ie3-institute/PowerSystemDataModel/issues/826) +- Removing the support for the old csv format that was marked `deprecated` back in version `1.1.0` [#795](https://github.com/ie3-institute/PowerSystemDataModel/issues/795) +- BREAKING: Updating PowerSystemUtils dependency to 2.2 [#1006](https://github.com/ie3-institute/PowerSystemDataModel/issues/1006) ## [4.1.0] - 2023-11-02 @@ -262,7 +292,9 @@ coordinates or multiple exactly equal coordinates possible - CsvDataSource now stops trying to get an operator for empty operator uuid field in entities - CsvDataSource now parsing multiple geoJson strings correctly -[Unreleased/Snapshot]: https://github.com/ie3-institute/powersystemdatamodel/compare/4.1.0...HEAD +[Unreleased/Snapshot]: https://github.com/ie3-institute/powersystemdatamodel/compare/5.0.1...HEAD +[5.0.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/5.0.0...5.0.1 +[4.1.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/4.1.0...5.0.0 [4.1.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/4.0.0...4.1.0 [4.0.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/3.0.0...4.0.0 [3.0.0]: https://github.com/ie3-institute/powersystemdatamodel/compare/2.1.0...3.0.0 diff --git a/build.gradle b/build.gradle index 12d31457b..019499ddd 100644 --- a/build.gradle +++ b/build.gradle @@ -5,11 +5,11 @@ plugins { id 'signing' id 'pmd' // code check, working on source code id 'com.diffplug.spotless' version '6.25.0' //code format - id 'com.github.spotbugs' version '6.0.7' // code check, working on byte code - id 'de.undercouch.download' version '5.5.0' + id 'com.github.spotbugs' version '6.0.16' // code check, working on byte code + id 'de.undercouch.download' version '5.6.0' id 'kr.motd.sphinx' version '2.10.1' // documentation generation id 'jacoco' // java code coverage plugin - id "org.sonarqube" version "4.4.1.3373" // sonarqube + id "org.sonarqube" version "5.0.0.4638" // sonarqube id 'net.thauvin.erik.gradle.semver' version '1.0.4' // semantic versioning } @@ -17,8 +17,8 @@ ext { //version (changing these should be considered thoroughly!) javaVersion = JavaVersion.VERSION_17 groovyVersion = "4.0" - groovyBinaryVersion = "4.0.18" - testcontainersVersion = '1.19.5' + groovyBinaryVersion = "4.0.21" + testcontainersVersion = '1.19.8' scriptsLocation = 'gradle' + File.separator + 'scripts' + File.separator //location of script plugins } @@ -53,7 +53,7 @@ repositories { dependencies { // ie³ power system utils - implementation 'com.github.ie3-institute:PowerSystemUtils:2.0' + implementation 'com.github.ie3-institute:PowerSystemUtils:2.2.1' implementation 'tech.units:indriya:2.2' @@ -72,8 +72,8 @@ dependencies { testImplementation 'org.junit.jupiter:junit-jupiter:5.10.2' testImplementation "org.spockframework:spock-core:2.3-groovy-$groovyVersion" - testImplementation 'org.objenesis:objenesis:3.3' // Mock creation with constructor parameters - testImplementation 'net.bytebuddy:byte-buddy:1.14.12' // Mocks of classes + testImplementation 'org.objenesis:objenesis:3.4' // Mock creation with constructor parameters + testImplementation 'net.bytebuddy:byte-buddy:1.14.17' // Mocks of classes // testcontainers (docker framework for testing) testImplementation "org.testcontainers:testcontainers:$testcontainersVersion" @@ -83,19 +83,19 @@ dependencies { testImplementation "org.testcontainers:couchbase:$testcontainersVersion" // logging - implementation platform('org.apache.logging.log4j:log4j-bom:2.22.1') + implementation platform('org.apache.logging.log4j:log4j-bom:2.23.1') implementation 'org.apache.logging.log4j:log4j-api' // log4j implementation 'org.apache.logging.log4j:log4j-core' // log4j implementation 'org.apache.logging.log4j:log4j-slf4j-impl' // log4j -> slf4j // Databases implementation 'org.influxdb:influxdb-java:2.24' - implementation 'com.couchbase.client:java-client:3.5.3' - runtimeOnly 'org.postgresql:postgresql:42.7.2' // postgresql jdbc driver required during runtime + implementation 'com.couchbase.client:java-client:3.6.2' + runtimeOnly 'org.postgresql:postgresql:42.7.3' // postgresql jdbc driver required during runtime - implementation 'commons-io:commons-io:2.15.1' // I/O functionalities - implementation 'org.apache.commons:commons-compress:1.25.0' // I/O functionalities - implementation 'org.apache.commons:commons-lang3:3.14.0' + implementation 'commons-io:commons-io:2.16.1' // I/O functionalities + implementation 'commons-codec:commons-codec:1.17.0' // needed by commons-compress + implementation 'org.apache.commons:commons-compress:1.26.2' // I/O functionalities } tasks.withType(JavaCompile) { diff --git a/docs/readthedocs/conf.py b/docs/readthedocs/conf.py index cdf07d375..461dd252f 100644 --- a/docs/readthedocs/conf.py +++ b/docs/readthedocs/conf.py @@ -22,8 +22,8 @@ author = 'Institute of Energy Systems, Energy Efficiency and Energy Economics' # The full version, including alpha/beta/rc tags -version = '3.0' -release = '3.0.0' +version = '5.0' +release = '5.0.1' pygments_style = 'tango' add_function_parentheses = True diff --git a/docs/readthedocs/gettingstarted.md b/docs/readthedocs/gettingstarted.md index 92a2d54e4..2dea1825a 100644 --- a/docs/readthedocs/gettingstarted.md +++ b/docs/readthedocs/gettingstarted.md @@ -1,5 +1,4 @@ # Getting started - Welcome, dear fellow of bottom up power system modelling! This section is meant to give you some help getting hands on our project. If you feel, something is missing, please contact us! @@ -21,7 +20,7 @@ On [Maven central](https://search.maven.org/artifact/com.github.ie3-institute/Po com.github.ie3-institute PowerSystemDataModel - 2.1.0 + 5.0.1 ``` @@ -42,6 +41,35 @@ and add the dependency: com.github.ie3-institute PowerSystemDataModel - 3.0-SNAPSHOT + 6.0-SNAPSHOT ``` + +## Important changes + +With the release of `PowerSystemDataModel` version `5.0` the support for the old csv file format will be fully removed. +It was already marked as `deprecated` back in version `1.1.0`. For those who are still using a model in the old csv format +the following guide will provide a fast and easy way to convert old format into the new one. + +- Since the support is removed in version `5.0`, the `PowerSystemDataModel` version `3.x` or `4.x` must be + used to read the old format. The `PSDM` will automatically write the output model in the new csv format. + + +``` java + /* Parameterization */ + String gridName = "gridWithOldFormat"; + String csvSep = ","; + Path folderPath = Path.of("PATH_TO_THE_FOLDER"); + boolean isHierarchic = false; + Path output = Path.of("PATH_OF_THE_OUTPUT_FOLDER"); + FileNamingStrategy namingStrategy = new FileNamingStrategy(); + + /* Reading the old format */ + JointGridContainer container = CsvJointGridContainerSource.read(gridName, csvSep, folderPath, isHierarchic); + + /* Writing in the new format */ + CsvFileSink sink = new CsvFileSink(output, namingStrategy, csvSep); + sink.persistJointGrid(container); +``` + + diff --git a/docs/readthedocs/io/ValidationUtils.md b/docs/readthedocs/io/ValidationUtils.md index d0c38d9e6..8dc2ce73d 100644 --- a/docs/readthedocs/io/ValidationUtils.md +++ b/docs/readthedocs/io/ValidationUtils.md @@ -2,15 +2,32 @@ This page gives an overview about the ValidationUtils in the *PowerSystemDataModel*. ## What are the ValidationUtils? -The methods in ValidationUtils and subclasses can be used to check that objects are valid, meaning their parameters have valid values and they are correctly connected. +The methods in ValidationUtils and subclasses can be used to check that objects are valid. The checks can be separated into two types: +1. General validation +2. Uniqueness validation + ## What is checked? -- The check methods include checks that assigned values are valid, e.g. lines are not allowed to have negative lengths or the rated power factor of any unit must be between 0 and 1. -- Furthermore, several connections are checked, e.g. that lines only connect nodes of the same voltage level or that the voltage levels indicated for the transformer sides match the voltage levels of the nodes they are connected to. +The general validation checks: +- if assigned values are valid, e.g. lines are not allowed to have negative lengths or the rated power factor of any unit must be between 0 and 1 +- furthermore, several connections are checked, e.g. that lines only connect nodes of the same voltage level or that the voltage levels indicated for the transformer sides match the voltage levels of the nodes they are connected to. +- the connectivity of the given grid for all defined operation intervals + +The uniqueness validation checks if a collection of given objects are unique in either: +- a specific field +- or in a combination of multiple fields + +For example `AssetInputs` needs to be unique in their `uuid` and in their `id` while +`weather values` needs to be unique in the combination of their `time` and their `coordinate`. + + +## How to use? +- To use the general validation the user should call the method `ValidationUtils.check(Object)`. +- To use the uniqueness validation the user should call a method of `UniquenessValidationUtils` to check the uniqueness. + +## How does the general validation work? -## How does it work? -- The method `ValidationUtils.check(Object)` is the only method that should be called by the user. -- This check method identifies the object class and forwards it to a specific check method for the given object +- The method `ValidationUtils.check(Object)` identifies the object class and forwards it to a specific check method for the given object - The overall structure of the ValidationUtils methods follows a cascading scheme, orientated along the class tree - Example: A `LineInput lineInput` should be checked 1. `ValidationUtils.check(lineInput)` is called @@ -49,7 +66,7 @@ The ValidationUtils include validation checks for... - PvInput - StorageInput - WecInput - - (missing: EvcsInput) + - EvcsInput (also checks ChargingPointType) - SystemParticipantTypeInput - BmTypeInput - ChpTypeInput @@ -57,7 +74,6 @@ The ValidationUtils include validation checks for... - HpTypeInput - StorageTypeInput - WecTypeInput - - (missing: EvcsTypeInput/ChargingPointType) - ThermalUnitValidationUtils - ThermalUnitInput - ThermalSinkInput diff --git a/docs/readthedocs/io/csvfiles.md b/docs/readthedocs/io/csvfiles.md index 34111a343..54a6b7369 100644 --- a/docs/readthedocs/io/csvfiles.md +++ b/docs/readthedocs/io/csvfiles.md @@ -24,80 +24,181 @@ You may extend / alter the naming with pre- or suffix by calling `new EntityPers ### Input -| Model | File Name | -|:----------------------------------|:------------------------------------------------------------------------------------------| -| operator | *prefix_* operator_input *_suffix* | -| node | *prefix_* node_input *_suffix* | -| line | *prefix_* line_input *_suffix*
*prefix_* line_type_input *_suffix* | -| switch | *prefix_* switch_input *_suffix* | -| two winding transformer | *prefix_* transformer2w_input *_suffix*
*prefix_* transformer2w_type_input *_suffix* | -| three winding transformer | *prefix_* transformer3w_input *_suffix*
*prefix_* transformer3w_type_input *_suffix* | -| measurement unit | *prefix_* measurement_unit_input *_suffix* | -| biomass plant | *prefix_* bm_input *_suffix*
*prefix_* bm_type_input *_suffix* | -| combined heat and power plant | *prefix_* chp_input *_suffix*
*prefix_* chp_type_input *_suffix* | -| electric vehicle | *prefix_* ev_input *_suffix*
*prefix_* ev_type_input *_suffix* | -| electric vehicle charging station | *prefix_* evcs_input *_suffix* | -| fixed feed in facility | *prefix_* fixed_feed_in_input *_suffix* | -| heat pump | *prefix_* hp_input *_suffix*
*prefix_* hp_type_input *_suffix* | -| load | *prefix_* load_input *_suffix* | -| photovoltaic power plant | *prefix_* pc_input *_suffix* | -| electrical energy storage | *prefix_* storage_input *_suffix*
*prefix_* storage_type_input *_suffix* | -| wind energy converter | *prefix_* wec_input *_suffix*
*prefix_* wec_type_input *_suffix* | -| schematic node graphic | *prefix_* node_graphic_input *_suffix* | -| schematic line graphic | *prefix_* line_graphic_input *_suffix* | +```{eval-rst} +.. list-table:: + :widths: auto + :header-rows: 1 + + * - Model + - File Name + * - operator + - *prefix_* operator_input *_suffix* + * - node + - *prefix_* node_input *_suffix* + * - line + - | *prefix_* line_input *_suffix* + | *prefix_* line_type_input *_suffix* + * - switch + - *prefix_* switch_input *_suffix* + * - two winding transformer + - | *prefix_* transformer2w_input *_suffix* + | *prefix_* transformer2w_type_input *_suffix* + * - three winding transformer + - | *prefix_* transformer3w_input *_suffix* + | *prefix_* transformer3w_type_input *_suffix* + * - measurement unit + - *prefix_* measurement_unit_input *_suffix* + * - biomass plant + - | *prefix_* bm_input *_suffix* + | *prefix_* bm_type_input *_suffix* + * - combined heat and power plant + - | *prefix_* chp_input *_suffix* + | *prefix_* chp_type_input *_suffix* + * - electric vehicle + - | *prefix_* ev_input *_suffix* + | *prefix_* ev_type_input *_suffix* + * - electric vehicle charging station + - *prefix_* evcs_input *_suffix* + * - fixed feed in facility + - *prefix_* fixed_feed_in_input *_suffix* + * - heat pump + - | *prefix_* hp_input *_suffix* + | *prefix_* hp_type_input *_suffix* + * - load + - *prefix_* load_input *_suffix* + * - photovoltaic power plant + - *prefix_* pv_input *_suffix* + * - electrical energy storage + - | *prefix_* storage_input *_suffix* + | *prefix_* storage_type_input *_suffix* + * - wind energy converter + - | *prefix_* wec_input *_suffix* + | *prefix_* wec_type_input *_suffix* + * - schematic node graphic + - *prefix_* node_graphic_input *_suffix* + * - schematic line graphic + - *prefix_* line_graphic_input *_suffix* +``` -### Time Series +### Id Coordinate +Csv id coordinate sources can have two different ways to represent their coordinate: +1. ICON: Takes a `latitude` and a `longitude` column +2. COSMO: Takes a `lat_rot`, a `long_rot`, a `lat_geo` and a `long_geo` column -| Model | File Name | -|:-----------------------|:------------------------------------------| -| individual time series | *prefix_* its *_columnScheme_UUID_suffix* | -| load profile input | *prefix_* rts *_profileKey_UUID_suffix* | +### Time Series + +```{eval-rst} +.. list-table:: + :widths: 50 50 + :header-rows: 1 + + * - Model + - File Name + * - individual time series + - *prefix_* its *_columnScheme_UUID_suffix* + * - load profile input + - *prefix_* rts *_profileKey_UUID_suffix* +``` Let's spend a few more words on the individual time series: Those files are meant to carry different types of content - one might give information about wholesale market prices, the other is a record of power values provided by a real system. To be able to understand, what's inside of the file, the *columnScheme* part of the file name gives insight of its content. -The following keys are supported until now: -| Key | Information and supported head line | -|:--------|:---------------------------------------------------------------------------------------------------------------------------------------------------------| -| c | An energy price (e.g. in €/MWh; c stands for charge).
Permissible head line: ``uuid,time,price`` | -| p | Active power
Permissible head line: ``uuid,time,p`` | -| pq | Active and reactive power
Permissible head line: ``uuid,time,p,q`` | -| h | Heat power demand
Permissible head line: ``uuid,time,h`` | -| ph | Active and heat power
Permissible head line: ``uuid,time,p,h`` | -| pqh | Active, reactive and heat power
Permissible head line: ``uuid,time,p,q,h`` | -| weather | Weather information
Permissible head line: ``uuid,time,coordinate,direct_irradiation,diffuse_irradiation,temperature,wind_velocity,wind_direction`` | +For example, you have an IndividualTimeSeries CSV file for energy prices, then you use the key `c` from the table below +for columnScheme `its_c_2fcb3e53-b94a-4b96-bea4-c469e499f1a1.csv`. +The CSV file must then have the appropriate format for the key `c` : +```text + time,price + 2020-01-01T00:00:00Z,100.0 +``` -As the ``uuid`` and ``time`` field are mandatory, they are not mentioned explicitly, here. +The CSV file requires a unique identification number. +The UUID (Universally Unique Identifier) can be created [here](https://www.uuidgenerator.net/). +You can also use the Method `java.util.UUID#randomUUID` to create a UUID. +This is the UUID from the example above `2fcb3e53-b94a-4b96-bea4-c469e499f1a1`. -### Results +The following keys are supported until now: +```{eval-rst} +.. list-table:: + :widths: auto + :header-rows: 1 + + * - Key + - Information and supported head line + * - c + - | An energy price (e.g. in €/MWh; c stands for charge). + | Permissible head line: ``time,price`` + * - p + - | Active power + | Permissible head line: ``time,p`` + * - pq + - | Active and reactive power + | Permissible head line: ``time,p,q`` + * - h + - | Heat power demand + | Permissible head line: ``time,h`` + * - ph + - | Active and heat power + | Permissible head line: ``time,p,h`` + * - pqh + - | Active, reactive and heat power + | Permissible head line: ``time,p,q,h`` + * - weather + - | Weather information + | Permissible head line: ``time,coordinate,direct_irradiation,diffuse_irradiation,temperature,wind_velocity,wind_direction`` + +``` +### Results -| Model | File Name | -|:----------------------------------|:--------------------------------------------| -| node | *prefix_* node_res *_suffix* | -| line | *prefix_* line_res *_suffix* | -| switch | *prefix_* switch_res *_suffix* | -| two winding transformer | *prefix_* transformer2w_res *_suffix* | -| three winding transformer | *prefix_* transformer3w_res *_suffix* | -| biomass plant | *prefix_* bm_res *_suffix* | -| combined heat and power plant | *prefix_* chp_res *_suffix* | -| electric vehicle | *prefix_* ev_res *_suffix* | -| electric vehicle charging station | *prefix_* evcs_res\*_suffix* | -| fixed feed in | *prefix_* fixed_feed_in_res *_suffix* | -| heat pump | *prefix_* hp_res *_suffix* | -| load | *prefix_* load_res *_suffix* | -| photovoltaic power plant | *prefix_* pv_res *_suffix* | -| storage | *prefix_* storage_res *_suffix* | -| wind energy converter | *prefix_* wec_res *_suffix* | -| thermal house model | *prefix_* thermal_house_res *_suffix* | -| cylindrical thermal storage | *prefix_* cylindrical_storage_res *_suffix* | +```{eval-rst} +.. list-table:: + :widths: auto + :header-rows: 1 + + * - Model + - File Name + * - node + - *prefix_* node_res *_suffix* + * - line + - *prefix_* line_res *_suffix* + * - switch + - *prefix_* switch_res *_suffix* + * - two winding transformer + - *prefix_* transformer2w_res *_suffix* + * - three winding transformer + - *prefix_* transformer3w_res *_suffix* + * - biomass plant + - *prefix_* bm_res *_suffix* + * - combined heat and power plant + - *prefix_* chp_res *_suffix* + * - electric vehicle + - *prefix_* ev_res *_suffix* + * - electric vehicle charging station + - *prefix_* evcs_res\*_suffix* + * - fixed feed in + - *prefix_* fixed_feed_in_res *_suffix* + * - heat pump + - *prefix_* hp_res *_suffix* + * - load + - *prefix_* load_res *_suffix* + * - photovoltaic power plant + - *prefix_* pv_res *_suffix* + * - storage + - *prefix_* storage_res *_suffix* + * - wind energy converter + - *prefix_* wec_res *_suffix* + * - thermal house model + - *prefix_* thermal_house_res *_suffix* + * - cylindrical thermal storage + - *prefix_* cylindrical_storage_res *_suffix* +``` ## Default directory hierarchy diff --git a/docs/readthedocs/models/input/additionaldata/idcoordinatesource.md b/docs/readthedocs/models/input/additionaldata/idcoordinatesource.md index 665490477..4196d0736 100644 --- a/docs/readthedocs/models/input/additionaldata/idcoordinatesource.md +++ b/docs/readthedocs/models/input/additionaldata/idcoordinatesource.md @@ -7,11 +7,21 @@ coordinates. ## Information -| Attribute | Remarks | -|:-------------|:---------------------------------------------------------------| -| `Id` | An integer value for identifying the coordinate. | -| `Coordiante` | Geographical information presented as `Lat/long` of a `Point`. | +```{eval-rst} +.. list-table:: + :widths: 33 33 + :header-rows: 1 + + * - Attribute + - Remarks + + * - Id + - An integer value for identifying the coordinate. + + * - Coordinate + - Geographical information presented as `Lat/long` of a `Point`. +``` ## Known implementations: @@ -74,19 +84,17 @@ return less than n coordinates. ## Finding and returning the closest corner coordinates: -In most cases we need four corner coordinates for our given coordinate. Therefor the -IdCoordinateSource contains a method that will use the calculated distances to find the closest -corner coordinates for the given coordinate. +In most cases we need four corner coordinates for our given coordinate. Therefor the IdCoordinateSource contains methods +that tries to return the corner points for a given coordinate. The max. number of corner points is specified by the +implementation of the second method. ``` java - List restrictToBoundingBox( - Point coordinate, - Collection distances, - int numberOfPoints - ) + List findCornerPoints(Point coordinate, ComparableQuantity distance) + List findCornerPoints(Point coordinate, Collection distances) ``` -For a given set of coordinates, the closest four corner coordinates plus more close points if n > 4 -are returned. If n < 4 the method will return the closest n corner coordinates. If the set of -coordinates contains a coordinate that matches the given coordinate, only this one coordinate is -returned. If n > number of coordinates in the set, all coordinates are returned. \ No newline at end of file +1. This method can be used to return the corner points by specifying a maximum search distance. + +2. If a coordinate matches the given coordinate, only this coordinate is returned. If no coordinate matches the given +coordinate, this method tries to return four corner points. + diff --git a/docs/readthedocs/models/input/additionaldata/timeseries.md b/docs/readthedocs/models/input/additionaldata/timeseries.md index 9590a8404..d486f78ca 100644 --- a/docs/readthedocs/models/input/additionaldata/timeseries.md +++ b/docs/readthedocs/models/input/additionaldata/timeseries.md @@ -17,14 +17,39 @@ In addition to actual data, a mapping function has to be known. To be as flexible, as possible, the actual content of the time series is given as children of the `Value` class. The following different values are available: -| Value Class | Purpose | -|:-----------------------|:--------------------------------------------------------------------------------------------------------------| -| `PValue` | Electrical active power | -| `SValue` | Electrical active and reactive power | -| `HeatAndPValue` | Combination of thermal power (e.g. in kW)
and electrical active power (e.g. in kW) | -| `HeatAndSValue` | Combination of thermal power (e.g. in kW)
and electrical active and reactive power (e.g. in kW and kVAr) | -| `EnergyPriceValue` | Wholesale market price (e.g. in € / MWh) | -| `SolarIrradianceValue` | Combination of diffuse and direct solar irradiance | -| `TemperatureValue` | Temperature information | -| `WindValue` | Combination of wind direction and wind velocity | -| `WeatherValue` | Combination of irradiance, temperature and wind information | +```{eval-rst} +.. list-table:: + :widths: 33 33 + :header-rows: 1 + + * - Value Class + - Purpose + + * - `PValue` + - Electrical active power + + * - `SValue` + - Electrical active and reactive power + + * - `HeatAndPValue` + - Combination of thermal power (e.g. in kW)
and electrical active power (e.g. in kW) + + * - `HeatAndSValue` + - Combination of thermal power (e.g. in kW)
and electrical active and reactive power (e.g. in kW and kVAr) + + * - `EnergyPriceValue` + - Wholesale market price (e.g. in € / MWh) + + * - `SolarIrradianceValue` + - Combination of diffuse and direct solar irradiance + + * - `TemperatureValue` + - Temperature information + + * - `WindValue` + - Combination of wind direction and wind velocity + + * - `WeatherValue` + - Combination of irradiance, temperature and wind information + +``` diff --git a/docs/readthedocs/models/input/participant/em.md b/docs/readthedocs/models/input/em.md similarity index 97% rename from docs/readthedocs/models/input/participant/em.md rename to docs/readthedocs/models/input/em.md index 3e842e612..5f9c698c6 100644 --- a/docs/readthedocs/models/input/participant/em.md +++ b/docs/readthedocs/models/input/em.md @@ -10,7 +10,7 @@ Participants are connected to an EM each via their `em` field. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/gridcontainer.md b/docs/readthedocs/models/input/grid/gridcontainer.md index c39ab3386..85cad16a9 100644 --- a/docs/readthedocs/models/input/grid/gridcontainer.md +++ b/docs/readthedocs/models/input/grid/gridcontainer.md @@ -40,7 +40,7 @@ A synoptic overview of both classes' attributes is given here: ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/line.md b/docs/readthedocs/models/input/grid/line.md index bd4a6f719..1f0ebebee 100644 --- a/docs/readthedocs/models/input/grid/line.md +++ b/docs/readthedocs/models/input/grid/line.md @@ -9,7 +9,7 @@ Representation of an AC line. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit @@ -29,7 +29,7 @@ Representation of an AC line. * - x - Ω / km - - Phase resistance per length + - Phase reactance per length * - g - µS / km @@ -37,7 +37,7 @@ Representation of an AC line. * - b - µS / km - - Phase-to-ground conductance per length + - Phase-to-ground susceptance per length * - iMax - A @@ -56,7 +56,7 @@ A list with some standard line types can be found here: [Standard Line Types](#s ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -129,7 +129,7 @@ Some standard overhead lines. ```{eval-rst} .. list-table:: :widths: 11 11 11 11 11 11 11 11 11 - :header-rows: 0 + :header-rows: 1 * - uuid @@ -312,7 +312,7 @@ Some standard cables. ```{eval-rst} .. list-table:: :widths: 11 11 11 11 11 11 11 11 11 - :header-rows: 0 + :header-rows: 1 * - uuid diff --git a/docs/readthedocs/models/input/grid/linegraphic.md b/docs/readthedocs/models/input/grid/linegraphic.md index d97d695ab..f23fa1b16 100644 --- a/docs/readthedocs/models/input/grid/linegraphic.md +++ b/docs/readthedocs/models/input/grid/linegraphic.md @@ -9,7 +9,7 @@ Schematic drawing information for a line model. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/measurementunit.md b/docs/readthedocs/models/input/grid/measurementunit.md index 0d00d0f3a..aa5a58195 100644 --- a/docs/readthedocs/models/input/grid/measurementunit.md +++ b/docs/readthedocs/models/input/grid/measurementunit.md @@ -11,7 +11,7 @@ The measured information are indicated by boolean fields. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/node.md b/docs/readthedocs/models/input/grid/node.md index f60c0d21a..d409c3141 100644 --- a/docs/readthedocs/models/input/grid/node.md +++ b/docs/readthedocs/models/input/grid/node.md @@ -9,7 +9,7 @@ Representation of an electrical node, with no further distinction into bus bar, ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/nodegraphic.md b/docs/readthedocs/models/input/grid/nodegraphic.md index 6bb73c0ef..07a55a948 100644 --- a/docs/readthedocs/models/input/grid/nodegraphic.md +++ b/docs/readthedocs/models/input/grid/nodegraphic.md @@ -9,7 +9,7 @@ Schematic drawing information for a node model. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/switch.md b/docs/readthedocs/models/input/grid/switch.md index a4ab706cc..6a4ae4db1 100644 --- a/docs/readthedocs/models/input/grid/switch.md +++ b/docs/readthedocs/models/input/grid/switch.md @@ -9,7 +9,7 @@ Model of an ideal switch connecting two node models of the same voltage level ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/grid/transformer2w.md b/docs/readthedocs/models/input/grid/transformer2w.md index 6e4ef7c6f..32be9b754 100644 --- a/docs/readthedocs/models/input/grid/transformer2w.md +++ b/docs/readthedocs/models/input/grid/transformer2w.md @@ -13,7 +13,7 @@ As obvious, the parameter can be used in T- as in 𝜋-equivalent circuit repres ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit @@ -85,7 +85,7 @@ A list with some standard transformer types can be found here: [Standard Two Win ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit @@ -145,7 +145,7 @@ The transformers which source is ``simBench`` are from [here](https://simbench.d ```{eval-rst} .. list-table:: :widths: 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 - :header-rows: 0 + :header-rows: 1 * - uuid - bM diff --git a/docs/readthedocs/models/input/grid/transformer3w.md b/docs/readthedocs/models/input/grid/transformer3w.md index 15575c78c..ec2c21b3f 100644 --- a/docs/readthedocs/models/input/grid/transformer3w.md +++ b/docs/readthedocs/models/input/grid/transformer3w.md @@ -25,7 +25,7 @@ All impedances and admittances are given with respect to the higher voltage side ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -123,7 +123,7 @@ All impedances and admittances are given with respect to the higher voltage side ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/operator.md b/docs/readthedocs/models/input/operator.md index dc560f18d..30d29374c 100644 --- a/docs/readthedocs/models/input/operator.md +++ b/docs/readthedocs/models/input/operator.md @@ -10,7 +10,7 @@ having control over one or more physical entitites. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/bm.md b/docs/readthedocs/models/input/participant/bm.md index ff1854e10..913c0f5a5 100644 --- a/docs/readthedocs/models/input/participant/bm.md +++ b/docs/readthedocs/models/input/participant/bm.md @@ -11,7 +11,7 @@ Model of a biomass power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -58,7 +58,7 @@ Model of a biomass power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/chp.md b/docs/readthedocs/models/input/participant/chp.md index ad4ff729e..b9012a02a 100644 --- a/docs/readthedocs/models/input/participant/chp.md +++ b/docs/readthedocs/models/input/participant/chp.md @@ -11,7 +11,7 @@ Combined heat and power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -66,7 +66,7 @@ Combined heat and power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/ev.md b/docs/readthedocs/models/input/participant/ev.md index 036a92312..aeee017ab 100644 --- a/docs/readthedocs/models/input/participant/ev.md +++ b/docs/readthedocs/models/input/participant/ev.md @@ -11,7 +11,7 @@ Model of an electric vehicle, that is occasionally connected to the grid via an ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -45,12 +45,16 @@ Model of an electric vehicle, that is occasionally connected to the grid via an * - sRated - kVA - - Rated apparent power + - Rated apparent power for AC + + * - sRatedDC + - kW + - power for DC * - cosPhiRated - -- - Rated power factor - + ``` ### Entity Model @@ -58,7 +62,7 @@ Model of an electric vehicle, that is occasionally connected to the grid via an ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/evcs.md b/docs/readthedocs/models/input/participant/evcs.md index b97def9c3..f4b836ebe 100644 --- a/docs/readthedocs/models/input/participant/evcs.md +++ b/docs/readthedocs/models/input/participant/evcs.md @@ -12,7 +12,7 @@ station and has some limitations outlined below. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -81,7 +81,7 @@ The actual model definition for charging point types looks as follows: ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -119,7 +119,7 @@ synonymous ids. All standard types can be found in {code}`edu.ie3.datamodel.mode ```{eval-rst} .. list-table:: :widths: 25 25 25 25 - :header-rows: 0 + :header-rows: 1 * - id @@ -223,7 +223,7 @@ and underscores and minuses are ignored, that means "charginghubtown" is parsed ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - type name diff --git a/docs/readthedocs/models/input/participant/fixedfeedin.md b/docs/readthedocs/models/input/participant/fixedfeedin.md index 2098271de..a6348a7ed 100644 --- a/docs/readthedocs/models/input/participant/fixedfeedin.md +++ b/docs/readthedocs/models/input/participant/fixedfeedin.md @@ -10,7 +10,7 @@ model can be derived. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/hp.md b/docs/readthedocs/models/input/participant/hp.md index 71c8a1608..08a092992 100644 --- a/docs/readthedocs/models/input/participant/hp.md +++ b/docs/readthedocs/models/input/participant/hp.md @@ -11,7 +11,7 @@ Model of a heat pump. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -54,7 +54,7 @@ Model of a heat pump. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/load.md b/docs/readthedocs/models/input/participant/load.md index c31f71549..a153e8392 100644 --- a/docs/readthedocs/models/input/participant/load.md +++ b/docs/readthedocs/models/input/participant/load.md @@ -9,7 +9,7 @@ Model of (mainly) domestic loads. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/pv.md b/docs/readthedocs/models/input/participant/pv.md index 0746f0023..3e0946fd6 100644 --- a/docs/readthedocs/models/input/participant/pv.md +++ b/docs/readthedocs/models/input/participant/pv.md @@ -7,7 +7,7 @@ Detailed model of a photovoltaic power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/storage.md b/docs/readthedocs/models/input/participant/storage.md index dc4d4857d..9c3df5d93 100644 --- a/docs/readthedocs/models/input/participant/storage.md +++ b/docs/readthedocs/models/input/participant/storage.md @@ -11,7 +11,7 @@ Model of an ideal electrical battery energy storage. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -60,25 +60,6 @@ Model of an ideal electrical battery energy storage. - % - Efficiency of the electrical inverter - * - dod - - % - - | Maximum permissible depth of discharge. 80 % dod - | is equivalent to a state of charge of 20 %. - - * - lifeTime - - h - - Permissible hours of full use - - * - lifeCycle - - -- - - Permissible amount of full cycles - - * - em - - -- - - | UUID reference to an :ref:`Energy Management Unit` that is controlling - | this system participant. Field can be empty or missing, if this participant - | is not controlled. - ``` ### Entity Model @@ -86,7 +67,7 @@ Model of an ideal electrical battery energy storage. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -125,7 +106,12 @@ Model of an ideal electrical battery energy storage. - -- - | Foreseen operation strategy of the storage. | Eligible input: *"market"*, *"grid"*, *"self"* - + + * - em + - -- + - | UUID reference to an :ref:`Energy Management Unit` that is controlling + | this system participant. Field can be empty or missing, if this participant + | is not controlled. ``` diff --git a/docs/readthedocs/models/input/participant/wec.md b/docs/readthedocs/models/input/participant/wec.md index 862cbbdcd..e0330669e 100644 --- a/docs/readthedocs/models/input/participant/wec.md +++ b/docs/readthedocs/models/input/participant/wec.md @@ -11,7 +11,7 @@ Model of a wind energy converter. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute @@ -66,7 +66,7 @@ Model of a wind energy converter. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute diff --git a/docs/readthedocs/models/input/participant/cylindricalstorage.md b/docs/readthedocs/models/input/thermal/cylindricalstorage.md similarity index 92% rename from docs/readthedocs/models/input/participant/cylindricalstorage.md rename to docs/readthedocs/models/input/thermal/cylindricalstorage.md index 5e3b8d40c..553f63d3e 100644 --- a/docs/readthedocs/models/input/participant/cylindricalstorage.md +++ b/docs/readthedocs/models/input/thermal/cylindricalstorage.md @@ -1,64 +1,64 @@ -(cylindricalstorage-model)= - -# Cylindrical Thermal Storage - -Model of a cylindrical thermal storage using a fluent to store thermal energy. - -## Attributes, Units and Remarks - -```{eval-rst} -.. list-table:: - :widths: 33 33 33 - :header-rows: 0 - - - * - Attribute - - Unit - - Remarks - - * - uuid - - -- - - - - * - id - - -- - - Human readable identifier - - * - operator - - -- - - - - * - operationTime - - -- - - Timely restriction of operation - - * - thermalBus - - -- - - Connection point to the thermal system - - * - storageVolumeLvl - - m³ - - Overall available storage volume - - * - storageVolumeLvlMin - - m³ - - Minimum permissible storage volume - - * - inletTemp - - °C - - Temperature of the inlet - - * - returnTemp - - °C - - Temperature of the outlet - - * - c - - kWh / (K :math:`\cdot` m³) - - Specific heat capacity of the storage medium - -``` - -## Caveats - -Nothing - at least not known. -If you found something, please contact us! +(cylindricalstorage-model)= + +# Cylindrical Thermal Storage + +Model of a cylindrical thermal storage using a fluent to store thermal energy. + +## Attributes, Units and Remarks + +```{eval-rst} +.. list-table:: + :widths: 33 33 33 + :header-rows: 1 + + + * - Attribute + - Unit + - Remarks + + * - uuid + - -- + - + + * - id + - -- + - Human readable identifier + + * - operator + - -- + - + + * - operationTime + - -- + - Timely restriction of operation + + * - thermalBus + - -- + - Connection point to the thermal system + + * - storageVolumeLvl + - m³ + - Overall available storage volume + + * - storageVolumeLvlMin + - m³ + - Minimum permissible storage volume + + * - inletTemp + - °C + - Temperature of the inlet + + * - returnTemp + - °C + - Temperature of the outlet + + * - c + - kWh / (K :math:`\cdot` m³) + - Specific heat capacity of the storage medium + +``` + +## Caveats + +Nothing - at least not known. +If you found something, please contact us! diff --git a/docs/readthedocs/models/input/participant/thermalbus.md b/docs/readthedocs/models/input/thermal/thermalbus.md similarity index 90% rename from docs/readthedocs/models/input/participant/thermalbus.md rename to docs/readthedocs/models/input/thermal/thermalbus.md index 87cad5dd8..acffc8379 100644 --- a/docs/readthedocs/models/input/participant/thermalbus.md +++ b/docs/readthedocs/models/input/thermal/thermalbus.md @@ -1,45 +1,45 @@ -(thermal-bus-model)= - -# Thermal Bus - -A coupling point to thermal system - equivalent to [electrical node](../grid/node.md#node) -. - -## Attributes, Units and Remarks - -```{eval-rst} -.. list-table:: - :widths: 33 33 33 - :header-rows: 0 - - - * - Attribute - - Unit - - Remarks - - * - uuid - - -- - - - - * - id - - -- - - Human readable identifier - - * - operator - - -- - - - - * - operationTime - - -- - - Timely restriction of operation - - * - bus - - -- - - Connection point to the thermal system - -``` - -## Caveats - -Nothing - at least not known. -If you found something, please contact us! +(thermal-bus-model)= + +# Thermal Bus + +A coupling point to thermal system - equivalent to [electrical node](../grid/node.md#node) +. + +## Attributes, Units and Remarks + +```{eval-rst} +.. list-table:: + :widths: 33 33 33 + :header-rows: 1 + + + * - Attribute + - Unit + - Remarks + + * - uuid + - -- + - + + * - id + - -- + - Human readable identifier + + * - operator + - -- + - + + * - operationTime + - -- + - Timely restriction of operation + + * - bus + - -- + - Connection point to the thermal system + +``` + +## Caveats + +Nothing - at least not known. +If you found something, please contact us! diff --git a/docs/readthedocs/models/input/participant/thermalhouse.md b/docs/readthedocs/models/input/thermal/thermalhouse.md similarity index 92% rename from docs/readthedocs/models/input/participant/thermalhouse.md rename to docs/readthedocs/models/input/thermal/thermalhouse.md index 15e5fd54c..d06a1f59c 100644 --- a/docs/readthedocs/models/input/participant/thermalhouse.md +++ b/docs/readthedocs/models/input/thermal/thermalhouse.md @@ -1,65 +1,65 @@ -(thermal-house-model)= - -# Thermal House Model - -Model for the thermal behaviour of a building. -This reflects a simple shoe box with transmission losses - -## Attributes, Units and Remarks - -```{eval-rst} -.. list-table:: - :widths: 33 33 33 - :header-rows: 0 - - - * - Attribute - - Unit - - Remarks - - * - uuid - - -- - - - - * - id - - -- - - Human readable identifier - - * - bus - - -- - - Thermal bus, the model is connected to - - * - operator - - -- - - - - * - operationTime - - -- - - Timely restriction of operation - - * - ethLosses - - kW / K - - Thermal losses - - * - ethCapa - - kWh / K - - Thermal capacity - - * - targetTemperature - - °C - - Desired target temperature - - * - upperTemperatureLimit - - °C - - Upper temperature boundary - - * - lowerTemperatureLimit - - °C - - Lower temperature boundary - -``` - -## Caveats - -Nothing - at least not known. -If you found something, please contact us! +(thermal-house-model)= + +# Thermal House Model + +Model for the thermal behaviour of a building. +This reflects a simple shoe box with transmission losses + +## Attributes, Units and Remarks + +```{eval-rst} +.. list-table:: + :widths: 33 33 33 + :header-rows: 1 + + + * - Attribute + - Unit + - Remarks + + * - uuid + - -- + - + + * - id + - -- + - Human readable identifier + + * - bus + - -- + - Thermal bus, the model is connected to + + * - operator + - -- + - + + * - operationTime + - -- + - Timely restriction of operation + + * - ethLosses + - kW / K + - Thermal losses + + * - ethCapa + - kWh / K + - Thermal capacity + + * - targetTemperature + - °C + - Desired target temperature + + * - upperTemperatureLimit + - °C + - Upper temperature boundary + + * - lowerTemperatureLimit + - °C + - Lower temperature boundary + +``` + +## Caveats + +Nothing - at least not known. +If you found something, please contact us! diff --git a/docs/readthedocs/models/models.md b/docs/readthedocs/models/models.md index dbb2b1ab8..56c314ac9 100644 --- a/docs/readthedocs/models/models.md +++ b/docs/readthedocs/models/models.md @@ -104,6 +104,7 @@ input/operator ### Grid Related Models +#### Electric Grid ```{toctree} --- maxdepth: 1 @@ -119,6 +120,17 @@ input/grid/measurementunit input/grid/gridcontainer ``` +#### Thermal Grid + +```{toctree} +--- +maxdepth: 1 +--- +input/thermal/thermalbus +input/thermal/thermalhouse +input/thermal/cylindricalstorage +``` + ### Participant Related Models ```{toctree} @@ -136,10 +148,14 @@ input/participant/load input/participant/pv input/participant/storage input/participant/wec -input/participant/thermalbus -input/participant/thermalhouse -input/participant/cylindricalstorage -input/participant/em +``` + +### Energy Management Related Models +```{toctree} +--- +maxdepth: 1 +--- +input/em ``` ### Additional Data @@ -169,6 +185,7 @@ result/grid/switch result/grid/transformer result/grid/transformer2w result/grid/transformer3w +result/grid/congestion ``` ### Participant Related Models diff --git a/docs/readthedocs/models/result/grid/congestion.md b/docs/readthedocs/models/result/grid/congestion.md new file mode 100644 index 000000000..f55886613 --- /dev/null +++ b/docs/readthedocs/models/result/grid/congestion.md @@ -0,0 +1,51 @@ +(congestion-result)= + +# Congestion + +Representation of a congestion result for a given subnet. + +## Attributes, Units and Remarks + +```{eval-rst} +.. list-table:: + :widths: 33 33 33 + :header-rows: 1 + + + * - Attribute + - Unit + - Remarks + + * - time + - ZonedDateTime + - date and time for the produced result + + * - subgrid + - -- + - Sub grid number + + * - vMin + - p.u. + - minimal voltage of the subnet + + * - vMax + - p.u. + - maximal voltage of the subnet + + * - voltage + - -- + - Boolean indicator, if a voltage congestion occurred + + * - line + - -- + - Boolean indicator, if a line congestion occurred + + * - transformer + - -- + - Boolean indicator, if a transformer congestion occurred +``` + +## Caveats + +Nothing - at least not known. +If you found something, please contact us! diff --git a/docs/readthedocs/models/result/grid/connector.md b/docs/readthedocs/models/result/grid/connector.md index 6417c5a14..19cd58ec3 100644 --- a/docs/readthedocs/models/result/grid/connector.md +++ b/docs/readthedocs/models/result/grid/connector.md @@ -9,17 +9,13 @@ Representation of all kinds of connectors. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/grid/line.md b/docs/readthedocs/models/result/grid/line.md index 21efaa9d6..e88f323ab 100644 --- a/docs/readthedocs/models/result/grid/line.md +++ b/docs/readthedocs/models/result/grid/line.md @@ -9,17 +9,13 @@ Representation of an AC line. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/grid/node.md b/docs/readthedocs/models/result/grid/node.md index 0e7049baf..b65e739d8 100644 --- a/docs/readthedocs/models/result/grid/node.md +++ b/docs/readthedocs/models/result/grid/node.md @@ -9,17 +9,13 @@ Representation of an electrical node, with no further distinction into bus bar, ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/grid/switch.md b/docs/readthedocs/models/result/grid/switch.md index c17342691..ae79fb2f0 100644 --- a/docs/readthedocs/models/result/grid/switch.md +++ b/docs/readthedocs/models/result/grid/switch.md @@ -9,17 +9,13 @@ Representation of electrical switches. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/grid/transformer.md b/docs/readthedocs/models/result/grid/transformer.md index c75bfa2f6..8f3784a6a 100644 --- a/docs/readthedocs/models/result/grid/transformer.md +++ b/docs/readthedocs/models/result/grid/transformer.md @@ -9,17 +9,13 @@ Representation of transformers. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/grid/transformer2w.md b/docs/readthedocs/models/result/grid/transformer2w.md index 58201162c..c19550d50 100644 --- a/docs/readthedocs/models/result/grid/transformer2w.md +++ b/docs/readthedocs/models/result/grid/transformer2w.md @@ -9,17 +9,13 @@ Representation of two winding transformers. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/grid/transformer3w.md b/docs/readthedocs/models/result/grid/transformer3w.md index 917bc59e7..61b27a789 100644 --- a/docs/readthedocs/models/result/grid/transformer3w.md +++ b/docs/readthedocs/models/result/grid/transformer3w.md @@ -9,17 +9,13 @@ Representation of three winding transformers. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - ZonedDateTime - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/bm.md b/docs/readthedocs/models/result/participant/bm.md index 39d9554f0..b36165809 100644 --- a/docs/readthedocs/models/result/participant/bm.md +++ b/docs/readthedocs/models/result/participant/bm.md @@ -9,17 +9,13 @@ Result of a biomass power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/chp.md b/docs/readthedocs/models/result/participant/chp.md index 1f3dba2a5..410ff9e55 100644 --- a/docs/readthedocs/models/result/participant/chp.md +++ b/docs/readthedocs/models/result/participant/chp.md @@ -9,17 +9,13 @@ Result of a combined heat and power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/cylindricalstorage.md b/docs/readthedocs/models/result/participant/cylindricalstorage.md index c028628c2..84784f6a8 100644 --- a/docs/readthedocs/models/result/participant/cylindricalstorage.md +++ b/docs/readthedocs/models/result/participant/cylindricalstorage.md @@ -9,17 +9,13 @@ Result of a cylindrical thermal storage using a fluent to store thermal energy. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/em.md b/docs/readthedocs/models/result/participant/em.md index 7cc9977e3..58bf773ba 100644 --- a/docs/readthedocs/models/result/participant/em.md +++ b/docs/readthedocs/models/result/participant/em.md @@ -9,17 +9,13 @@ Result of an energy management entity. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/ev.md b/docs/readthedocs/models/result/participant/ev.md index 05ba1e447..d8cce0d25 100644 --- a/docs/readthedocs/models/result/participant/ev.md +++ b/docs/readthedocs/models/result/participant/ev.md @@ -9,17 +9,13 @@ Result of an electric vehicle, that is occasionally connected to the grid via an ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/evcs.md b/docs/readthedocs/models/result/participant/evcs.md index 48af32b5a..a42c1bd5f 100644 --- a/docs/readthedocs/models/result/participant/evcs.md +++ b/docs/readthedocs/models/result/participant/evcs.md @@ -9,17 +9,13 @@ This model is currently only a dummy implementation of an electric vehicle charg ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/fixedfeedin.md b/docs/readthedocs/models/result/participant/fixedfeedin.md index 9cf5f64de..4dc0ab47f 100644 --- a/docs/readthedocs/models/result/participant/fixedfeedin.md +++ b/docs/readthedocs/models/result/participant/fixedfeedin.md @@ -10,17 +10,13 @@ model can be derived. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/flexoption.md b/docs/readthedocs/models/result/participant/flexoption.md index 34039e082..4c08755b6 100644 --- a/docs/readthedocs/models/result/participant/flexoption.md +++ b/docs/readthedocs/models/result/participant/flexoption.md @@ -9,17 +9,13 @@ Result of a flexibility option. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/hp.md b/docs/readthedocs/models/result/participant/hp.md index 437dde0cb..233a0b64f 100644 --- a/docs/readthedocs/models/result/participant/hp.md +++ b/docs/readthedocs/models/result/participant/hp.md @@ -9,17 +9,13 @@ Result of a heat pump. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/load.md b/docs/readthedocs/models/result/participant/load.md index 8e0f40912..067795c17 100644 --- a/docs/readthedocs/models/result/participant/load.md +++ b/docs/readthedocs/models/result/participant/load.md @@ -9,17 +9,13 @@ Result of (mainly) domestic loads. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/pv.md b/docs/readthedocs/models/result/participant/pv.md index 38df0239d..d1378864c 100644 --- a/docs/readthedocs/models/result/participant/pv.md +++ b/docs/readthedocs/models/result/participant/pv.md @@ -9,17 +9,13 @@ Result of a photovoltaic power plant. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/storage.md b/docs/readthedocs/models/result/participant/storage.md index cb2d8ded0..5c5767dcd 100644 --- a/docs/readthedocs/models/result/participant/storage.md +++ b/docs/readthedocs/models/result/participant/storage.md @@ -9,17 +9,13 @@ Result of an electrochemical storage ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/systemparticipant.md b/docs/readthedocs/models/result/participant/systemparticipant.md index 54dabb959..6b44abe6e 100644 --- a/docs/readthedocs/models/result/participant/systemparticipant.md +++ b/docs/readthedocs/models/result/participant/systemparticipant.md @@ -9,17 +9,13 @@ Groups together all system participants such as PV, Storage etc. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/thermalhouse.md b/docs/readthedocs/models/result/participant/thermalhouse.md index af594039c..942c7e39b 100644 --- a/docs/readthedocs/models/result/participant/thermalhouse.md +++ b/docs/readthedocs/models/result/participant/thermalhouse.md @@ -10,17 +10,13 @@ This reflects a simple shoe box with transmission losses ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/thermalsink.md b/docs/readthedocs/models/result/participant/thermalsink.md index 26ae65631..92d19b9b8 100644 --- a/docs/readthedocs/models/result/participant/thermalsink.md +++ b/docs/readthedocs/models/result/participant/thermalsink.md @@ -9,17 +9,13 @@ Result of a thermal sink. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/thermalstorage.md b/docs/readthedocs/models/result/participant/thermalstorage.md index 1ec9958e7..abbad4e92 100644 --- a/docs/readthedocs/models/result/participant/thermalstorage.md +++ b/docs/readthedocs/models/result/participant/thermalstorage.md @@ -9,17 +9,13 @@ Result of a thermal storage. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/thermalunit.md b/docs/readthedocs/models/result/participant/thermalunit.md index 624aeb38b..bedaa368d 100644 --- a/docs/readthedocs/models/result/participant/thermalunit.md +++ b/docs/readthedocs/models/result/participant/thermalunit.md @@ -9,17 +9,13 @@ Result of a thermal unit. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/models/result/participant/wec.md b/docs/readthedocs/models/result/participant/wec.md index cc04169b7..b4e8e44ce 100644 --- a/docs/readthedocs/models/result/participant/wec.md +++ b/docs/readthedocs/models/result/participant/wec.md @@ -9,17 +9,13 @@ Result of a wind turbine. ```{eval-rst} .. list-table:: :widths: 33 33 33 - :header-rows: 0 + :header-rows: 1 * - Attribute - Unit - Remarks - * - uuid - - -- - - uuid for the result entity - * - time - -- - date and time for the produced result diff --git a/docs/readthedocs/requirements.txt b/docs/readthedocs/requirements.txt index cb581e840..143734da3 100644 --- a/docs/readthedocs/requirements.txt +++ b/docs/readthedocs/requirements.txt @@ -1,6 +1,6 @@ commonmark==0.9.1 recommonmark==0.7.1 -Sphinx==7.2.6 +Sphinx==7.3.7 sphinx-rtd-theme==2.0.0 -myst-parser==2.0.0 +myst-parser==3.0.1 markdown-it-py==3.0.0 diff --git a/docs/uml/main/input/SystemDatamodelConcept.puml b/docs/uml/main/input/SystemDatamodelConcept.puml index d588e1256..613ee4c59 100644 --- a/docs/uml/main/input/SystemDatamodelConcept.puml +++ b/docs/uml/main/input/SystemDatamodelConcept.puml @@ -153,9 +153,6 @@ package models { - pMax: ComparableQuantity [kW] - activePowerGradient: ComparableQuantity [%/h] - eta: ComparableQuantity [%] - - dod: ComparableQuantity [%] - - lifeTime: ComparableQuantity