Skip to content

Era5-Downloader#2

Open
Hex-commits wants to merge 8 commits into
ecwmf_aifsfrom
feature/era5
Open

Era5-Downloader#2
Hex-commits wants to merge 8 commits into
ecwmf_aifsfrom
feature/era5

Conversation

@Hex-commits
Copy link
Copy Markdown
Collaborator

No description provided.

Comment thread pyproject.toml
Comment thread src/spategan_era5/download.py Outdated
import numpy as np
from pathlib import Path

import matplotlib.animation as animation
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ich habe eine Plot-Klasse erstellt, mit dem Gedanken dort alle plotterei abzulegen
xarray ermöglicht es auch direkt das array zu potten
So Sachen wie das colorschema, Skalen, Formattierungen usw kann man als Klassenattribute dann für alle Plots homogenisieren

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Grundsätzlich mag ich die Idee, allerdings sollten wir diese Arten eher anders initialisieren. Derzeit führt das zu eienm riesigen Block von Initialisierung, die wir nicht brauchen.

Persönlich habe ich die Erfahrung gemacht, dass ich DataClasses nie brauche oder benutze, gerade wenn man XR ohnehin in Benutzung hat. Idealer wäre meiner Meinung nach für das nächste Mal die Initialisierung in dem Plotting-Modul selbst zu machen, das heißt ohne Klasseninstanzierung, dafür als Init-Methode mit entsprechenden Variablen.

Comment thread src/spategan_era5/download.py Outdated
"dimensions_only_in_ds2": d_only2,
}

def main():
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

der ganze Teil sollte eigtl in main.py abgehandelt werden, auch so, dass man die default werte aus der config überschreiben kann

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ja, allerdings ist der Workflow derzeit ja disconnected, wenn man bedenkt, dass die Daten aus der Vergangenheit vergleicht werden müssen.

Wenn man den normalen Workflow durchführt, kann man das ja selten vergleichen.

Meine Idee wäre einen zweiten Workflow zu bauen, der direkt dafür da ist, um die beiden Daten miteinander zu vergleichen, anstelle das monolithisch in diesem riesigen Ding zu verbasteln, obwohl es nicht zusammengehört.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

siehe #2 (comment)

Comment thread config/config.yml
@@ -12,9 +12,9 @@ data:
# Unit of precipitation values in the input file. Examples: 'm', 'm/s', 'm/hr', 'mm/hr'
precip_unit: 'm'

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hier brauch es eigtl noch n switch mode :

  • forecast
  • historic
  • analysis (der beide vergleicht)

und da er5 von cds mit 5 Tagen Verzögerung kommt muss für diese Tage dann über den ecmwf client aber von azure als source (statt ecmwf)
d.h. hier würde es Sinn machen im download.py eine Downloadfunktion die beides runterlädt zu haben und dann unterschiedliche prepares

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Kann man allerdings eigentlich getrennt behandeln, wie hier grob beschrieben. Ich würde eher getrennte Workflows sehen.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

default:

  • 72h leadtime
  • forecast von heute
  • validation false

cli params:

  • date
    • checkt ob histoic oder forecast
  • validation

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added mode.type (validation or downscaling)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants