├── UpdatePyCharm.md ├── README.md ├── crib-sheet_postgres.md ├── minutes ├── 2020-04-08_htw-pv3_einführung.md ├── 2020-04-15_htw-pv3_daten.md ├── 2020-05-13_htw-pv3_wetterdatenvisualisierung.md ├── 2020-05-20_htw-pv3_pv-modelleriung-polysun.md ├── 2020-05-06_htw-pv3_postgresql_II.md ├── 2020-04-29_htw-pv3_postgresql.md └── 2020-04-22_htw-pv3_software-session.md ├── .gitignore ├── crib-sheet_python.md ├── crib-sheet_markdown.md ├── LICENSE ├── CONTRIBUTING.md ├── crib-sheet_git.md └── references.bib /UpdatePyCharm.md: -------------------------------------------------------------------------------- 1 | @Software{PyCharm, 2 | author = {{JetBrains s.r.o.}}, 3 | title = {{PyCharm for Anaconda Community Edition}}, 4 | comment = {https://en.wikipedia.org/wiki/PyCharm}, 5 | copyright_owner = {{© 2000–2025 JetBrains s.r.o.}}, 6 | file = {:C\:/JetBrains/PyCharm Community Edition with Anaconda plugin 2020.1/bin/pycharm64.exe:exe}, 7 | kategorie = {{integrated development environment (IDE)}}, 8 | license = {{Apache License, Version 2.0}}, 9 | license_url = {http://www.apache.org/licenses/LICENSE-2.0}, 10 | openess = {{Freeware;}}, 11 | owner = {Kilian}, 12 | platform = {independent}, 13 | tag = {{software;}{IDE;}}, 14 | timestamp = {2020-04-27}, 15 | url = {https://www.jetbrains.com/pycharm/promo/anaconda/}, 16 | urldate = {2020-04-27}, 17 | version = {2024.3.5}, 18 | groups = {Software}, 19 | } 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # literature 2 | 3 | ## Repo Description 4 | This Repository contains literature about the "PV3 - Solaranlagen und -kraftwerke" lecture at HTW-Berlin. 5 | It contains cheat-sheets for the different software tools which are used during the course. 6 | 7 | During the course the students will write a joint protocol in which information about the weekly lectures is documented. There is an Etherpad document for the lecture (to be found at the the following link: https://etherpad.wikimedia.org/p/htw-pv3-2023) to which everyone has access. The joint protocol from 2020 can be found as example in the folder minutes. The joint protocol from this year is only available via the link. There are two other Etherpad documents, one for the weakly tasks and one for the code. 8 | 9 | 10 | ## Additional Information 11 | [List of alternative Etherpads](https://github.com/ether/etherpad-lite/wiki/Sites-that-run-Etherpad-Lite) 12 | 13 | Bibfiles and literature 14 | 15 | already at place: 16 | - Software (Bibtex-Eintrag "shared_literature.bib") 17 | - git - tutorials and commands 18 | - Python 19 | - PV for engineers 20 | 21 | - **software**: contains Metadata for the software we work with 22 | - **git:** is a version control software that allows a collaboration of different persons on a project at the same time 23 | - **Python:** Python is an open source programming language that is easy to learn and suitable for numerous purposes 24 | - **Pv for engineers:** information about pv-systems that empower us to set it up! 25 | 26 | -------------------------------------------------------------------------------- /crib-sheet_postgres.md: -------------------------------------------------------------------------------- 1 | 2 | ## SQL 3 | 4 | [PostgreSQL-cheat-sheet](https://sp.postgresqltutorial.com/wp-content/uploads/2018/03/PostgreSQL-Cheat-Sheet.pdf) 5 | 6 | # Some of The Most Important SQL Commands 7 | 8 | **SELECT** - *extracts data from a database* 9 | 10 | **UPDATE** - *updates data in a database* 11 | 12 | **DELETE** - *deletes data from a database* 13 | 14 | **INSERT INTO** - *inserts new data into a database* 15 | 16 | **CREATE DATABASE**- *creates a new database* 17 | 18 | **ALTER DATABASE** - *modifies a database* 19 | 20 | **CREATE TABLE**- *creates a new table* 21 | 22 | **ALTER TABLE** - *modifies a table* 23 | 24 | **DROP TABLE** - *deletes a table* 25 | 26 | **CREATE INDEX** - *creates an index (search key)* 27 | 28 | **DROP INDEX** - *deletes an index* 29 | 30 | **JOIN** - *combine records from two or more tables in a database* 31 | 32 | Link to the Demo-Database where you can practice SQL-Commands: https://www.w3schools.com/sql/sql_select.asp 33 | 34 | 35 | # Connect to your database with psql or PgAdmin. Run the following SQL. You only need to install the features you want: 36 | 37 | -- Enable PostGIS (as of 3.0 contains just geometry/geography) 38 | 39 | CREATE EXTENSION postgis; 40 | 41 | -- enable raster support (for 3+) 42 | 43 | CREATE EXTENSION postgis_raster; 44 | 45 | -- Enable Topology 46 | 47 | CREATE EXTENSION postgis_topology; 48 | 49 | -- Enable PostGIS Advanced 3D 50 | 51 | -- and other geoprocessing algorithms 52 | 53 | -- sfcgal not available with all distributions 54 | 55 | CREATE EXTENSION postgis_sfcgal; 56 | 57 | -- fuzzy matching needed for Tiger 58 | 59 | CREATE EXTENSION fuzzystrmatch; 60 | 61 | -- rule based standardizer 62 | 63 | CREATE EXTENSION address_standardizer; 64 | 65 | -- example rule data set 66 | CREATE EXTENSION address_standardizer_data_us; 67 | 68 | -- Enable US Tiger Geocoder 69 | 70 | CREATE EXTENSION postgis_tiger_geocoder; -------------------------------------------------------------------------------- /minutes/2020-04-08_htw-pv3_einführung.md: -------------------------------------------------------------------------------- 1 | Gemeinsames Protokoll 08.04.2020 2 | 3 | Anmerkungen zu slides: 4 | Arbeitsweise: detailierter aufgelöst 5 | Anpassung Mentimeter Slide "wie arbeitet ihr am liebsten?" 6 | 7 | Unterschied Modell und Simulation 8 | Modell: Abbildung eines Systems z.B. ein Haus mit AutoCAD planen 9 | Simulation: Analyse eines Systems, die Simulation wird im Modell durchgeführt z.B. das Haus mit Revit simulieren 10 | Voraussetzung: Forschungsfrage 11 | Es wird zuerst modelliert und simuliert bevor die reale Anlage gebaut wird. Die aufgewendete Zeit, die man für Tests an einer realen Anlage benötigt, kann durch eine Simulierung dieser um ein Vielfaches verkürzt werden. 12 | Zeitraum für eine PV-Simulation: Normalerweise 1 Jahr. 13 | Klassifizierung von Modellen: 14 | - Materiell / Immateriell 15 | -Zeitachse 16 | -Zustandsraum 17 | -Art der Dynamik 18 | 19 | diskret = kombinatorische Beschreibung eines Systems 20 | deterministisch = keine Zufallsgrößen 21 | stochastisch = Zufallsentscheidungen vorhanden 22 | 23 | Blackbox: keine Informationen zu inneren Arbeitsweise des Modells 24 | Whitebox: transparentes Modell 25 | 26 | Open Source: frei beziehen, verwenden, verändern und wieder veröffentlichen (kollaborative Zusammenarbeit) 27 | Freeware ist nicht Open Source 28 | Siehe: https://de.wikipedia.org/wiki/Open_Source 29 | https://www.gnu.de/free-software/open-source.de.html 30 | https://www.gnu.org/philosophy/open-source-misses-the-point.de.html 31 | 32 | Open Source (Freie Software) 33 | Download (Free as in freedom, not free beer) 34 | 35 | „Freiheit 0“: Die Freiheit, das Programm auszuführen, wie man möchte, für jeden Zweck. 36 | 37 | „Freiheit 1“: Die Freiheit, die Funktionsweise des Programms zu untersuchen und eigenen Bedürfnissen der Datenverarbeitung anzupassen.* 38 | 39 | „Freiheit 2“: Die Freiheit, das Programm weiterzuverbreiten und damit seinen Mitmenschen zu helfen. 40 | 41 | „Freiheit 3“: Die Freiheit, das Programm zu verbessern und diese Verbesserungen der Öffentlichkeit freizugeben, damit die gesamte Gemeinschaft davon profitiert. 42 | 43 | 44 | Energiewandlung ist immer verlustbehaftet 45 | 46 | Aufgaben 47 | ☐ ☑ ☒ 48 | 49 | ☑ Aktualisierte Skripte hochladen [LH] 50 | 51 | ☑ Menti-Ergebnisse bereitstellen [LH] 52 | 53 | ☑ Neuen Etherpad-Link bereitstellen [LH] 54 | 55 | ☐ Audioaufzeichnung sichten und schneiden [LH] 56 | 57 | ☐ Audioaufzeichnung bereitstellen [LH] 58 | 59 | 60 | ☑ Headset und Kamera aktivieren [ALL] 61 | 62 | ☐ Protokoll aufbereiten und ausarbeiten [ALL] -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | .idea/ 3 | __pycache__/ 4 | *.py[cod] 5 | *$py.class 6 | 7 | # C extensions 8 | *.so 9 | 10 | # Distribution / packaging 11 | .Python 12 | build/ 13 | develop-eggs/ 14 | dist/ 15 | downloads/ 16 | eggs/ 17 | .eggs/ 18 | lib/ 19 | lib64/ 20 | parts/ 21 | sdist/ 22 | var/ 23 | wheels/ 24 | pip-wheel-metadata/ 25 | share/python-wheels/ 26 | *.egg-info/ 27 | .installed.cfg 28 | *.egg 29 | MANIFEST 30 | 31 | # PyInstaller 32 | # Usually these files are written by a python script from a template 33 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 34 | *.manifest 35 | *.spec 36 | 37 | # Installer logs 38 | pip-log.txt 39 | pip-delete-this-directory.txt 40 | 41 | # Unit test / coverage reports 42 | htmlcov/ 43 | .tox/ 44 | .nox/ 45 | .coverage 46 | .coverage.* 47 | .cache 48 | nosetests.xml 49 | coverage.xml 50 | *.cover 51 | *.py,cover 52 | .hypothesis/ 53 | .pytest_cache/ 54 | 55 | # Translations 56 | *.mo 57 | *.pot 58 | 59 | # Django stuff: 60 | *.log 61 | local_settings.py 62 | db.sqlite3 63 | db.sqlite3-journal 64 | 65 | # Flask stuff: 66 | instance/ 67 | .webassets-cache 68 | 69 | # Scrapy stuff: 70 | .scrapy 71 | 72 | # Sphinx documentation 73 | docs/_build/ 74 | 75 | # PyBuilder 76 | target/ 77 | 78 | # Jupyter Notebook 79 | .ipynb_checkpoints 80 | 81 | # IPython 82 | profile_default/ 83 | ipython_config.py 84 | 85 | # pyenv 86 | .python-version 87 | 88 | # pipenv 89 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 90 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 91 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 92 | # install all needed dependencies. 93 | #Pipfile.lock 94 | 95 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow 96 | __pypackages__/ 97 | 98 | # Celery stuff 99 | celerybeat-schedule 100 | celerybeat.pid 101 | 102 | # SageMath parsed files 103 | *.sage.py 104 | 105 | # Environments 106 | .env 107 | .venv 108 | env/ 109 | venv/ 110 | ENV/ 111 | env.bak/ 112 | venv.bak/ 113 | 114 | # Spyder project settings 115 | .spyderproject 116 | .spyproject 117 | 118 | # Rope project settings 119 | .ropeproject 120 | 121 | # mkdocs documentation 122 | /site 123 | 124 | # mypy 125 | .mypy_cache/ 126 | .dmypy.json 127 | dmypy.json 128 | 129 | # Pyre type checker 130 | .pyre/ 131 | 132 | # jabref 133 | *.bak 134 | *.sav -------------------------------------------------------------------------------- /minutes/2020-04-15_htw-pv3_daten.md: -------------------------------------------------------------------------------- 1 | # Daten 2 | __2020-04-15 14:00 - 17:30__ 3 | 4 | - 14:00 Vorstellungsrunde Studierende 5 | 6 | - 14:30 Thema: Daten 7 | 8 | ## Semantisches Feld 9 | ### Definition: 10 | 11 | Datum/Daten -> elektronisch gespeicherte Zeichen/Angaben/Information 12 | 13 | - Information alleine reicht aber nicht aus 14 | - Wir werden mit minutenwerte für 1 jahr arbeiten (Klimadaten) 15 | - Die Speichermedium die wir heute benutzen sind Flash und Cloud und wir werden sie anschauen. 16 | ### Kategoriesierung der Daten: 17 | - nach der Struktur: 18 | - Unstrukturierte 19 | - Semistrukturierte Daten 20 | - Strukturierte Daten) 21 | - Sonstige Kat.: 22 | - Transiente(z.B. Datenlogger --> kurzgespeichert und übermittelt) 23 | - Ein-/ Ausgabedaten, Stammdaten z.B. Kundendaten Geburtsdatum (können sich ändern aber normalerweise nicht).... 24 | - Realtime z.B. Aktuell Stand (Messung) 25 | - Neartime z.B. BVG Anzeige (nicht ganz realtime) 26 | - Historisch z.B Zensus, Originär (Messwerte) 27 | - Abgeleitet (Berechnung von Originäre Daten z.B Durchnitt) 28 | 29 | > Der Begriff "Realdaten" sollte nicht verwendet werden, da dieser Datentyp nicht existiert. Der Grund: jede Messung ist fehlerbehaftet. 30 | 31 | Strukturierte Daten werden durch die Definition der "Struktur" Spaltenbezeichnung geschafft, i.d.R. werden zuerst __Spalten__, __Dateitypen__, __Key__ und __Value__ definiert. 32 | 33 | - Strukturierten Daten sind grundlegend für Datenbank 34 | - endogene und exogene Daten 35 | - endogene:liegen innerhalb des Models 36 | - exogene:kommen als Input-Daten 37 | 38 | __Metadaten:__ 39 | Sie beschreiben die Elemente eines Datensatzes vollständig und geben Informationen über Datentypen und Einheiten der einzelnen Elemente. 40 | 41 | ### Datenbearbeitung in a "nut-shell" 42 | 43 | - Folie 9 im Skript zeigt den grundsätzlichen Ablauf der Datenbearbeitung, wie wir ihn gehen werden. 44 | - Weiß-hinterlegte Felder sind Standard (Teil der PV-Modellierung), grau hinterlegte sind Teil der Wissenschaftlichen/Ingenieurtechnischen Arbeit 45 | - Das eigentliche Ziel der Forschung sollte sein, die Inhalte mundgerecht aufzuarbeiten (grau-hinterlegte Felder). Zum Beispiel mit geploteten Diagrammen und einer Ergebnisanalyse. 46 | 47 | __Frage:__ Ab welchem Prozentwert spricht man von einer schlechten Verschattung? 48 | 49 | Forschungsfrage - nachgeführte PV-Anlagen: Welchen Ertrag würde die Dachanlage auf der HTW bei verschiedenen nachgeführten Systemen (einachsig horizontal, einachsig vertikal) liefern? 50 | 51 | Feststellung: der Einfluss des Breitengrades auf das nachgeführte System ist gravierender als der Längengrad. 52 | 53 | __Frage:__ Grafik für nachgeführte PV-Anlagen in Abhängigkeit der geografischen Höhe. 54 | 55 | Forschungsfragen auf Seite 12 - Zielstellungen für dieses Modul. 56 | Die obersten vier werden zu beantworten sein (Auszug): 57 | 58 | - Betriebs- und Ertragsverhalten der Modultechnologien 59 | 60 | - Wechselrichter-Performance und Wikrunsgrad bei Betrieb mit unterschiedlichen Modultechnologien 61 | 62 | - Einfluss der Verwendung von verscheidenen Wetterdatensätze (wir werden diverse verwenden; HTW-Wetter 2015, open_FRED, synthetische Wetterdaten) 63 | 64 | - Vergleich von unterschiedlichen Berechnungsmodellen. 65 | 66 | 67 | Zu Wetterdaten und PV-Messung/Simualtion: Was habe ich? Macht es Sinn das zu vergleichen? Das ist eigentlich das, was ihr draufhaben sollt. 68 | 69 | __Lücken:__ 70 | Lücken in Daten sind behutsam zu behandeln. Das Auffüllen solcher insbesondere für den Erhalt der Jahreslänge notwendig. Wie aufgefüllt wird (Lineare Näherung, Verwendung des Vortages, etc.), muss im Einzelfall entschieden werden. 71 | 72 | -------------------------------------------------------------------------------- /crib-sheet_python.md: -------------------------------------------------------------------------------- 1 | 2 | # Python/conda 3 | [conda-cheat-sheet](https://docs.conda.io/projects/conda/en/4.6.0/_downloads/52a95608c49671267e40c689e0bc00ca/conda-cheatsheet.pdf) 4 | 5 | ### pandas 6 | 7 | [pandas-cheat-sheet](https://pandas.pydata.org/Pandas_Cheat_Sheet.pdf) 8 | 9 | ### matplotlib 10 | 11 | [matplotlib-cheat-sheet](https://python-graph-gallery.com/wp-content/uploads/Matplotlib_cheatsheet_datacamp.png) 12 | 13 | ### seaborn 14 | 15 | [seaborn-cheat-sheat](https://python-graph-gallery.com/wp-content/uploads/Seaborn_Cheatsheet_Datacamp.png) 16 | 17 | 18 | 19 | 20 | # I can comment with pound sign. Yes that's also comment. 21 | 22 | # Assigning string to a variable 23 | 24 | a = "This is a string" 25 | 26 | print(a) 27 | 28 | ## The output is: This is string 29 | 30 | 31 | # Declaring a list 32 | L = [1, "a" , "string" ,3] 33 | 34 | print (L) 35 | 36 | ## The output is: 37 | 38 | [1, 'a', 'string', 3] 39 | 40 | # Tuples in Python 41 | 42 | tup = (1,2,3,4) 43 | 44 | print (tup) 45 | 46 | ## The output is (1,2,3,4) 47 | 48 | ### Tuples are like lists but they cannot be changed. 49 | 50 | # Python operators 51 | 52 | ## Arithmetic operators 53 | '+' Addition: x + y 54 | 55 | '-' Subtraction: x - y 56 | 57 | '* ' Multiplication: x * y 58 | 59 | '/ ' Division (float): x / y 60 | 61 | '% ' Modulus: x % y 62 | 63 | ** Power : x ** y 64 | 65 | ## Relational operators 66 | > Greater than: x > y 67 | 68 | < Less than: x < y 69 | 70 | == Equal to: x == y 71 | 72 | != Not equal to : x != y 73 | 74 | >= Greater than or equal to: x >= y 75 | 76 | <= Less than or equal to: x <= y 77 | 78 | ## Logical operators 79 | and Logical AND: True if both the operands are true x and y 80 | 81 | or Logical OR: True if either of the operands is true x or y 82 | 83 | not Logical NOT: True if operand is false not x 84 | 85 | 86 | # Python program to illustrate "if" statement 87 | i = 10 88 | 89 | if (i < 15): 90 | 91 | print ("10 is less than 15") 92 | 93 | ## The output is: 10 is less than 15 94 | 95 | 96 | # if- else 97 | 98 | ## Provided the "if" condition is false, and we want to do run a different command, we can use "else": 99 | i = 20; 100 | 101 | if (i < 15): 102 | 103 | print ("i is smaller than 15") 104 | 105 | print ("i'm in if Block") 106 | 107 | else: 108 | 109 | print ("i is greater than 15") 110 | 111 | ## The output is: i is greater than 15 112 | 113 | 114 | # if-elif-else ladder 115 | 116 | ## Here you can decide among multiple options 117 | 118 | i = 20 119 | 120 | if (i == 10): 121 | 122 | print ("i is 10") 123 | 124 | elif (i == 15): 125 | 126 | print ("i is 15") 127 | 128 | elif (i == 20): 129 | 130 | print ("i is 20") 131 | 132 | else: 133 | 134 | print ("i is not present") 135 | 136 | ## The output is: i is 20 137 | 138 | 139 | # Iterations in Python 140 | 141 | ## Iteration by "while" loop for a condition 142 | i = 1 143 | 144 | while (i < 10): 145 | 146 | i += 1 147 | 148 | print i, 149 | 150 | ## The output is: 2 3 4 5 6 7 8 9 10 151 | 152 | 153 | # Iteration by for "loop" on list 154 | 155 | L = [1, 4, 5, 7, 8, 9] 156 | 157 | for i in L: 158 | 159 | print i, 160 | 161 | ## The output is: 1 4 5 7 8 9 162 | 163 | 164 | # We can create our own functions! A simple Python function to check whether x is even or odd. 165 | 166 | def evenOdd( x ): 167 | 168 | if (x % 2 == 0): 169 | 170 | print "even" 171 | 172 | else: 173 | 174 | print "odd" 175 | 176 | ## Driver code 177 | evenOdd(3) 178 | 179 | ## Output is: odd 180 | -------------------------------------------------------------------------------- /crib-sheet_markdown.md: -------------------------------------------------------------------------------- 1 | # Überschriften 2 | 3 | # H1 4 | ## H2 5 | ### H3 6 | #### H4 7 | ##### H5 8 | ###### H6 9 | 10 | # H1 11 | ## H2 12 | ### H3 13 | #### H4 14 | ##### H5 15 | ###### H6 16 | 17 | # Formatierungen 18 | 19 | _Kursiv_ oder *Kursiv* 20 | 21 | __Fett__ oder **Fett** 22 | 23 | ~~durchgestrichen~~ 24 | 25 | *__Kombiniert__* 26 | 27 | _Kursiv_ oder *Kursiv* 28 | 29 | __Fett__ oder **Fett** 30 | 31 | ~~durchgestrichen~~ 32 | 33 | *__Kombiniert__* 34 | 35 | # Listen und Code Block 36 | 37 | 1. Nummerierte Liste erstes Element 38 | 2. Nummerierte Liste zweites Element 39 | * Sub-Liste mit Punkt 40 | - Minus geht auch 41 | + oder Plus 42 | 3. Nummerierte Liste drittes Element 43 | 1. Nummerierte Subliste 44 | 4. Nummerierte Liste viertes Element 45 | 46 | - [ ] Checkboxen funktionieren 47 | - [x] wie Listen 48 | 49 | 1. Nummerierte Liste erstes Element 50 | 2. Nummerierte Liste zweites Element 51 | * Sub-Liste mit Punkt 52 | - Minus geht auch 53 | + oder Plus 54 | 3. Nummerierte Liste drittes Element 55 | 1. Nummerierte Subliste 56 | 4. Nummerierte Liste viertes Element 57 | 58 | - [ ] Checkboxen funktionieren 59 | - [x] wie Listen 60 | 61 | # Links 62 | 63 | ## Erste Möglichkeit 64 | 65 | [I'm a Link!](https://github.com/htw-pv3/literature) 66 | 67 | ## Zweite Möglichkeit 68 | 69 | [I'm also a Link!][1] 70 | 71 | [1]: https://github.com/htw-pv3/literature 72 | 73 | ## Erste Möglichkeit 74 | 75 | [I'm a Link!](https://github.com/htw-pv3/literature) 76 | 77 | ## Zweite Möglichkeit 78 | 79 | [I'm also a Link!][1] 80 | 81 | [1]: https://github.com/htw-pv3/literature 82 | 83 | # Bilder 84 | 85 | ## Erste Möglichkeit 86 | 87 | ![alt text](https://img.icons8.com/cotton/64/000000/small-telescope.png) 88 | 89 | [Small Telescope icon](https://icons8.com/icon/64362/small-telescope) by [Icons8](https://icons8.com) 90 | 91 | ## Zweite Möglichkeit 92 | 93 | ![alt text][Small Telescope] 94 | 95 | [Small Telescope]: https://img.icons8.com/cotton/64/000000/small-telescope.png 96 | 97 | [Small Telescope icon](https://icons8.com/icon/64362/small-telescope) by [Icons8](https://icons8.com) 98 | 99 | ## Erste Möglichkeit 100 | 101 | ![alt text](https://img.icons8.com/cotton/64/000000/small-telescope.png) 102 | 103 | ["Small Telescope icon"](https://icons8.com/icon/64362/small-telescope) by [Icons8](https://icons8.com) 104 | 105 | ## Zweite Möglichkeit 106 | 107 | ![alt text][Small Telescope] 108 | 109 | [Small Telescope]: https://img.icons8.com/cotton/64/000000/small-telescope.png 110 | 111 | ["Small Telescope icon"](https://icons8.com/icon/64362/small-telescope) by [Icons8](https://icons8.com) 112 | 113 | # Code Blöcke und Code Inline 114 | 115 | Ein Code Block wie dieser hier, wird durch das Einrücken des Satzes durch einen Tabstopp oder vier Leerzeichen hervorgerufen 116 | 117 | 118 | 119 | unterbricht Code Blöcke 120 | 121 | `I'm a Code Inline!` 122 | I'm not but `I am!` 123 | 124 | 125 | 126 | Ein Code Block wie dieser hier, wird durch das Einrücken des Satzes durch einen Tabstopp oder vier Leerzeichen hervorgerufen 127 | 128 | 129 | 130 | unterbricht Code Blöcke 131 | 132 | `I'm a Code Inline!` 133 | I'm not but `I am!` 134 | 135 | # Tabellen 136 | 137 | | Tabellen | sind | übersichtlich | 138 | | ------------- |:-------------:| --------------:| 139 | | Spalte 3 ist | rechtsbündig | $1600 | 140 | | Spalte 2 ist | zentriert | $12 | 141 | | Zebrastreifen | sind toll | $1 | 142 | 143 | | Tabellen | sind | übersichtlich | 144 | | ------------- |:-------------:| --------------:| 145 | | Spalte 3 ist | rechtsbündig | $1600 | 146 | | Spalte 2 ist | zentriert | $12 | 147 | | Zebrastreifen | sind toll | $1 | 148 | 149 | # Zitierungen 150 | 151 | > Zitieren ist sehr einfach, 152 | >> sogar multidimensional 153 | 154 | > Zitieren ist sehr einfach, 155 | >> sogar multidimensional 156 | 157 | # Horizontale Linien 158 | 159 | Sowohl 160 | *** 161 | funktioniert. Als auch 162 | ___ 163 | Unterstriche. 164 | 165 | Sowohl Sterne 166 | *** 167 | funktionieren, als auch 168 | ___ 169 | Unterstriche. 170 | 171 | # Credits 172 | 173 | ["Markdown Cheatsheet"](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) by Adam Pritchard | [CC-BY-3.0](https://creativecommons.org/licenses/by/3.0/) 174 | -------------------------------------------------------------------------------- /minutes/2020-05-13_htw-pv3_wetterdatenvisualisierung.md: -------------------------------------------------------------------------------- 1 | #2020-05-13 14:00 - 15:30 Wetterdatenvisualisierung mit Python (und Jupyter) -----#6 2 | 3 | ## Kurzes Feedback und aktueller Stand 4 | 5 | - Git ist prinzipiell sehr wichtig und wertgeschätzt.(Einfach ausprobieren, man kann nix damit kaputt machen. Workflow ist dezentralisiert, allse kann repariert werden.) 6 | - Das WIE ist bei der Vermittlung essentiell! Leichteres Heranführen und eventuell bessere Strukturen 7 | - git-commit: so klein wie möglich - atomic commit 8 | - "git sanitary" entwickeln: 9 | - Meta-Regeln für die git Nutzung (bsp: Sobald ein PR reviewed wurde, wird er vom Reviewer auch gemerged) 10 | - Leichteres Herangehen für verschiedene Vorkenntnisse 11 | 12 | - Ich finde den Kurs der Beste dieses Semester aber wünsche mir: 13 | - Bessere Aufgabenbeschreibung, beschreiben was Schritt zu Schritt gemacht werden soll (Aufgabe 4 war ein Filter und hat leute vom Kurz rausgeschickt, es war schwer zu verstehen was es gemacht werden muss) einmal man verstanden hat (nach sehr viele stunden recherchieren), war die Aufgabe nicht so schwer. 14 | - die Größe der Aufgabe eingrenzen. Beispiel: ein esssenzieller commit kann auch "nur" eine Rechtschreibkorrektur sein. Zur Orientierung nochmal: Die Aufgaben sind auf ein bis max. zwei Stunden angelegt(!) 15 | - Beste Aufgabe Lösung mitteilen um die fehler zu korrigieren, sowieso sind die Aufgaben schon abgegeben und man kriegt keine Note mehr, das ist wichtig um nicht im Kurs mit der Fehler weiter zu gehen. 16 | 17 | ## Wetterdatenvisualisierung mit Python 18 | 19 | __vorab:__ Wiederholung der Einrichtung eines environmnets mit anaconda 20 | Wichtig: zunächst die aktuellen Skripte aus dem git-Repo ziehen (git pull, htw-pv3/weather-data, git bash) 21 | 22 | Das Setup von Anaconda (pv3_python_0_setup_environment.txt) liegt im git repo weather-data/python. Das Setup-Skript wird z.B. in der Windows-Eingabeaufforderung (als Admin) ausgeführt. 23 | 24 | ### Workflow python environment 25 | 26 | * Eingabeaufforderung (cmd) als Admin ausführen 27 | * in das Verzeichnis von git wechseln und anaconda version checken (conda --version) 28 | * environment erstellen [siehe Skript](https://github.com/htw-pv3/weather-data/blob/master/python/pv3_python_0_setup_environment.txt) Nur beim ersten mal, ansonsten überspringen 29 | * environment starten (activate - 30 | * Jupyter Notebook öffnen, Link aus der Cmd inklusive Token in Firefox oder Chrome öffnen 31 | 32 | # Hands-On-Übung 33 | 34 | * Well-known Fehler 35 | 36 | _Zugriff auf Datenbank wird verweigert_ 37 | 38 | __Fix:__ 39 | 40 | Port anpassen: port = '5432', Passwort checken (PW: "sonnja") 41 | 42 | 43 | _Grafik kann nicht erstellt werden_ 44 | 45 | __FIX:__ 46 | 47 | Den namen des Mat. Views auf "pv3.pv3_time_weather_wr1_2015_mview" ändern, 48 | 49 | Variablen auf "timestamp, p_ac" ändern 50 | 51 | 52 | * Spezialfehler 53 | 54 | * HTTP Error 55 | * in der cmd echo %path% eingeben, falls ihr den HTTP error bekommt müsst ihr zusützlich zu 56 | * C:\Users\Anaconda3\Scripts, C:\Users\Anaconda3\ den path Anaconda3\Library\bin als path eingeben 57 | * in der cmd: set PATH=%PATH%;C:\anaconda3\Library\bin (also einfach den pfad des bin ordners eingeben) 58 | * in der cmd: echo %path% und checken ob alle 3 paths aufgeführt werden 59 | 60 | _(OSError: [WinError 193] %1 is not a valid Win32 application)_ 61 | 62 | - Problem tritt auf beim import von pandas->numpy->ctype lib 63 | - Mögliche Probleme: Anaconda ist falsche Bit-Version 64 | 65 | _FIX:_ 66 | 67 | command: "set CONDA_FORCE_32BIT=1", danach neue env erstellen. Alle Packages werden dann in 32-Bit Version installiert 68 | 69 | - [stackoverflow](https://stackoverflow.com/questions/33709391/using-multiple-python-engines-32bit-64bit-and-2-7-3-5) 70 | 71 | 72 | * Debugging 73 | * Datenanalyse 74 | 75 | __Vorteile und Nachteile von Jupyter Notebook:__ 76 | 77 | _Zweck:_ Tutorials und Präsentationen 78 | 79 | - positiv 80 | - Link auf GitHub 81 | - GitHub stellt das gut dar 82 | - Einfacher Einstieg für Python 83 | 84 | - negativ 85 | - Komplizierter in git (Bilder, Run-Order) 86 | - Schwieriger zu debuggen 87 | - Kein verwenden von externen Skripten 88 | - Nicht geeignet zum schreiben von größeren Programmen (z.B. mehr als 3 Funktionen) 89 | 90 | 91 | ## Environments in jupyter notebooks: advanced -- add-on 92 | 93 | Links: 94 | 95 | - [nb\_conda\_kernels](https://github.com/Anaconda-Platform/nb_conda_kernels) 96 | - [Ipython kernel](https://ipython.readthedocs.io/en/stable/install/kernel_install.html) 97 | 98 | Einfach das Package im base-environment installieren: 99 | 100 | ``` 101 | conda install conda-forge::nb_conda_kernels 102 | ``` 103 | 104 | evtl muss in dem entsprechenden environment noch das Ipython kernel package installieren (erstmal ohne probieren): 105 | 106 | ``` 107 | conda activate d_py37_vis 108 | conda install ipykernel 109 | conda activate 110 | ``` 111 | 112 | -------------------------------------------------------------------------------- /minutes/2020-05-20_htw-pv3_pv-modelleriung-polysun.md: -------------------------------------------------------------------------------- 1 | # 2020-05-20 14:00 - 15:30 PV-Modellierung mit Polys -----#7 2 | 3 | ## Kurzes Feedback und aktueller Stand 4 | 5 | ### Fragen: 6 | 7 | - db_log: 8 | 9 | - project? welche ebene? z.B. pv3?o der aufgabe4? 10 | 11 | - version? was bedeutet das? 12 | 13 | - comment: "join_data" ausreichend? 14 | 15 | - reichen 4 gb RAM? jaja 16 | 17 | ### Rückmeldung Aufgaben # ToDo LH 18 | 19 | ### Aufgabe #7: Datenverknüpfung mittels SQL-Join 20 | ### Aufgabe #8: Systematische Bestimmung der Messlücken 21 | 22 | ## Skript PV-Modul (PV-Modellierung) 23 | 24 | 1. Zelltechnologien 25 | 26 | - Zellarten: kristallin (mono und poly) / dünnschicht / nanostrukturierte 27 | 28 | - Fokus: Standardzellen mit mono- und polykristalliner und dünnschicht (amorphes Silizium) Zellstruktur 29 | 30 | - Wirkungsgrad 31 | 32 | - Wirkungsgrade (Labor): mono: 25, poly: 20,4 und 13,2 % 33 | 34 | - Wirkungsgrade (Serienproduktion): mono: 17, poly: 16 und dünn: 7,5 % 35 | 36 | - Best Research-Cell Efficiencies ermöglicht Rückschluss auf Entwicklung(-sfähigkeit) der Zellarten 37 | 38 | - spektrale Antwort der Zellarten 39 | 40 | 2. Kennlinien -> Modellierung 41 | 42 | - U-I-Kennlinien-Ratespiel: Widerstand klein, Widerstand groß, Diode, Batterie (mit Innenwiderstand) 43 | 44 | - U-I-Kennlinie-PV-Modul: Kurzschlussstrom, Leerlaufspannung, MPP, Füllfaktor, Wirkungsgrad_PV 45 | 46 | - relativer Wirkungsgrad: Effizienz im Bezug auf Effizienz bei STC-Bedingungen 47 | 48 | - __Forschungsfrage:__ 49 | 50 | > Wie ist das Schwachlichtverhalten der Module? Wie ist die Häufigkeitsverteilung der Globalstrahlung und wie ist der Gesamtertrag der Zelltechnologien im Vergleich zu den anderen Zelltechnologien? 51 | 52 | 3. MPP ->Modellierung 53 | 54 | - Leistungskennlinie mit und ohne Beleuchtung/Bestrahlung: mit Beleuchutng = Dunkeltest: gibt Rückschluss auf das "Verbrauchsverhalten" des PV-Moduls. Wird in der Praxis durch eine Sperrdiode unterbunden. 55 | 56 | - Erste Näherung: Mit steigender Temperatur nimmt die Spannung im Pv-Modul ab. 57 | 58 | - __Forschungsfrage:__ 59 | 60 | > Kann das Temperaturverhalten der PV-Module (Theorie) anhand der Messdaten validiert werden? 61 | 62 | 63 | - MPP-Tracking: Verfahren, bei dem die elektirsche Belastung eines PV-Moduls so angepasst wird, dass die größte mögliche Leistung entnommen werden kann. Abhängig von Bestrahlungsstärke, Temp und Zelltyp. Durch Gleichspannungswandler elektronisch eingestellt. 64 | 65 | 4. Testbedingungen -> Datenblätter einlesen 66 | 67 | - STC (1000|25|-|-|1,5) und NOCT (800|-|20|1|1,5) siehe auch: https://photovoltaiksolarstrom.com/photovoltaiklexikon/standard-testbedingungen-stc/ 68 | 69 | - Festlegung von Standardbedingungen ermöglicht Vergleichbarkeit der Module 70 | 71 | 5. Modellierung(-saspekte) 72 | 73 | Modell zur Beschreibung von PV-Modulen in Komponenten: 74 | 75 | Physik der Sonnenstrahlung 76 | 77 | elektrisches Modell (ideal, einfach, Ein- und Zweidioden, effektives Solarzelle): Ersatzschaltbild / PV-Kennliniengleichung 78 | 79 | PVSOL und Polysun liefern wahrscheinlich keine präzisen/tiefen Aussagen über den Simulationskern 80 | 81 | 82 | Welche wichtigen Faktoren machen die PV-Simulationssoftware im Bezug auf die Versuchsanlage "SonnJa!" aus? 83 | 84 | - __Handling__: sollte möglichst einfach sein komplexe Einstellungen vorzunehmen 85 | - schneller Einstieg und bei Bedarf hoher __Detailierungsgrad__: 86 | - Grey-Box vs. Black-Box 87 | - Für wen ist die Software vorgesehen (__Standpunkt__)? 88 | - können __5 Modulfelder__ abgebildet werden? 5 Projekte vs. 1 Projekt. (Polysun=JA, aber keine Vorlage, PVSOL=?) 89 | - __Wetterdatensatz einpflegbar__ (PVSol=Ja, Polysun=?)? -> Auflösung 90 | - Berechnungsgeschwindigkeit -> wie lange muss man warten bis die Simulationsergebnisse ausgegeben werden? 91 | - Verschattungsanalyse 92 | - API (Schnittstelle zu anderen Programmen/Programmiersprachen) 93 | - Aktivität im Hilfeforum 94 | - Dokumentation 95 | - Datenbanken PV und WR: Aktualität und Breite der Datenbank 96 | 97 | 98 | ## Gruppenarbeit: 99 | 100 | - PVSol 101 | - Polysun 102 | 103 | 104 | Tutorials: PV-SOL 105 | 106 | - [2D_Anlagenplanung](http://downloads.valentin.de/webinar/PV_SOL_premium_2D_Anlagenplanung.wmv) 107 | 108 | - [3D_Anlagenplanung](http://downloads.valentin.de/webinar/PV_SOL_premium_3D_Anlagenplanung.wmv) 109 | 110 | 111 | 112 | __WICHTIGER LINK:__ informationen zur Versuchanlage SonnJa (Datenblätter, Messsystem, tech. Zeichnungen) 113 | https://next.rl-institut.de/s/LRi8yMsxob6toeY 114 | 115 | ## Polysun Einstellungen 116 | 117 | Projekt 118 | 119 | - Projektname: SonnJA-WR1 120 | - Bemerkung: WR1 121 | - Standort aus Karte: 52,455 / 13,525 HüN 35 Name HTW-Berlin (G-Geb) 122 | 123 | Vorlage: 124 | 125 | - Energie-Erzeuger 126 | 127 | - Photovoltaik: Ja da neben auch Photovoltaik 128 | 129 | - Anlagen-Spezifikation 130 | 131 | - Kollektor-/Generatorfeld: Ein Feld 132 | 133 | - Unter der Vorlagen : 50a: Photovoltaik auswählen 134 | 135 | 136 | Netz: 137 | 138 | - Stromnetz: Dreiphasen (230V/400V, 50 Hz, Stern, DE) 139 | 140 | PV Generatorfeld: 141 | 142 | - Generatorfeld: 143 | 144 | - Modultyp: ASI 105, Katalognr.: 115184 145 | 146 | - Ausrichtung: -35 147 | 148 | - Anstellwinkel: 15 (14,57) 149 | 150 | - Anzahl Module: 30 151 | 152 | 153 | PV Auslegung: 154 | 155 | - Filter 156 | 157 | - Hersteller: Danfoss S/A -> funktioniert nicht! was tun? 158 | 159 | - max. Wechselrichtertypen: 3 160 | 161 | - Auslegungskonzept: Strangwechselrichter 162 | 163 | 164 | Katalognummern der Module: 165 | 166 | - Aleo Solar: 167 | - S19L285: 174700 168 | - S18.240: 208020 169 | - S19.245: 116014 170 | - Schott: 171 | - ASI 105: 115184 -------------------------------------------------------------------------------- /minutes/2020-05-06_htw-pv3_postgresql_II.md: -------------------------------------------------------------------------------- 1 | # 2020-05-06 14:00 - 15:30 Wetterdatenverarbeitung mit PostgreSQL II -----#5 2 | 3 | # Auswertung Abgaben Aufgaben #1 und #2 4 | 5 | ## Bewertungen 6 | * Kriterien 7 | * Veröffentlichung der Bewertungen? 8 | * Zeigen von Best- and Worst-Practices? 9 | 10 | ## Dokumentation 11 | * Beispiel Aufgabe 1: 12 | * Beschreiben und Dokumentieren Sie kurz ihr Vorgehen. 13 | * Wie kann das Programm klassifiziert werden? Welche Lizenz hat das Programm? Welche Version(en) gibt es? Auf welchen OS läuft es? Wo kann ich es downloaden? Wie groß ist das Programm? Warum werde ich es verwenden? 14 | * Was bedeutet "Dokumentation des Vorgehens" 15 | 16 | ## Abgaben Datei 17 | * Geeignete Dateiformate: PDF, + .bib + .sql + .py 18 | * Dateibenennung: 2020-05-06_HTW-PV3_Aufgabe1_Hulk.pdf 19 | * Datum ISO 8601 https://xkcd.com/1179/ 20 | * Wie sieht eine perfekte Abgabe aus? 21 | * Wie werden verschiedene Formate abgegeben? 22 | * Wie Dokumentiere ich Zusammenarbeit? 23 | 24 | 25 | ## Kommentare aus den den Abgaben 1: 26 | * {GitHub: warum das zusätzlich zu gitSCM?}, Client! 27 | * Lizenz: Online Plattform, kürzlich gekauft von Microsoft 28 | * Warum werde ich es verwenden: zur Erstellung und Verwendung eines gemeinsamen Git Repositories, ggf. zur Veröffentlichung der Arbeit 29 | * .tex vs. .bib 30 | * Validierung von Dateien 31 | * Programmgröße={ 563MB}, 32 | * file_size={} Installer 33 | * progamm_size={} Installiert 34 | 35 | 36 | ## Kommentare aus den den Abgaben 2: 37 | * Alles wurde erfolgreich installiert 38 | * __MACOSX in ZIP 39 | * Folie 5 "merge.tool" nicht nachvollziehbar 40 | * PUTTY für SSH Key nicht erfolgreich (!) - ssh-key angelegt, aber konnte nicht zu GitHub hinzugefügt werden, weil nicht im OpenSSH-Format(!) 41 | * Folie 28 nicht nachvollziehbar (conda install jupyter) 42 | * Git - Keine Probleme bei der Installation. Schritte aus den Folien durchgeführt 43 | * Anaconda - Keine Probleme bei der Installation. Installation erfolgte in das Verzeichnis „C:\Anaconda“ ohne Leerstellen, so dass hoffentlich keine Fehler beim Ausführen enstehen. Schritte aus den Folien ausprobiert. 44 | * Polysun und PVsol hab ich noch nicht installiert, da mir noch die Lizenzschlüssel fehlen 45 | * Ist bei mir schon Installiert und bin damit sehr zufrieden. Installation wahr damals auch sehr einfach. 46 | * Leider konnte ich aufgrund meines Speicherplatzes meine Installationen nicht vollenden. Ich habe mein Speicher angepasst und Sachen die ich nicht mehr brauche gelöscht und es hat leider immer noch nicht gereicht. Als beweis habe ich ihnen Screenshots oben beigefügt. Ich hoffe ich bekomme wegen diesem Problem keine Minus Punkte. 47 | * Internetexplorer in der Taskleiste, kann ich mir das erlauben ;) 48 | * PVSol - benötigt Windoof bzw. eine VM. Wurde deshalb nicht installiert. 49 | * DIE ANWENDUNGEN.pdf - genau mein Humor 50 | * Python/Conda activate BASE 51 | * Postgresql - Ich habe das Programm installiert. Das Programm mochte volle Zugriff auf meiner Festplatte. Das sehe ich sehr skeptisch an. Ich lese mich noch ein und entscheide im Laufe der Woche darüber, ansonsten installiere ich es auf einem anderen Rechner. LH wird uns keine Schadsoftware empfehlen 52 | * Alle Screenshots vs. "kurze Dokumentation" 53 | * Kann ich Hardware voraussetzen? -> Augabe 1 Recherche und Vorbereitung? 54 | * Remodesktop auf die HTW 55 | * Kann ich ein OS voraussetzen? -> Win und/oder Linux ... Sorry Macboys 56 | * Remodesktop auf die HTW 57 | * Spracheinstellungen des OS -> Auf eigene Gefahr 58 | 59 | 60 | # Finalisierung PV-Software: 61 | 62 | * Polysun 11.3 63 | * 1 pro Person - jeweils nur auf einem Endgerät installieren / gültig bis 30.09.2020 64 | * PVsol Premium 2020-7 65 | * 1 pro Person - jeweils nur auf einem Endgerät installieren / gültig bis 30.09.2020 66 | * PVsyst 6-8-6 67 | * 1 für alle - nur auf Dozenten-PC installieren / gültig bis 30.09.2020 68 | * Monat Testversion für jeden (3.6.2020 - 3.7.2020)!!! 69 | 70 | 71 | # Ausführen der Datenbank-Skripte 72 | 1. Setup 73 | 2. Iport 74 | 3. Berechnungen (JOIN) 75 | 4. Export 76 | 77 | 78 | # Wetterdatenvisualisierung mit Python in Jupyter Notebook (Jupy) 79 | * Anlegen einer Python-Environment 80 | * Starten von Jupy 81 | * Ausführen und Datenanalysen 82 | 83 | 84 | # Protokoll: 85 | 86 | ## SQL-Querries: 87 | 88 | * Alle Skripte funkionieren auch ohne korrigierte Metadaten 89 | * .csv - Dateien nicht öffnen 90 | 91 | 1. Servergruppe erstellen: 92 | 1. Servers -> create -> Server Group bspw. HTW-PV3 93 | 2. Server erstellen: HTW-PV3 -> create -> Server 94 | - Reiter General: Name == PostgresSQL 12 95 | - Reiter Connection: Host name/address == localhost 96 | - save 97 | 2. Skript 1 ausführen: User anlegen 98 | 1. postgres Datenbank auswählen 99 | 2. rechtsklick postgres (Datenbank) -> Querry Tool -> Skript einfügen -> run 100 | 3. rechtsklick Databases -> refresh 101 | 4. rechtsklick PostgresSQL 12 (server) -> diconnect database 102 | 5. rechtsklick postgres (Datenbank) -> properties -> Reiter Connection -> Username = sonnja -> safe 103 | 6. rechtsklick PostgresSQL 12 (server) -> connect Server -> password == sonnja 104 | 2. Skript 2 ausführen: Datenbank "sonnja_db" erstellen 105 | 1. rechtsklick Databases -> create -> Database>Create und Einstellugen gem. Skript 2 (Body) vornehmen 106 | 3. Skript 3: erstellen von Schema Pv3: 107 | 1. rechtsklick sonnja_db (Datenbank) -> Query Tool -> Skript einfügen -> run 108 | 2. Skript 3 reinkopieren>Run 109 | 3. Refresh mit Rechtsklick auf SChemas 110 | 4. Skript 4: erstellen der DB_log (Logging option) 111 | - Achtung: Skript 4 müssen die Metadaten noch angepasst werden 112 | - von Kilian geupdated https://github.com/htw-pv3/weather-data/blob/MyMetaData/helfenbein_kilian/postgresql/htw_pv3_postgresql_04_function_db_log.sql 113 | 5. rechtsklick sonnja_db (Datenbank) -> Query Tool ->Skript einfügen -> run 114 | 6. Skript 4: 115 | - einfach ausführen (was muss ausgewählt sein?) -> 116 | - Erstellt eine Funktion, die in verschiedenen nachfolgenden Skripten verwendet wird, um Datenbank-Veränderungen verpflegen zu können. 117 | 118 | ### Datenabschnitt ansehen: Rechtsklick auf einleuchtend_wrdata_2015_wr1>ViewData 119 | * die Abschnitte werden nur angezeigt und nicht verändert. Keine Ansgst bei Abfragen. 120 | * Im Query Editor kann anschließedn die Vorschirft angepasst werden, welche Datenabschnitte man sich ansieht. 121 | * Beispiel: zeigt 500 Einträge wo u_pv und i_pv "Null" ist 122 | - SELECT* 123 | FROM pv3.einleuchtend_wrdata_2015_wr1 124 | WHERE u_pv = 0 AND i_pv = 0ORDER BY "Timestamp" 125 | ASC LIMIT 500 126 | * Für weitere Abfragen siehe: SQL_cheat_sheats und Abschnitt "timestamp-Abfragen im yopad-2 127 | 128 | ### Fragestellung: Wo sind die Lücken in den Wechselrichter-Daten? 129 | * siehe: Skript 5_data_join 130 | 131 | ### Fehlernachrichten in pgAdimn 4 können sich auf die vorherige oder darauffolgende Zeile beziehen. 132 | 133 | # Ziel für heute: alle Skripte bis Skript 5 ausgeführt haben(!) 134 | * db_log (Logbuch) exportieren um nachzuweisen, dass wir eine Aufgabe erledigt haben 135 | 136 | 137 | ##### Falls eine Aufgabenstellung unklar ist und mehr als eine Stunde dauert, Email an LH schreiben 138 | ##### Fragen zu Aufgaben in das zweite pad: https://yopad.eu/p/HTW-PV3-2020-2 139 | 140 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Creative Commons Legal Code 2 | 3 | CC0 1.0 Universal 4 | 5 | CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE 6 | LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN 7 | ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS 8 | INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES 9 | REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS 10 | PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM 11 | THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED 12 | HEREUNDER. 13 | 14 | Statement of Purpose 15 | 16 | The laws of most jurisdictions throughout the world automatically confer 17 | exclusive Copyright and Related Rights (defined below) upon the creator 18 | and subsequent owner(s) (each and all, an "owner") of an original work of 19 | authorship and/or a database (each, a "Work"). 20 | 21 | Certain owners wish to permanently relinquish those rights to a Work for 22 | the purpose of contributing to a commons of creative, cultural and 23 | scientific works ("Commons") that the public can reliably and without fear 24 | of later claims of infringement build upon, modify, incorporate in other 25 | works, reuse and redistribute as freely as possible in any form whatsoever 26 | and for any purposes, including without limitation commercial purposes. 27 | These owners may contribute to the Commons to promote the ideal of a free 28 | culture and the further production of creative, cultural and scientific 29 | works, or to gain reputation or greater distribution for their Work in 30 | part through the use and efforts of others. 31 | 32 | For these and/or other purposes and motivations, and without any 33 | expectation of additional consideration or compensation, the person 34 | associating CC0 with a Work (the "Affirmer"), to the extent that he or she 35 | is an owner of Copyright and Related Rights in the Work, voluntarily 36 | elects to apply CC0 to the Work and publicly distribute the Work under its 37 | terms, with knowledge of his or her Copyright and Related Rights in the 38 | Work and the meaning and intended legal effect of CC0 on those rights. 39 | 40 | 1. Copyright and Related Rights. A Work made available under CC0 may be 41 | protected by copyright and related or neighboring rights ("Copyright and 42 | Related Rights"). Copyright and Related Rights include, but are not 43 | limited to, the following: 44 | 45 | i. the right to reproduce, adapt, distribute, perform, display, 46 | communicate, and translate a Work; 47 | ii. moral rights retained by the original author(s) and/or performer(s); 48 | iii. publicity and privacy rights pertaining to a person's image or 49 | likeness depicted in a Work; 50 | iv. rights protecting against unfair competition in regards to a Work, 51 | subject to the limitations in paragraph 4(a), below; 52 | v. rights protecting the extraction, dissemination, use and reuse of data 53 | in a Work; 54 | vi. database rights (such as those arising under Directive 96/9/EC of the 55 | European Parliament and of the Council of 11 March 1996 on the legal 56 | protection of databases, and under any national implementation 57 | thereof, including any amended or successor version of such 58 | directive); and 59 | vii. other similar, equivalent or corresponding rights throughout the 60 | world based on applicable law or treaty, and any national 61 | implementations thereof. 62 | 63 | 2. Waiver. To the greatest extent permitted by, but not in contravention 64 | of, applicable law, Affirmer hereby overtly, fully, permanently, 65 | irrevocably and unconditionally waives, abandons, and surrenders all of 66 | Affirmer's Copyright and Related Rights and associated claims and causes 67 | of action, whether now known or unknown (including existing as well as 68 | future claims and causes of action), in the Work (i) in all territories 69 | worldwide, (ii) for the maximum duration provided by applicable law or 70 | treaty (including future time extensions), (iii) in any current or future 71 | medium and for any number of copies, and (iv) for any purpose whatsoever, 72 | including without limitation commercial, advertising or promotional 73 | purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each 74 | member of the public at large and to the detriment of Affirmer's heirs and 75 | successors, fully intending that such Waiver shall not be subject to 76 | revocation, rescission, cancellation, termination, or any other legal or 77 | equitable action to disrupt the quiet enjoyment of the Work by the public 78 | as contemplated by Affirmer's express Statement of Purpose. 79 | 80 | 3. Public License Fallback. Should any part of the Waiver for any reason 81 | be judged legally invalid or ineffective under applicable law, then the 82 | Waiver shall be preserved to the maximum extent permitted taking into 83 | account Affirmer's express Statement of Purpose. In addition, to the 84 | extent the Waiver is so judged Affirmer hereby grants to each affected 85 | person a royalty-free, non transferable, non sublicensable, non exclusive, 86 | irrevocable and unconditional license to exercise Affirmer's Copyright and 87 | Related Rights in the Work (i) in all territories worldwide, (ii) for the 88 | maximum duration provided by applicable law or treaty (including future 89 | time extensions), (iii) in any current or future medium and for any number 90 | of copies, and (iv) for any purpose whatsoever, including without 91 | limitation commercial, advertising or promotional purposes (the 92 | "License"). The License shall be deemed effective as of the date CC0 was 93 | applied by Affirmer to the Work. Should any part of the License for any 94 | reason be judged legally invalid or ineffective under applicable law, such 95 | partial invalidity or ineffectiveness shall not invalidate the remainder 96 | of the License, and in such case Affirmer hereby affirms that he or she 97 | will not (i) exercise any of his or her remaining Copyright and Related 98 | Rights in the Work or (ii) assert any associated claims and causes of 99 | action with respect to the Work, in either case contrary to Affirmer's 100 | express Statement of Purpose. 101 | 102 | 4. Limitations and Disclaimers. 103 | 104 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 105 | surrendered, licensed or otherwise affected by this document. 106 | b. Affirmer offers the Work as-is and makes no representations or 107 | warranties of any kind concerning the Work, express, implied, 108 | statutory or otherwise, including without limitation warranties of 109 | title, merchantability, fitness for a particular purpose, non 110 | infringement, or the absence of latent or other defects, accuracy, or 111 | the present or absence of errors, whether or not discoverable, all to 112 | the greatest extent permissible under applicable law. 113 | c. Affirmer disclaims responsibility for clearing rights of other persons 114 | that may apply to the Work or any use thereof, including without 115 | limitation any person's Copyright and Related Rights in the Work. 116 | Further, Affirmer disclaims responsibility for obtaining any necessary 117 | consents, permissions or other rights required for any use of the 118 | Work. 119 | d. Affirmer understands and acknowledges that Creative Commons is not a 120 | party to this document and has no duty or obligation with respect to 121 | this CC0 or use of the Work. 122 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | # Collaborative Development 5 | 6 | ## Prerequisites 7 | - [Git](https://git-scm.com/) 8 | - [GitHub](https://github.com/) 9 | 10 | ## Types of interaction 11 | This repository is following the [Contributor Covenant Code of Conduct](https://github.com/rl-institut/super-repo/blob/main/CODE_OF_CONDUCT.md).
12 | Please be self-reflective and always maintain a good culture of discussion and active participation. 13 | 14 | ### A. Use 15 | Since the open license allows free use, no notification is required. 16 | However, for the authors it is valuable information who uses the software for what purpose. 17 | Indicators are `Watch`, `Fork` and `Starred` of the repository. 18 | If you are a user, please add your name and details in USERS.cff 19 | 20 | ### B. Comment 21 | You can give ideas, hints or report bugs in issues, in PR, at meetings or other channels. 22 | This is no development but can be considered a notable contribution. 23 | If you wish, add your name and details to `CITATION.cff`. 24 | 25 | ### C. Contribute and Review 26 | You add code and become an author of the repository. 27 | You must follow the workflow! 28 | 29 | ### D. Mantain and Release 30 | You contribute and take care of the repository. 31 | You review and answer questions. 32 | You coordinate and carry out the release. 33 | 34 | ## Workflow 35 | The workflow for contributing to this project has been inspired by the workflow described by [Vincent Driessen](https://nvie.com/posts/a-successful-git-branching-model/). 36 | 37 | ### 1. Describe the issue on GitHub 38 | Create [an issue](https://help.github.com/en/articles/creating-an-issue) 39 | in the GitHub repository. 40 | The `issue title` describes the problem you will address.
41 | This is an important step as it forces one to think about the "issue". 42 | Make a checklist for all needed steps if possible. 43 | 44 | ### 2. Solve the issue locally 45 | 46 | #### 2.0. Get the latest version of the `develop` branch 47 | Load the `develop branch`: 48 | ```bash 49 | git checkout dev 50 | ``` 51 | 52 | Update with the latest version: 53 | ```bash 54 | git pull 55 | ``` 56 | 57 | #### 2.1. Create a new (local) branch 58 | Create a new branch: 59 | ```bash 60 | git checkout -b feature-1314-my-feature 61 | ``` 62 | 63 | Naming convention for branches: `type`-`issue-nr`-`short-description` 64 | 65 | ##### `type` 66 | * main / stable / (master) - includes the current stable version 67 | * develop - includes all current developments 68 | * feature - includes the feature that will be implemented 69 | * hotfix - includes small improvements before an release, should be branched from a release branch 70 | * release - includes the current version to be released 71 | 72 | The majority of the development will be done in `feature` branches. For more information on branches and the branching-model click this link. 73 | https://nvie.com/posts/a-successful-git-branching-model/ 74 | 75 | ##### `issue-nr` 76 | The `issueNumber` should be taken from Step 1. Do not use the "#". 77 | 78 | ##### `short-description` 79 | Describe shortly what the branch is about. 80 | Avoid long and short descriptive names for branches, 2-4 words are optimal. 81 | 82 | ##### Other hints 83 | - Separate words with `-` (minus) 84 | - Avoid using capital letters 85 | - Do not put your name to the branch name, it's a collaborative project 86 | - Branch names should be precise and informative 87 | 88 | Examples of branch names: `feature-42-add-new-ontology-class` or `feature-911-branch-naming-convention` 89 | 90 | #### 2.2. Start editing the files 91 | - Divide your feature into small logical units 92 | - Start to write the documentation or a docstring 93 | - Don't rush, have the commit messages in mind 94 | - Add your changes to the CHANGELOG.md 95 | 96 | On first commit to the repo: 97 | - Add your name and details to CITATION.cff 98 | 99 | Check branch status: 100 | ```bash 101 | git status 102 | ``` 103 | 104 | #### 2.3. Commit your changes 105 | If the file does not exist on the remote server yet, use: 106 | ```bash 107 | git add filename.md 108 | ``` 109 | 110 | Then commit regularly with: 111 | ```bash 112 | git commit filename.md 113 | ``` 114 | 115 | Write a good `commit message`: 116 | - "If applied, this commit will ..." 117 | - Follow [existing conventions for commit messages](https://chris.beams.io/posts/git-commit) 118 | - Keep the subject line [shorter than 50 characters](https://chris.beams.io/posts/git-commit/#limit-50) 119 | - Do not commit more than a few changes at the time: [atomic commits](https://en.wikipedia.org/wiki/Atomic_commit) 120 | - Use [imperative](https://chris.beams.io/posts/git-commit/#imperative) 121 | - Do not end the commit message with a [period](https://chris.beams.io/posts/git-commit/#end) ~~.~~ 122 | - Allways end the commit message with the `issueNumber` including the "#" 123 | 124 | Examples of commit message: `Added function with some method #42` or `Update documentation for commit messages #1` 125 | 126 | #### 2.4 Fix your latest commit message 127 | Do you want to improve your latest commit message?
128 | Is your latest commit not pushed yet?
129 | Edit the commit message of your latest commit: 130 | ```bash 131 | git commit --amend 132 | ``` 133 | 134 | ### 3. Push your commits 135 | Push your `local` branch on the remote server `origin`.
136 | If your branch does not exist on the remote server yet, use: 137 | ```bash 138 | git push --set-upstream origin feature-1314-my-feature 139 | ``` 140 | 141 | Then push regularly with: 142 | ```bash 143 | git push 144 | ``` 145 | 146 | ### 4. Submit a pull request (PR) 147 | Follow the GitHub guide [creating-a-pull-request](https://help.github.com/en/articles/creating-a-pull-request).
148 | The PR should be directed: `base: develop` <- `compare: feature-1-collaboration`.
149 | Add the line `Close #` in the description of your PR. 150 | When it is merged, it [automatically closes](https://help.github.com/en/github/managing-your-work-on-github/closing-issues-using-keywords) the issue.
151 | Assign a reviewer and get in contact. 152 | 153 | #### 4.0. Let someone else review your PR 154 | Follow the GitHub guide [approving a pull request with required reviews](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/approving-a-pull-request-with-required-reviews). 155 | Wait for someone else to review your PR. 156 | 157 | If you are the reviewer: 158 | - Check the changes in all corresponding files. 159 | - Checkout the branch and run code. 160 | - Comment if you would like to change something (Use `Request changes`) 161 | - If all tests pass and all changes are good, `Approve` the PR. 162 | - Leave a comment and some nice words! 163 | 164 | #### 4.1. Merge the PR 165 | Follow the GitHub guide [merging a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request). 166 | 167 | #### 4.2. Delete the feature branch 168 | Follow the GitHub guide [deleting a branch](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository#deleting-a-branch). 169 | 170 | ### 5. Close the issue 171 | Document the result in a few sentences and close the issue.
172 | Check that all steps have been documented: 173 | 174 | - Issue title describes the problem you solved? 175 | - All commit messages are linked in the issue? 176 | - The branch was deleted? 177 | - Entry in CHANGELOG.md? 178 | - PR is closed? 179 | - Issue is closed? 180 | -------------------------------------------------------------------------------- /crib-sheet_git.md: -------------------------------------------------------------------------------- 1 | # Crib Sheet - GIT 2 | 3 | # Cheat Sheet Collection 4 | 5 | ## git 6 | 7 | [git-cheat-sheet by github](https://github.github.com/training-kit/downloads/github-git-cheat-sheet.pdf) 8 | 9 | [git-cheat-sheet by tower](https://user-images.githubusercontent.com/14353512/80648952-5fb73080-8a71-11ea-8c5a-1297b1c4a9fd.png) 10 | 11 | 12 | ## Git Setup Configuration in GitBash (Open GitBash as Admin) 13 | 14 | ### Your Identity 15 | >git config --global user.name "John Doe"
16 | git config --global user.email johndoe@example.com 17 | 18 | ### Your Editor Programm 19 | >git config --global core.editor "'C:/Programme_RE/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin" 20 | 21 | ### Checking Your Settings 22 | >git config --list 23 | 24 | ### Checking and Edit The Global Settings 25 | >git config --global --edit 26 | 27 | ### Open in your Editor the file bash.bashrc from the Directory C:\Git\etc\ and Add at the end of the file the following lines: 28 | >start from
29 | cd C:/git/github; 30 | 31 | ### Check that you are under C:/git/github/htw-pv3 32 | , otherwise write as follows; 33 | >cd C:/git/github/htw-pv3 34 | 35 | ### Cloning the Repository literature in htw-pv3/literature: 36 | >git clone https://github.com/htw-pv3/literature.git 37 | 38 | ### Cloning the Repository wheather-data in htw-pv3/weather-data: 39 | >git clone https://github.com/htw-pv3/weather-data.git 40 | 41 | ### Going inside the directory literature (C:/git/github/htw-pv3/literature) 42 | , it will change to master 43 | >cd literature 44 | 45 | ### Checking the Status of the Files and the changes 46 | >git status 47 | 48 | ### Checking the Status and the changes associated with users and Structure of branches (Tree form with content and code) 49 | >gitk 50 | 51 | ### Changing the name or extention of a File 52 | >git mv git_cheat_sheet.txt git_cheat_sheet.md 53 | 54 | ### TRACKING New Files or STAGING Modified Files: with git add is a multipurpose command 55 | you use it to begin tracking new files, to stage files and to do other things 56 | like marking merge-conflicted files as resolved. It may be helpful to think of it more as “add precisely this content to the next commit” rather than “add this file to the project” 57 | >git add git_cheat_sheet.md 58 | 59 | ### Confirm or committing the changes with a message -m and jumping the git add with -a 60 | Adding the -a option to the git commit command makes Git automatically stage every file that is already tracked before doing the commit, letting you skip the git add part from before. *It is important to leave a space before # to give the Hashtag or Ticketnumber* 61 | >git commit -a -m "Changing the File extension #6" 62 | 63 | ### Creating a new File in the actual Folder and open it with the editor 64 | >start notepad++ Codes_GitBash_So_Far.md 65 | 66 | ### Removing a File 67 | >git rm Codes_GitBash_So_Far.md 68 | 69 | ### Commiting the delete of the file 70 | >git commit -m "remove the File #6" 71 | 72 | ### See all the Branches 73 | >git branch -av 74 | 75 | ### Creating a new Branch 76 | >git checkout -b feature/gitbash-code-so-far#10 77 | 78 | ### Creating a new File in the actual Branch 79 | >start notepad++ Codes_GitBash_So_Far.md 80 | 81 | ### Commiting (Contribute) The Tracked changes 82 | >git commit -m "GitBash_Code_So_Far #10" 83 | 84 | ### Or jumping the step of tracking the File just with -a 85 | >git commit -a -m "GitBash_Code_So_Far #10" 86 | 87 | 88 | 89 | ### Deleting a Remote Branch 90 | *Just if you made a mistake and you pushed (published) the branch already* 91 | >git push origin --delete feature/gitbash-code-so-far#10 92 | 93 | Or 94 | >git branch -dr feature/gitbash-code-so-far-#10 95 | 96 | ### Deleting a Local Branch with mistakes 97 | *Just if you made a mistake* 98 | >git checkout master
99 | git branch -D feature/gitbash-code-so-far-#10 100 | 101 | ### Staging and commiting the Modified File (Updates) before merge (Tracking the File) 102 | >git commit -a -m "GitBash_Code_So_Far #10" 103 | 104 | ### Upload the remote changes (Commits) to the remote already created PullRequest(PR) 105 | >git push --set-upstream origin feature/gitbash-code-so-far-#10 106 | 107 | ### Merge the branch after Positiv Review of members (has to be done in GitHub GUI or try the following): 108 | >git merge --no--ff feature/gitbash-code-so-far-#10 109 | 110 | ### Closing an issue related to the PR in the same repository 111 | >close #issue_number 112 | 113 | ### Changing to the master or dev Branch 114 | >git checkout master ***OR*** dev 115 | 116 | 117 | 118 | ### Show all branches 119 | >git branch -a 120 | 121 | ### Show all upstreams 122 | >git remote show origin 123 | 124 | ### Switch to branch 125 | >git checkout #branch_name 126 | 127 | ### Switch to branch and create if it does not exist 128 | >git checkout -b #branch_name 129 | 130 | ### Check changes on the server (server->local) 131 | >git fetch 132 | 133 | ### Transfer change from server (server->local->merge) 134 | >git pull 135 | 136 | ### Transfer changes (commits) to the server (local->server) 137 | >git push 138 | 139 | ### Transfer changes to a new branch on the server (local->server) 140 | >git push -u origin #branch_name 141 | 142 | ### Display changes of a specific file 143 | >git log --follow #file 144 | 145 | ### Commit all tracked changes 146 | >git commit -m "#your_comment" 147 | 148 | ### Admin 149 | >git config --global core.editor „‘D:/Notepad++/notepad++.exe‘ -multiInst -notabbar -nosession -noPlugin“ 150 | 151 | ### Information Display Command Guide 152 | >git help 153 | 154 | # Literature on Git 155 | 156 | Git is an open source version control system. 157 | The following links contain tutorials for git and github. 158 | They summarize essential features of the software and show the most common commands, especially for git bash. 159 | 160 | 1. Title: **Hello World - Github Guides** 161 | 162 | - URL: https://guides.github.com/activities/hello-world/ 163 | - Keyword: Deutsch, Verwendung der Git ohne Kommandozeilen, Beginner 164 | 165 | 2. Title: **Git Cheat Sheet** 166 | 167 | - URL: https://github.github.com/training-kit/downloads/github-git-cheat-sheet.pdf 168 | - Comment: GIT Cheat Sheet von GitHub 169 | - Keyword: Spickzettell 170 | 171 | 3. Title: **Pro Git book** 172 | 173 | - Autor: Scott Chacon and Ben Straub 174 | - URL: https://git-scm.com/book/en/v2 175 | - Keyword: Englisch, Advance, pdf 176 | 177 | 4. Title: **GIT-Tutorium Teil 1** 178 | 179 | - Autor: Sujeevan Vijayakumaran 180 | - Date: 12/2014 181 | - URL: http://www.freiesmagazin.de/mobil/freiesMagazin-2014-12-bilder.html#fm_14_12_git_teil1 182 | - Keyword: Deutsch, advance 183 | 184 | 5. Title: **GIT-Tutorium Teil 2** 185 | - Autor: Sujeevan Vijayakumaran 186 | - Date: 01/2015 187 | - URL: http://www.freiesmagazin.de/mobil/freiesMagazin-2015-01-bilder.html#fm_15_01_git_teil2 188 | - Keyword: Deutsch, advance 189 | 190 | 6. Title: **GIT-Tutorium Teil 3** 191 | - Autor: Sujeevan Vijayakumaran 192 | - Date: 02/2015 193 | - URL: http://www.freiesmagazin.de/mobil/freiesMagazin-2015-02-bilder.html#fm_15_02_git_teil3 194 | - Keyword: Deutsch, advance 195 | 196 | 7. Title: **Git Merge** 197 | - Autor: Webseite 04/2016 198 | - URL: https://www.atlassian.com/git/tutorials/using-branches/git-merge 199 | - Keyword: Englisch, beginner 200 | 201 | # Video tutorials for Git/GitHub**. 202 | 203 | For some topics you can find some explanation videos around Git/GitHub on YouTube. 204 | More helpful tutorials can be added here. 205 | 206 | 1. Title: **Lokale Repositories** 207 | - Author: The Morpheus Tutorials 208 | - Duration: 8:43 min 209 | - Date: 2017-01-31 210 | - URL: https://www.youtube.com/watch?v=9RbU-h0NH0A&list=PLNmsVeXQZj7rbmmqb1Lt_RGU4DEhelTrR&index=1 211 | - Keyword: Deutsch, beginner, repositories 212 | 213 | 2. Title: **Branches, Merges, etc** 214 | - Autor: The Morpheus Tutorials 215 | - Duration: 10:06 min 216 | - Date: 2017-02-10 217 | - URL: https://www.youtube.com/watch?v=ZVoSBA03Tdc&list=PLNmsVeXQZj7rbmmqb1Lt_RGU4DEhelTrR&index=3 218 | - Keyword: Deutsch, beginner, branches 219 | 220 | 3. Title: **Pull-Requests** 221 | - Autor: The Morpheus Tutorials 222 | - Duration: 10:16 min 223 | - Date: 2018-12-11 224 | - URL: https://www.youtube.com/watch?v=l8MZCnrSeQQ&list=PLNmsVeXQZj7rbmmqb1Lt_RGU4DEhelTrR&index=6 225 | - Keyword: Deutsch, beginner, pull 226 | 227 | 4. Title: **Issues** 228 | - Autor: The Morpheus Tutorials 229 | - Duration: 6:47 min 230 | - Date: 2018-12-13 231 | - URL: https://www.youtube.com/watch?v=wSHNvdRjB9Q&list=PLNmsVeXQZj7rbmmqb1Lt_RGU4DEhelTrR&index=8 232 | - Keyword: Deutsch, beginner, issues 233 | 234 | 5. Title: **Workflow** 235 | - Autor: Pilzschaf 236 | - Duration: 12:44 min 237 | - Date: 2016-10-08 238 | - URL: https://www.youtube.com/watch?v=hSbJaIdqwKg 239 | - Keyword: Deutsch, beginner, workflow 240 | 241 | 6. Titel: **Crash Course** 242 | - Autor: freeCodeCamp.org 243 | - Länge: 01:08:29 min 244 | - Datum: 2020-05-28 245 | - URL: https://youtu.be/RGOj5yH7evk 246 | - Keyword: Englisch, Beginners, Crash Course 247 | 248 | # Git GUI's 249 | 250 | To visualize the Git repo and create the overview on the project, the following are the GUI of Git. (*** not recommended ***) 251 | 252 | 1. ** Sourcetree ** 253 | 2. ** Git Extensions ** 254 | 3. ** CodeReview ** 255 | 4. ** GitBlade ** 256 | 5. ** SmartGit ** 257 | 6. ** ungit ** 258 | -------------------------------------------------------------------------------- /minutes/2020-04-29_htw-pv3_postgresql.md: -------------------------------------------------------------------------------- 1 | # 2020-04-29 14:00 - 15:30 Wetterdatenaufbereitung mit PostgreSQL 2 | 3 | ## Feedback zur Übung / Generell: 4 | 5 | * Relativ wenig Antworten 6 | 7 | * Werden die nächsten Tage bewertet 8 | 9 | 10 | 11 | ## Fragen zu git und GitHub: 12 | 13 | * Wie kann ich einen Pull Request über git scm in den Master starten?* Hab das jetzt über GitHub gemacht. [Link](https://github.com/htw-pv3/literature/pull/9) 14 | 15 | ->Die Pull Requests (PR) sollten über GitHub erstellt werden. Das geht auch über die GitBash, aber Ziel des PR ist eine Dokumentation und Kommunikation (Review mit 4-Augen-Prinzip) 16 | 17 | 18 | * Wie sieht der "git workflow" genau aus? 19 | 20 | -> Habe dazu ein kurzes Video-Tutorial gemacht. 21 | 22 | 23 | * Was ist eine "gute Commit-Message"? 24 | 25 | -> Verb - Nomen - #Ticketnummer 26 | 27 | 28 | * Was ist eine "schlechte Commit-Message"? 29 | -> 30 | 31 | 32 | * Darf ich jemals direkt auf den Master-Branch pushen? 33 | 34 | -> Nein! 35 | 36 | 37 | ## Quick-Walkthrough: Protokolle aufbereiten 38 | 39 | * issue erstellen lohnt sich ab einer Bearbeungsdauer von 1 bis 2 Stunden 40 | 41 | * Hot-Fixes direkt drauf (Rechtschreibfehler, keine substanziellen Veränderungen, selbsterklärende Commit-Messages verwenden!) 42 | 43 | 44 | 45 | 46 | # 15:00 Datenbanken 47 | 48 | ## Vortrag: Wetterdatenaufbereitung 49 | 50 | 51 | 0. Grundlagen Datenbanken und PostgreSQL 52 | 53 | * Database System (DBS) beinhaltet erstens eine Datenbank (DB - Daten auf Platte) und zweitens das Datanbank-Management System (DBMS-Kontroll Software) und den Bearbeiter (DMS) 54 | 55 | * robuster und sicherer Datenspeicher 56 | 57 | * Grundlage und kollaboratives Arbeiten 58 | 59 | * PostgreSQL ist eine Datenbank, sie wird mit einem DBMS (pgAdmin) bearbeitet 60 | 61 | * DB ist verknüpft mit einem Frontend (F) und einem Backend (B). Frontend ist eine Webdarstellung, Backends verwalten die Datenbank (administrieren, Code schreiben mit Python etc.). 62 | 63 | * Das Hin- und Her zwischen F und B sollen wir üben. 64 | 65 | * gutes Passwort anlegen, Benutzer, Gruppen und neue Datenbank erstellen (oedb) 66 | 67 | 1. Vorhandene Wetterdaten 68 | 69 | * Daten von der Wetterstation der HTW Berlin (1/min) 70 | 71 | * Sonja-Messdaten (5x WR), minütig aufgelöst für das Jahr 2015 72 | 73 | * Zusätzlich vollständige Zeitreihe (525.600), weil in den Daten der HTW Berlin einige Lücken drinne sind. Und: Sonnenauf- und -untergangszeiten für die Aufbereitung 74 | 75 | * erste Untersuchung von Daten / wissenschaftliches Standardverfahren: 76 | 77 | * entpacken 78 | 79 | * Metadaten prüfen (Format: Sommerzeit&Winterzeit, Vollständigkeit) 80 | 81 | * zunächst csv-Dateien in einem Texteditor öffnen (csv: comma separated values) 82 | 83 | * Kopie erstellen! (Datenschutz bsp. Excel versucht autmatisch Datumsformate zu erkennen und ändert diese) 84 | 85 | * Öffnen in MS-Excel zum Explorieren (bspw. mit plot, mittelwert, prüfsumme) 86 | 87 | * Erstellen / Ergänzen der Metadaten (Aufbereitung esseziell wichtig!) und vorbereiten der DB (Tabellenblätter zusammenfassen o.ä.) 88 | 89 | * LH forscht and an öffentlichen Energiedatenbank z.B. OEMetaData: [Link](https://github.com/OpenEnergyPlatform/metadata) 90 | 91 | * Standards und Best-PractiseDatenbanken: frictionlessdata.io, "Tidy Data", FAIR 92 | 93 | * FAIR- findability, accessability, interoperability and reusability 94 | 95 | 2. import in Datenbank (Fettgedrucktes sind SQL-Befehle) 96 | 97 | 1. Tabellenstruktur erstellen: **CREATE TABLE** SCHEMA.DATEINAME 'Dateipfad/Datei.Endung'.... (Folie 10) 98 | 99 | 2. Metadaten editieren (aus dem Standard "OEMetaData v1.4 bspw.: General (Name und Beschreibung, Context (Zusammenhang) und Spatial (örtlich), längere Liste siehe Folie 12) 100 | 101 | 3. Einfügen der Zeilen: **COPY ... TO** SCHEMA.DATEINAME.... 102 | 103 | * semistrukturierte Daten im JSON-Format (Folie 13) --> *Prüfungsfragen: Welche Datenstruktur ist das? Welches Datenformat haben wir?* 104 | 105 | * **COMMENT ON TABLE** SCHEMA.TABELLE - hängt die Metadaten an eine Tabelle 106 | 107 | 3. Verknüpfen von Tabellen (JOIN) 108 | 109 | * Fragestellungen: Welche Informationen sind in einer Tabelle enthalten und in der anderen nicht? 110 | 111 | * Verknüpfungsmuster: INNER-, LEFT-, FULL-JOIN sind die wichtigsten und RIGHT, NATURAL und CROSS gibt es auch 112 | 113 | * Aufgabe: die richtigen Datenbankbefehle für die Fehler -> Lücken finden und Lücken schließen 114 | 115 | * Programmier-Code siehe Folie 16 116 | 117 | * Beispiel für einen LEFT-JOIN: Zeitreihe mit Wetter verknüpfen 118 | 119 | 4. Arbeitsschritte 120 | 121 | * siehe Folie 21 und weitere 122 | 123 | * SELECT (welche Spalten) FROM (SCHEMA.TABELLE) WHERE (Bedingung) 124 | 125 | 126 | 127 | # 16:30 Datenbanken II 128 | 129 | ## pg-Admin4: 130 | 131 | * Web-GUI, die SQL-code ausführt 132 | 133 | * Man verbindet sich immer mit einem Datenbank-Server und nicht direkt mit einer Datenbank 134 | 135 | 136 | * Servergruppe erstellen: Servers -> create -> Server Group bspw. HTW-PV3 137 | 138 | * Server erstellen: HTW-PV3 -> create -> Server 139 | 140 | * Reiter General: Name = PostgresSQL 12 141 | 142 | * Reiter Connection: Host name/address=localhost 143 | 144 | * save 145 | 146 | * Server wählen: PostgresSQL 12 147 | 148 | * postgres-Datenbank nicht anfassen außer die ersten beiden Skripte?! 149 | 150 | 151 | * Ein Befehl der ausgeführt wird, wird immer nur auf einer Datenbank ausgeführt 152 | 153 | * Fehlerquelle: Falsche DB ausgewählt und code somit auf falscher DB ausgeführt (Vorsicht!) 154 | 155 | * Wie führe ich auch einer Datenbank code aus? 156 | 157 | 1. * Server auswählen 158 | 159 | 2. * Datenbank auswählen 160 | 161 | 3. * Rechtskick: Querry-tool: 162 | 163 | * Code einfügen und ausführen (F5) 164 | 165 | * Querry wird immer mit Ausgabe "Query returned successfully in XXX msec." abgeschlossen 166 | 167 | * Falls nicht, wurde nichts ausgeführt (All or nothing) 168 | 169 | * **!Wichtig!** In der Regel muss ausgeführter CODE (rechts) im Browser (links) per Rechtsklick>Refresh neugeladen werden. 170 | 171 | 4. * Disconnected vom Server 172 | 173 | 5. * PostgresSQL 12: Properties ändern 174 | 175 | * user == sonnja 176 | 177 | 6. * reconnecten mit Passwort : sonnja 178 | 179 | 180 | * FRAGE: Wie wurde die Datenbank "sonnja_db" hinzugefügt? Steht das in dem Skript 2? 181 | 182 | * -> Ja (Aber Prinzipiell Rechtsklick auf die Datenbank und neue Datenbank erzeugen) 183 | 184 | 185 | 186 | * User Management mit Skript (von LH) erstellen: 187 | 188 | * user Rolle erstellen 189 | 190 | * admin Rolle erstellen 191 | 192 | 193 | # 17:00 Daten-Session 194 | 195 | Welche Daten haben wir? 196 | 197 | METADATEN erstellen 198 | 199 | Datenbankimport versuchen 200 | 201 | 202 | [Link zu Rohdaten](https://next.rl-institut.de/s/LJXYzBDyC5aDJtz) 203 | 204 | 205 | # Aufgaben 206 | 207 | 208 | [ ] Metadaten zu den CSV-Dateien "HTW-Wetter" und "Sonja-Messdaten" generieren [ALL] 209 | 210 | [ ] die richtigen Datenbankbefehle für die Fehler -> Lücken finden und Lücken schließen [ALL] 211 | 212 | ## 1. SQL-Script 213 | 214 | -- Groups 215 | DROP ROLE IF EXISTS role_read; 216 | CREATE ROLE role_read WITH NOLOGIN NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT NOREPLICATION; -- Read only 217 | 218 | DROP ROLE IF EXISTS role_user; 219 | CREATE ROLE role_user WITH NOLOGIN NOSUPERUSER NOCREATEDB NOCREATEROLE INHERIT NOREPLICATION; 220 | GRANT role_read TO role_user; -- Insert, Update, Delete and Read 221 | 222 | DROP ROLE IF EXISTS role_admin; 223 | CREATE ROLE role_admin WITH NOLOGIN SUPERUSER CREATEDB CREATEROLE REPLICATION; 224 | GRANT role_user TO role_admin; -- Admin, can create user and databases 225 | 226 | -- User 227 | DROP USER IF EXISTS user_read; 228 | CREATE USER user_read LOGIN PASSWORD 'read' NOSUPERUSER INHERIT NOCREATEDB CREATEROLE REPLICATION; 229 | GRANT role_read TO user_read; -- 2017-04-17 LH 230 | 231 | DROP USER IF EXISTS user_write; 232 | CREATE USER user_write LOGIN PASSWORD 'write' NOSUPERUSER INHERIT NOCREATEDB CREATEROLE REPLICATION; 233 | GRANT role_user TO user_write; -- 2017-04-17 LH 234 | 235 | DROP USER IF EXISTS user_admin; 236 | CREATE USER user_admin LOGIN PASSWORD 'admin' SUPERUSER INHERIT CREATEDB CREATEROLE REPLICATION; 237 | GRANT role_admin TO user_admin; -- 2017-04-17 LH 238 | 239 | DROP USER IF EXISTS sonnja; 240 | CREATE USER sonnja LOGIN PASSWORD 'sonnja' SUPERUSER INHERIT CREATEDB CREATEROLE REPLICATION; 241 | GRANT role_admin TO sonnja; -- 2018-04-25 LH 242 | 243 | 244 | 245 | 246 | 247 | ## Fragen zu Git: 248 | 249 | * commit auf falschen branch a 250 | 251 | * wurde außerdem auf anderem branch b überholt 252 | 253 | * branch a ist aber noch nicht abgeschlossen 254 | 255 | * [Link zum Issue](https://github.com/htw-pv3/literature/issues/11) 256 | 257 | * guter Lösungsweg? 258 | 259 | 260 | * Sobald bei git nicht trivale Unterschiede auftauchen (z.B. eine Bearbeitung in der gleichen Zeit), tritt ein sognannter "Merge Conflict" auf. 261 | 262 | * Das sieht zunächst schlimmer aus als es wirklich ist. 263 | 264 | * Das macht kurz Angst, kann aber relativ einfach behoben werden. 265 | 266 | * Ich schau es mir mal in Ruhe an und zeige eine einfache Lösung. 267 | 268 | * Ich verwende das [Programm Meld] (http://meldmerge.org/) zum vergleichen von Dokumenten (Dif-Tool). Damit ist ein "manuelles Beheben" sehr einfach. 269 | 270 | -------------------------------------------------------------------------------- /minutes/2020-04-22_htw-pv3_software-session.md: -------------------------------------------------------------------------------- 1 | # 2020-04-22 14:00 - 17:15 2 | 3 | ### 14:00 Feedback zur Aufgabe #1 4 | 5 | * Was habt ihr gelernt? 6 | * Gar nicht so einfach! Lizenzen und RechteinhaberInnen 7 | * Was ist der unterschied zwischen url\_date und timestamp? 8 | * Welche Daten notwendig sind, ist schwer einzuschätzen. 9 | * Wie verwenden wir das jetzt? 10 | * für eine gemeinsame Literaturdatenbank 11 | * als Vorbereitung für das Zitieren in unserer Masterarbeit 12 | * Bleibt das jetzt so einfach? (Spoiler: nein) 13 | * Falls Textdateien im richtigen Format (als .txt erstellt, Dateiendung in .bib geändert) sind -> Einlesen in JabRef problemlos 14 | * Bitte mehr Transparenz/Hinweise auf extra Anforderungen :) 15 | 16 | 17 | ## Wir analisyeren heute git/GitHub, Anaconda (Phython) und PyCharm (zur bearbeitung von Python) 18 | 19 | ### 14:15 Software-Session 20 | 21 | 1. Rundgang durch die Programme (git, Anaconda und PyCharm) 22 | 2. Setup und Einstellungen 23 | 3. Tests und MWE (Minimal Working Example) 24 | 4. Let's encrypt! (verschlüsseln von privaten Dateien z.B. mit der Software "VeraCrypt") 25 | 26 | 27 | #### git (Software - Link zu dem git-Programm (mit command line): siehe unten # Aufgabe 2) 28 | 29 | * git ist ein Versionsverwaltungssystem (source control management system) und wird dafür verwendet, verschiedene Versionen und Bearbeitungsstände von Software und Textdateien zuverwalten. 30 | * git sollte nur verwendet werden, um Textdateien zu verwalten, nicht für binäre Dateien. Grund: git erkennt gut Änderungen an Textdateien und muss nicht die gesamte Datei speichern/verwalten, sondern nur die Änderungen jeder Version. Sollte bei einem Bild oder Video ein Pixel verändert werden, so behandelt git diese Datei als neue Datei und muss diese in ihrer Gesamtheit verwalten. 31 | 32 | #### github (Webspace-Account) Konfiguration 33 | 34 | * Konfiguration unserer Gruppe, Gruppenname: htw\-pv3 35 | * neues Repository mit Namen "literature" 36 | * erstellt mit Repository Eigenschaften: öffentlich, mit readme, add.gitignore: Python, License: cc 0 37 | * vollständige URL: https://github.com/htw-pv3/literature 38 | * repo clonen (https oder ssh) 39 | * https fragt username und pw ab [kurzfristig einfacher] 40 | * ssh benötigt ssh-key (public ssh-key muss im github account hinterlegt werden) [langfristig einfacher] 41 | * github handles (Gruppenmitglieder - Einladung manuell annehmen unter: github.com/htw-pv3): 42 | * bereits hinzugefügt: 43 | * FaidoEwald; RobertHuehn;Lamelot; baytar-muhammed; khelfen; TheBlackBlade;Braak-1991;Patrickhs;nailend;phuongthaobui; CMC94; jadammouri; JihadSol; SteMele; heppyli13;Jabadancey;lukasgloeckner;theresaweiss,Flo-tru;mauricio-ocampo; Frank1h 44 | * Neue Liste: 45 | * Repository in den lokalen Ordner "c:/git/github/htw-pv2" einbinden mit git bash (Admin) über den Befehl: git "clone https://github.com/htw-pv3/literature.git" 46 | 47 | 48 | #### Anaconda 49 | 50 | * Anaconda: Distribution management (Python, Python-IDEs, etc.) 51 | * Anaconda mit Phython 3.7 herunterladen und unter C:/Anaconda3 installieren um die leerzeichnen von Folder von Windows (unter C:/Programme oder C:\Program Files (x86) ) zu verhindern. 52 | * Leerzeichen in Programmpfaden verursachen Fehler in diversen Prgrammierumgebungen, daher tunlichst vermeiden und statt eines Lerrzeichens zum Beipsiel einen Unterstrich verwenden. Beispiel "d:\Programme\_RE\Solar\" 53 | * Falls anaconda nicht richtig installiert werden konnte (cmd: anaconda --version liefert einen Fehler), Umgebungsvariablen von Windows bearbeiten: Systemeigenschaften>Erweitert>Umgebungsvariablen>Systemvariablen>Path>bearbeiten>neu>C:\Anaconda3 und c:\Anaconda3\Scripts\ 54 | * Environments (ein virtueller Raum, der Python oder eine andere Sprache kann) 55 | * Packages sind die kleinen spezialisierten Apps, die das Ganze interessant machen, bspw. PV-Simulation 56 | * Namenskonventionen helfen dabei, diese wiederzuverwenden 57 | * envs: werden schnell sehr groß 58 | * Beispiel für die Anwendung: Verschiedene Versionen und Pakete können in ihren Blasen (environment) unabhängig von den Versionen in den anderen Blasen funktionieren. Das Hilft dabei Kompatibiltätsprobleme zu reduzieren. 59 | * **TIPP**: Werden Environments hinzugefügt, dann muss das Fenster "Eingabeaufforderung" (in der Windows-Suche eingeben) vorerst als Administrator ausgeführt werden. 60 | 61 | #### Conda (bereits in anaconda integriert, muss nicht separat geladen werden): 62 | 63 | * Paketmanager für den Zugriff auf diverse Pakete, die einen ermächtigen mathematische Funktionen etc. zu benutzen .. bis hin zum "Fliegen" - neben Conda werden wir zwei weitere Paketmanager nutzen: conda-forge und pip 64 | * Pakete: Conda enthält einige Pakete von Vornherein, zwei wichtige sind "pandas" und "jupyter" 65 | * pvlib für PV-Simulationen 66 | * Pakete installieren: In der Eingabeaufforderung wechselt man in den Pfad von Conda und tippt bspw. "conda install pandas" ein 67 | 68 | 69 | #### Pycharm IDE 70 | 71 | * integriertet Entwicklungsumgebung für Python (compiler und Editor) 72 | * Editor: Umgebung, zur Bearbeitung von Source Code, mit verschiedenen Zusatzfunktionen and Features 73 | * Compiler: Programme, die aus die die Programmiersprache (hier Python) in Maschinencode übersetzt 74 | * **Empfehlung:** drei "getting started" videos ansehen (Help in der Menüleiste) 75 | * GUI (Aussehen der Software): Darcula -> schwarz 76 | * neues Projekt anlegen, checkbox: existing interpreter verwenden (gleichbedeutend mit zuvor angelegten python-Environment) 77 | * zur Ausführung des Codes ggf. vorher projekt-interpreter initialisieren (settings>project python>interpreter...) 78 | 79 | 80 | ##### --> Ziel: arbeiten mit dem Paket "Pvlib Python" https://github.com/pvlib/pvlib-python 81 | 82 | 83 | #### Datei-Verschlüsselung mit VeraCrypt 84 | 85 | * VeraCrypt Software ist eine Verschlüsselungstechnologie um Daten zu Schützen 86 | * zur Verschlüsselung werden besondere Algorithmen verwendet, diese zeichnen sich dadurch aus, dass der Entschlüsselungs-Vorgang viel komplizierter ist, als der Verschlüsselung. 87 | * Empfehlung zur Auswahl: 88 | * AES und Twofish 89 | * Hash Algorithmes SHA-512 hat heutzutage die Hochste Verschlüsselung 90 | * Passwortsicherheit (wirklich sehenswerte Links): 91 | * How to choose a password https://www.youtube.com/watch?v=3NjQ9b3pgIg 92 | * How Password Managers work https://www.youtube.com/watch?v=w68BBPDAWr8 93 | 94 | ##### -> Empfehlung: Bitwarden / KeePass (Freeware/Open-source) / KeeWeb / Dashlane 95 | 96 | 97 | ### Aufgaben 98 | 99 | - [x] Versionsnummern für PVSol und Polysun mitteilen [LH] 100 | - [x] alle ins Github-Team einladen [LH] 101 | - [x] Zugangsrechte für das repo überprüfen[LH] 102 | - Ups, hab nur Leserechte erteilt. Mein Fehler! 103 | - [x]Checkboxen checken 104 | 105 | 106 | 107 | ## Aufgabe #2: Installation und Setup @29.04.2020 um 14:00 108 | 109 | **Installieren Sie die benötigten Programme auf Ihrem Computer und machen sich mit dem Start und der Anwendung vertraut. Dokumentieren Sie die Installationen (Ein Screenshot pro Programm reicht, wenn daraus vorgeht, dass es funktioniert/richtig ist). Dokumentation als .pdf abgeben.** 110 | 111 | 1. PostgreSQL 12.2 - https://www.enterprisedb.com/downloads/postgres-postgresql-downloads 112 | * Ohne den "StackBuilder" (Der nervt) 113 | * Was habt ihr bei "Select the locale..." ausgewählt? [Default locale]? ja / German, Germany 114 | * Zusätzlich PostGIS - http://download.osgeo.org/postgis/windows/pg12/ 115 | * über homebrew (macOS) - https://postgis.net/install/ 116 | * bzw https://postgresapp.com/de/ PostgreSQL incl. PostGIS (macOS) 117 | 2. QGIS 3.10 (LTS) - https://qgis.org/de/site/forusers/download.html 118 | * nicht 3.12 (geht auch, aber lieber LTS) 119 | 3. Notepad++ 7.8.5 (oder ähnlicher Editor) - https://notepad-plus-plus.org/downloads/ 120 | * textmate (macOS) - https://macromates.com/ 121 | 4. git / gitSCM\* 2.26 - https://git-scm.com/ sollte unter C:/ installiert werden? 122 | * notepad++ als editor einstellen oder im nachhinein umstellen (siehe Folien git) 123 | * optional (!): Putty Installieren https://www.putty.org/ und die SSH-Schlüssel einrichten (puttygen.exe, pageant.exe, plink.exe, putty.exe) 124 | * Hat hier jemand ne gute Erklärung zu? -> siehe Verschlüsselung. 125 | 5. Anaconda\* Py37 (Python) - https://www.anaconda.com/distribution/ 126 | * Windows: Installation mit Rechtsklick und "Als Administrator ausführen" beginnen 127 | * Windows: Installation unter C:/Anaconda3, da kein Leerzeichen im Dateipfad enthalten sein darf. Zuwiderhandlung kann mit schwerauffindbaren Fehlern bestraft werden. Daher nochmal: Die Software NICHT unter C:/Programme/Anaconda3! installieren(!) --> Diese Information ist einen Bonus-Punkt wert. 128 | 6. PyCharm\* 2020-1 (Community) - https://www.jetbrains.com/academy/ https://www.youtube.com/watch?v=5rSBPGGLkW0 129 | * https://www.jetbrains.com/pycharm/download/ pycharm-community-2020.1 130 | * Es gibt auch ne Version direkt für Anaconda https://www.jetbrains.com/pycharm/promo/anaconda/ 131 | 7. JabRef 5.0- http://www.jabref.org/ 132 | * für Custom Entry Types (z.B. "Software") https://docs.jabref.org/setup/customentrytypes 133 | * Optionen->Allgemeine Felder: 134 | * Allgemein:crossref;tag;keywords;file;doi;url;comment;owner;timestamp 135 | * Zusammenfassung:abstract 136 | * Überprüfung:download\_url;review;license;license\_url;copyright\_owner;openness 137 | 8. Polysun 11.3 - https://www.velasolaris.com/downloads/ 138 | * noch nicht runterladen, da zu verwendende Versionen noch nicht fest stehen 139 | * Lizenzschlüssel gibt es per mail (erreichen uns im Laufe der Woche, nur auf einem Endgerät installieren, gültig bis 30.09.2020) 140 | 9. PVsol Premium 2020-7- https://valentin-software.com/downloads/ 141 | * Lizenzschlüssel gibt es per mail (erreichen uns im Laufe der Woche, nur auf einem Endgerät installieren, gültig bis 30.09.2020) 142 | 10. VeraCrypt 1.24 143 | * Optional 144 | 145 | 146 | \* Dokumentation für Installation und Setup vorhanden 147 | 148 | ### Anmerkungen zu Verschlüsselung: 149 | 150 | * Das ist schon (relativ) hohes Nerd-Level, aber eigentlich ganz einfach. Ziel: Dadurch muss in git nicht username und pw eingegeben werden, das wird schnell müßig und führt dazu, ein zu einfaches Passwort zu verwenden. 151 | * https://sachinsharm.wordpress.com/2015/05/04/pageant-ssh-agent-for-windows/ 152 | * https://stackoverflow.com/questions/35110079/git-bash-and-pageant-are-not-using-keys 153 | 1. Erstelle deinen SSH-Schlüssel (private und public key) mit puttygen (wird mit PuTTY installiert), setzte ein sicheres PW 154 | 2. Hinterlege den öffentlichen SSH-Schlüssel "public key" bei GitHub 155 | 3. Öffne SSH-Schlüssel mit pageant (verwende das PW) 156 | 4. Leite den geöffneten Schlüssel an git weiter 157 | * Literatur: 158 | * https://de.wikipedia.org/wiki/Public-Key-Authentifizierung 159 | * https://de.wikipedia.org/wiki/Asymmetrisches\_Kryptosystem 160 | * https://tools.ietf.org/html/rfc4819 161 | 162 | ### Fehlersuche hat in der Installationsanleitung nix zu suchen, da kommen nur die Ergebnisse rein: 163 | 164 | 1. Mit der Windows Kommandozeile (bzw. PowerShell) hat das erstellen von envs bei mir nicht funktioniert 165 | * HTTP Error ja bei mir auch 166 | * CondaHTTPError: HTTP 000 CONNECTION FAILED for url Elapsed: - An HTTP error occurred when trying to retrieve this URL. 167 | * Mit der Anaconda PowerShell hat es problemlos funktioniert <- das Problem umgehen ist nicht das Problem lösen ;) 168 | 169 | 170 | ### Das sind Zusätze, die haben in der Install garnix zu suchen! 171 | 172 | * pip install xlrd 173 | * sonst gibts nen Error in PyCharm bei Pandas Befehlen zu Excel 174 | * Pvlib 175 | * conda install -c pvlib pvlib 176 | * A collection of various different notebook extensions for Jupyter: 177 | * conda install -c conda-forge jupyter\_contrib\_nbextensions 178 | * Mehr Funktionalitäten für das Jupyter Notebook, wie z.B. autocomplete, code folding etc. 179 | * https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/install.html 180 | 181 | 182 | 183 | ### Aufgaben 184 | 185 | - [x] Protokolle aufbereiten und ausarbeiten [ALL] -> Umwandeln in Markdown (MD) und ablage auf GitHub! 186 | - [x] 1. 2020-04-06 [LH] 187 | - [x] 2. 2020-04-15 [LH] 188 | - [x] 3. 2020-04-22 [KH] 189 | - s. Edit 1 190 | - [ ] Remote-Zugriff auf HTW-Rechner 191 | - [ ] VPN 192 | - [ ] Remotedesktopverbindung 193 | - Schreibweise Remote Desktop: f1-inf-f226-XX.intern.f1.htw-berlin.de 194 | - XX durch PC Nummer ersetzen 195 | - Username: login\s0XXXXXX 196 | - [ ] Erstellen der 3. und 4. Aufgabe 197 | - [ ] Tutorial Install & Setup Postgres, Postgis, QGIS 198 | 199 | 200 | **Edit 1:** 201 | 202 | * Ich nutze für Markdown Haroopad 203 | * Achtung! Wird nicht mehr gewartet, aber ist für mich der angenehmste Editor mit Echtzeit-Übersetzung. Also auf eigene Gefahr. 204 | * http://pad.haroopress.com/user.html -------------------------------------------------------------------------------- /references.bib: -------------------------------------------------------------------------------- 1 | % Encoding: UTF-8 2 | 3 | @Software{YEd, 4 | title = {{yEd}}, 5 | version = {3.18.2}, 6 | author = {{yWorks GmbH}}, 7 | url = {https://www.yworks.com/products/yed}, 8 | urldate = {2019-03-05}, 9 | platform = {unabhängig}, 10 | kategorie = {Visualisierungsprogramm}, 11 | comment = {https://de.wikipedia.org/wiki/YEd}, 12 | copyright_owner = {© 2019 yWorks}, 13 | file = {:DATA/Software/yEd/yEd-3.18.2_with-JRE10_64-bit_setup.exe:exe}, 14 | license = {yEd Software License Agreement}, 15 | license_url = {https://www.yworks.com/company/legal/terms-of-use}, 16 | openess = {Freeware}, 17 | owner = {Ludwig Hülk}, 18 | tag = {software;}, 19 | timestamp = {2020-04-22}, 20 | } 21 | 22 | @Software{JabRef, 23 | author = {Morten O. Alver, Nizar N. Batada, et al.}, 24 | title = {JabRef}, 25 | comment = {https://en.wikipedia.org/wiki/JabRef}, 26 | copyright_owner = {The JabRef team}, 27 | kategorie = {reference management software LaTeX}, 28 | license = {MIT License}, 29 | license_url = {https://github.com/JabRef/jabref/blob/master/LICENSE.md}, 30 | openess = {Freeware; Open-source}, 31 | owner = {Kilian Helfenbein}, 32 | platform = {independent}, 33 | tag = {software;}, 34 | timestamp = {2025-04-09}, 35 | url = {https://www.jabref.org/}, 36 | urldate = {2025-04-09}, 37 | version = {v5.15}, 38 | groups = {Software}, 39 | } 40 | 41 | @Software{PostgreSQL, 42 | author = {{PostgreSQL Global Development Group}}, 43 | title = {PostgreSQL}, 44 | comment = {relational database management system (RDBMS)}, 45 | copyright_owner = {© 1996-2020 The PostgreSQL Global Development Group}, 46 | file = {:C\:/PostgreSQL/12/pgAdmin 4/bin/pgAdmin4.exe:exe}, 47 | kategorie = {relational database management system (RDBMS)}, 48 | license = {The PostgreSQL Licence (PostgreSQL)}, 49 | license_url = {https://www.postgresql.org/about/licence/}, 50 | openess = {{Freeware;} {Open-source;}}, 51 | owner = {Kilian Helfenbein}, 52 | platform = {independent}, 53 | tag = {{software;} {db;}}, 54 | timestamp = {2025-04-16}, 55 | url = {https://www.postgresql.org/}, 56 | urldate = {2025-04-16}, 57 | version = {17.5}, 58 | groups = {Software}, 59 | } 60 | 61 | @Software{PostGIS, 62 | author = {Refractions Research}, 63 | title = {PostGIS}, 64 | comment = {https://en.wikipedia.org/wiki/PostGIS}, 65 | kategorie = {support for geographic objects to the PostgreSQL object-relational database}, 66 | license = {GNU General Public License}, 67 | license_url = {https://postgis.net/}, 68 | openess = {{Freeware;} {Open-source;}}, 69 | owner = {Kilian Helfenbein}, 70 | platform = {independent}, 71 | tag = {{software;} {db;}}, 72 | timestamp = {2020-04-26}, 73 | urldate = {2020-04-26}, 74 | version = {v 3.5.2}, 75 | groups = {Software}, 76 | } 77 | 78 | @Software{QGIS, 79 | author = {{QGIS Development Team}}, 80 | title = {QGIS 3.34.10 'Prizren'}, 81 | comment = {https://en.wikipedia.org/wiki/QGIS}, 82 | copyright_owner = {{QGIS Development Team}}, 83 | kategorie = {{geographic information system (GIS)}}, 84 | license = {{Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)}}, 85 | license_url = {https://creativecommons.org/licenses/by-sa/3.0/}, 86 | openess = {{Freeware;}{Open-source;}}, 87 | owner = {Kilian}, 88 | platform = {independent}, 89 | tag = {{software;}{GIS;}}, 90 | timestamp = {2020-04-26}, 91 | url = {https://www.qgis.org/de/site/}, 92 | urldate = {2020-04-26}, 93 | version = {3.16.5 'Hanover'}, 94 | groups = {Software}, 95 | } 96 | 97 | @Software{notepad++, 98 | author = {{Don Ho}}, 99 | title = {notepad++}, 100 | comment = {https://en.wikipedia.org/wiki/Notepad%2B%2B}, 101 | copyright_owner = {{© 2020 Don HO }}, 102 | file = {:C\:/Program Files/Notepad++/notepad++.exe:exe}, 103 | kategorie = {{source-code editor}}, 104 | license = {{GNU GENERAL PUBLIC LICENSE Version 2, June 1991}}, 105 | license_url = {https://www.gnu.org/licenses/old-licenses/gpl-2.0.html}, 106 | openess = {{Freeware;}{Open-source;}}, 107 | owner = {Kilian}, 108 | platform = {Windows}, 109 | tag = {{software;}{editor;}}, 110 | timestamp = {2025-04-29}, 111 | url = {https://notepad-plus-plus.org/}, 112 | urldate = {2020-04-26}, 113 | version = {8.8}, 114 | groups = {Software}, 115 | } 116 | 117 | @Software{gitscm, 118 | author = {{Linus Torvalds}}, 119 | title = {gitscm}, 120 | comment = {https://en.wikipedia.org/wiki/Git}, 121 | copyright_owner = {{Junio Hamano and others}}, 122 | kategorie = {{software configuration management (SCM)}{version control}}, 123 | license = {{Software Freedom Conservancy)}}, 124 | license_url = {https://sfconservancy.org/}, 125 | openess = {{Freeware;}{Open-source;}}, 126 | owner = {Kilian}, 127 | platform = {independent}, 128 | tag = {{software;}{SCM;}}, 129 | timestamp = {2025-04-09}, 130 | url = {https://git-scm.com/}, 131 | urldate = {2025-04-09}, 132 | version = {2.49.0}, 133 | groups = {Software}, 134 | } 135 | 136 | @Software{Anaconda, 137 | author = {{Anaconda, Inc.}}, 138 | title = {{Anaconda Individual Edition}}, 139 | comment = {https://en.wikipedia.org/wiki/Anaconda_(Python_distribution)}, 140 | copyright_owner = {{© Copyright 2020 Anaconda, Inc.}}, 141 | file = {:C\:/Anaconda3/_conda.exe:exe}, 142 | kategorie = {{Python and R distribution}}, 143 | license = {{3-clause BSD License}}, 144 | license_url = {https://opensource.org/licenses/BSD-3-Clause}, 145 | openess = {{software;}{distribution;}}, 146 | owner = {Kilian}, 147 | platform = {independent}, 148 | tag = {{software;}{distribution;}}, 149 | timestamp = {2020-04-27}, 150 | url = {https://www.anaconda.com/download/success}, 151 | urldate = {2025-04-9}, 152 | version = {4.8.2}, 153 | groups = {Software}, 154 | } 155 | @Software{Miniconda, 156 | author = {{Anaconda, Inc.}}, 157 | timestamp = {2023-04-19}, 158 | url = {https://docs.conda.io/en/latest/miniconda.html}, 159 | urldate = {2023-04-19}, 160 | version = {23.1.0}, 161 | groups = {Software}, 162 | } 163 | 164 | 165 | 166 | @Software{Miniconda, 167 | author = {{Anaconda, Inc.}}, 168 | timestamp = {2023-04-19}, 169 | url = {https://docs.conda.io/en/latest/miniconda.html}, 170 | urldate = {2023-04-19}, 171 | version = {23.1.0}, 172 | groups = {Software}, 173 | } 174 | 175 | 176 | @Software{Python, 177 | author = {{Python Software Foundation}}, 178 | title = {Python}, 179 | comment = {https://en.wikipedia.org/wiki/Python_(programming_language)}, 180 | copyright_owner = {{© 2001-2020. Python Software Foundation}}, 181 | file = {:C\:/Anaconda3/python.exe:exe}, 182 | kategorie = {{programming language}}, 183 | license = {{PSF License}}, 184 | license_url = {https://docs.python.org/3/license.html}, 185 | openess = {{Freeware;}{Open-source;}}, 186 | owner = {Kilian}, 187 | platform = {independent}, 188 | tag = {{software;}{language;}}, 189 | timestamp = {2020-04-27}, 190 | url = {https://www.python.org/}, 191 | urldate = {2020-04-27}, 192 | version = {3.10}, 193 | groups = {Software}, 194 | } 195 | 196 | @Software{PyCharm, 197 | author = {{JetBrains s.r.o.}}, 198 | title = {{PyCharm for Anaconda Community Edition}}, 199 | comment = {https://en.wikipedia.org/wiki/PyCharm}, 200 | copyright_owner = {{© 2000–2020 JetBrains s.r.o.}}, 201 | file = {:C\:/JetBrains/PyCharm Community Edition with Anaconda plugin 2020.1/bin/pycharm64.exe:exe}, 202 | kategorie = {{integrated development environment (IDE)}}, 203 | license = {{Apache License, Version 2.0}}, 204 | license_url = {http://www.apache.org/licenses/LICENSE-2.0}, 205 | openess = {{Freeware;}}, 206 | owner = {Kilian}, 207 | platform = {independent}, 208 | tag = {{software;}{IDE;}}, 209 | timestamp = {2025-04-08}, 210 | url = {https://www.jetbrains.com/pycharm/promo/anaconda/}, 211 | urldate = {2024-03-05}, 212 | version = {2021.1}, 213 | groups = {Software}, 214 | } 215 | 216 | @Account{GitHub, 217 | account = {s0XXXXXX@htw-berlin.de}, 218 | author = {{GitHub, Inc.}}, 219 | title = {GitHub}, 220 | url = {https://github.com/}, 221 | copyright_owner = {{© 2020 GitHub, Inc.}}, 222 | comment = {https://en.wikipedia.org/wiki/GitHub}, 223 | kategorie = {{hosting for software development version control using Git}}, 224 | openess = {{Freeware;}}, 225 | owner = {Kilian}, 226 | tag = {{git;}{account;}}, 227 | timestamp = {2020-04-27}, 228 | urldate = {2020-04-27}, 229 | groups = {Accounts}, 230 | } 231 | 232 | @Software{Meld, 233 | author = {{Kai Willadsen, Stephen Kennedy, Vincent Legoll}}, 234 | title = {Meld}, 235 | comment = {https://de.wikipedia.org/wiki/Meld}, 236 | copyright_owner = {{© 2021 Kai Willadsen}}, 237 | kategorie = {{software}}, 238 | license = {{GPLv2 or later}}, 239 | license_url = {https://www.gnu.org/licenses/gpl-2.0.html}, 240 | openess = {{Freeware;}{Open-source;}}, 241 | owner = {Johannes}, 242 | platform = {independent}, 243 | tag = {{software;}}, 244 | timestamp = {2025-04-15}, 245 | url = {https://meldmerge.org/}, 246 | urldate = {2025-04-15}, 247 | version = {3.22.2}, 248 | groups = {Software}, 249 | } 250 | 251 | @Software{Polysun, 252 | author = {Vela Solaris AG}, 253 | title = {{Polysun für Windows}}, 254 | copyright_owner = {{© 2020 Vela Solaris.}}, 255 | kategorie = {{Polysun is the powerful software platform for the simulation-based planning, designing and optimizing of comprehensive energy systems for buildings and districts.}}, 256 | license = {End-user license agreement EULA}, 257 | license_url = {https://www.velasolaris.com/eulas/?lang=en}, 258 | openess = {{commercial}}, 259 | owner = {Kilian}, 260 | platform = {windows}, 261 | tag = {{software;}{simulation;}{energy systems}}, 262 | timestamp = {2020-04-27}, 263 | url = {https://www.velasolaris.com/?lang=en}, 264 | urldate = {2020-04-27}, 265 | version = {2025.4}, 266 | groups = {Software}, 267 | } 268 | 269 | @Software{PVSOL, 270 | author = {{Valentin Software GmbH}}, 271 | title = {PV*SOL premium}, 272 | copyright_owner = {{© 2020 Valentin Software}}, 273 | kategorie = {{PV*SOL premium is a dynamic simulation program with 3D visualization and detailed shading analysis for the calculation of photovoltaic systems in combination with appliances, battery systems and electric vehicles.}}, 274 | license = {{PV*SOL premium Single user license}}, 275 | openess = {{commercial}}, 276 | owner = {Kilian}, 277 | platform = {Windows}, 278 | tag = {{software;}{simulation;}{energy systems}}, 279 | timestamp = {2020-04-27}, 280 | url = {https://valentin-software.com/produkte/pvsol-premium/}, 281 | urldate = {2025-04-09}, 282 | version = {2025-5}, 283 | groups = {Software}, 284 | } 285 | 286 | 287 | @misc{einleuchtend e.V., 288 | title = {DATEN & FAKTEN}, 289 | author = {einleuchtend e.V.}, 290 | howpublished = {http://einleuchtend.org/sonn-ja/daten-fakten/}, 291 | urldate = {2020-05-05}, 292 | comment = {Zeigt die relevanten Daten und Fakten über das Projekt Sonnja des einleuchtend e.V. auf}, 293 | tag = {literature;}, 294 | timestamp = {2020-05-05}, 295 | } 296 | 297 | @misc{einleuchtend e.V., 298 | title = {DAS PROJEKT}, 299 | author = {einleuchtend e.V.}, 300 | howpublished = {http://einleuchtend.org/sonn-ja/das-projekt/}, 301 | urldate = {2020-05-05}, 302 | comment = {Technische Beschreibung des Projekt Sonnja}, 303 | tag = {literature;}, 304 | timestamp = {2020-05-05}, 305 | } 306 | 307 | @misc{wetter htw-berlin, 308 | title = {HTW Wetterstation}, 309 | author = {HTW-Berlin}, 310 | howpublished = {https://wetter.htw-berlin.de/Home/Info}, 311 | urldate = {2020-05-05}, 312 | comment = {Beschreibung der Wetterstation der HTW-Berlin}, 313 | tag = {literature;}, 314 | timestamp = {2020-05-05}, 315 | } 316 | 317 | @misc{wetter htw-berlin, 318 | title = {Messwerte}, 319 | author = {HTW-Berlin}, 320 | howpublished = {https://wetter.htw-berlin.de/History}, 321 | urldate = {2020-05-05}, 322 | comment = {Messwerte können abgerufen werden}, 323 | tag = {literature;}, 324 | timestamp = {2020-05-05}, 325 | } 326 | 327 | @Misc{Pattis, 328 | author = {Florian Pattis}, 329 | howpublished = {https://diglib.tugraz.at/download.php?id=576a7f30bfa0d&location=browse}, 330 | title = {Modellierung der Stromerzeugung aus Photovoltaik in Deutschland}, 331 | year = {2012}, 332 | comment = {Die Diplomarbeit befasst sich mit Modellierung quallitativer und quantitativer der installierten PV-Anlagen in Deutschland}, 333 | school = {Technischen Universität Graz}, 334 | tag = {literature;}, 335 | timestamp = {2020-05-05}, 336 | urldate = {2020-05-05}, 337 | } 338 | 339 | @Misc{Photovoltaik_Ratgeber, 340 | author = {Anondi GmbH}, 341 | title = {Ebook Ratgeber Photovoltaik (Version 2019)}, 342 | category = {Ratgeber}, 343 | institution = {Anondi GmbH}, 344 | lastchecked = {2020-05-08}, 345 | originalyear = {2019}, 346 | place = {Ulm, Deutschland}, 347 | summary = {You want to produce your own energy? Here is an overview about things you'll need to pay attention to.}, 348 | url = {https://www.solaranlage-ratgeber.de/service/solar-ebooks}, 349 | } 350 | 351 | @Misc{sinnvolle_Dimensionierung, 352 | author = {Bergner, Joseph}, 353 | title = {Sinnvolle Dimensionierung von Photovoltaikanlagen für Prosumer}, 354 | category = {Kurzstudie}, 355 | institution = {HTW Berlin}, 356 | lastchecked = {2020-05-06}, 357 | originalyear = {2018-12-10}, 358 | place = {Berlin, Deutschland}, 359 | summary = {Macht die Daecher voll! PVA von 4 bis 20 kW}, 360 | url = {https://pvspeicher.htw-berlin.de/sinnvolle-dimensionierung/}, 361 | } 362 | 363 | @Misc{Photovoltaikforum, 364 | author = {Haar, Jürgen}, 365 | title = {Photovoltaikforum.com}, 366 | category = {Forum}, 367 | lastchecked = {2020-05-06}, 368 | place = {Kirchdorf, Deutschland}, 369 | summary = {Plattform fuer professionellen Austausch über technische und wirtschaftliche PV-Aspekte}, 370 | url = {https://www.photovoltaikforum.com/}, 371 | } 372 | 373 | @Misc{PVGIS, 374 | author = {EU Science Hub}, 375 | title = {Photovoltaic Geographical Information System (PVGIS)}, 376 | category = {PV_Onlinetool}, 377 | institution = {EU Science Hub}, 378 | lastchecked = {2020-05-06}, 379 | originalyear = {1995}, 380 | place = {European Union}, 381 | summary = {calculates energy yield for pv systems & offers two other subtools: "solar radiation" and "Typical Meteorological Year (TMY)"}, 382 | url = {https://ec.europa.eu/jrc/en/pvgis}, 383 | } 384 | 385 | @Misc{k2_Base, 386 | author = {k2 Systems}, 387 | title = {K2 Base}, 388 | category = {PV_Onlinetool}, 389 | institution = {k2 Systems}, 390 | lastchecked = {2025-04-11}, 391 | place = {Renningen, Deutschland}, 392 | summary = {A pv energy plant for every roof - GUI for PV-scale, calculate the the holding strutcure for PV}, 393 | url = {https://base.k2-systems.com/#!/start}, 394 | } 395 | 396 | @Misc{sonnenverlauf, 397 | author = {Hoffmann, Torsten}, 398 | title = {Sonnenverlauf.de}, 399 | category = {PV_Onlinetool}, 400 | feature-225-update-last-checked 401 | lastchecked = {2025-04-09}, 402 | summary = {Zeigt die Sonnenbewegung und Sonnenlicht-Phasen für einen bestimmten Tag an einem bestimmten Ort. -> Schattenanalyse}, 403 | 404 | url = {https://www.sonnenverlauf.de/}, 405 | } 406 | 407 | @Misc{PVSol_online, 408 | author = {Valentin Software GmbH}, 409 | title = {PVSol online}, 410 | category = {PV_Onlinetool}, 411 | institution = {Valentin Software GmbH}, 412 | lastchecked = {2020-05-08}, 413 | originalyear = {2017-02-13}, 414 | summary = {tiny webtool for calculating general data of pv systems at a specific location}, 415 | url = {http://pvsol-online.valentin-software.com/#/}, 416 | } 417 | 418 | @Article{Woodbury2007, 419 | author = {Carol Woodbury}, 420 | journal = {Skyview Partners}, 421 | title = {The Importance of Data Classification and Ownerschip}, 422 | year = {2007}, 423 | owner = {meloe}, 424 | timestamp = {2025-04-09}, 425 | url = {http://srcsecuresolutions.eu/pdf/Data_Classification_Ownership.pdf}, 426 | } 427 | 428 | @Article{Security2010, 429 | author = {DOIT IT Security}, 430 | title = {Data Classification Methodology | Version 1.3}, 431 | year = {2010}, 432 | timestamp = {2025-04-16}, 433 | url = {https://portal.ct.gov/-/media/opm/fin-general/dataclassificationmethodology120519pdf.pdf}, 434 | } 435 | 436 | @Article{Services2025, 437 | author = {Amazon Web Services}, 438 | title = {Data Classification | Secure Cloud Adoption}, 439 | year = {2025}, 440 | timestamp = {2025-05-13}, 441 | url = {https://docs.aws.amazon.com/pdfs/whitepapers/latest/data-classification/data-classification.pdf}, 442 | } 443 | 444 | @Article{shaikh2015data, 445 | author = {Shaikh, Rizwana and Sasikumar, M}, 446 | journal = {Procedia computer science}, 447 | title = {Data Classification for achieving Security in cloud computing}, 448 | year = {2015}, 449 | number = {C}, 450 | pages = {493--498}, 451 | volume = {45}, 452 | publisher = {Elsevier}, 453 | timestamp = {2020-05-07}, 454 | url = {https://tarjomefa.com/wp-content/uploads/2016/09/4958-English.pdf}, 455 | } 456 | 457 | @Misc{RemotezugriffHTW, 458 | title = {Remote-Zugriff auf Labor-PCs}, 459 | year = {2015}, 460 | publisher = {HTW Berlin}, 461 | timestamp = {2025-04-16}, 462 | url = {https://www.f1.htw-berlin.de/it-serviceportal/remote-zugriff-auf-labor-pcs/} 463 | } 464 | 465 | @Comment{jabref-meta: databaseType:bibtex;} 466 | 467 | @Comment{jabref-meta: grouping: 468 | 0 AllEntriesGroup:; 469 | 1 KeywordGroup:Software\;0\;tag\;software\;0\;0\;1\;0x669966ff\;\;\;; 470 | } 471 | 472 | @Comment{jabref-entrytype: software: req[author;download_url;kategorie;platform;title;url;urldate;version] opt[comment]} 473 | --------------------------------------------------------------------------------