Aktionen

NCCUTOUT: Unterschied zwischen den Versionen

Aus BAWiki

imported>Schade Peter
(Erster Entwurf)
 
K (Leitfaden zu Metadaten entfernt)
 
(10 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:
|name_en=NCCUTOUT
|name_en=NCCUTOUT
|name=NCCUTOUT
|name=NCCUTOUT
|version=November 2018
|version=Juli 2022
|version_beschr=November 2018
|version_beschr=September 2022
|stichworte=Analyse<br />
|stichworte=Analyse<br />
Postprocessor<br/>
Postprocessor<br/>
Zeile 16: Zeile 16:
Unterstützung von DMQS-Metadaten und -Variablen<br />
Unterstützung von DMQS-Metadaten und -Variablen<br />
[[NetCDF#Qualitätssicherung mit NetCDF-Attributen|(Teil-) Automatisierte Qualitätssicherung (Wertebereich)]]<br />
[[NetCDF#Qualitätssicherung mit NetCDF-Attributen|(Teil-) Automatisierte Qualitätssicherung (Wertebereich)]]<br />
Ablage des Inhalts der ASCII-Eingabesteuerdateien in [[CF-NETCDF.NC|netcdf.nc]] (als Variable)<br />
Ablage der [https://de.wikipedia.org/wiki/Message-Digest_Algorithm_5 MD5-Hash]-Werte von Eingabedateien in [[CF-NETCDF.NC|netcdf.nc]] (als Variable)<br />
optionale Verwendung der ''Message Passing Interface'' (MPI, [https://www.mpi-forum.org/ MPI Forum])


  Danksagung: ''This project took advantage of netCDF software developed by UCAR/Unidata ([http://www.unidata.ucar.edu/software/netcdf/ www.unidata.ucar.edu/software/netcdf/]).''
  Danksagung: ''This project took advantage of netCDF software developed by UCAR/Unidata ([http://www.unidata.ucar.edu/software/netcdf/ www.unidata.ucar.edu/software/netcdf/]).''


|kurzbeschreibung=
|kurzbeschreibung=
<P>[[Datei:Nccutout_one_poly.png|250px|thumb|right|Fig. 1: Aus dem Gesamtmodell des Projekts EasyGSH-DB herausgeschnittene Ergebnisse der Deutschen Bucht]]
<P>[[Datei:Nccutout_one_poly.png|250px|thumb|right|Abb. 1: Aus dem Gesamtmodell des Projekts EasyGSH-DB herausgeschnittene Ergebnisse der Deutschen Bucht]]
Der Postprocessor NCCUTOUT kann die Größe von Ergebnisdateien reduzieren um Plattenplatz und Rechenzeit in den anschließenden Bearbeitungsschritten zu sparen. Er schneidet Daten aus UGRID-konformen NetCDF-Dateien vom Typ Area heraus. In der UGRID Metadaten-Terminologie bedeutet das, dass die Datei zumindest eine Mesh-Topology mit dem Attribut topology_dimension = 2 aufweisen muss.  Das auszuschneidende Gebiet wird typischerweise über ein Polygon definiert. Die innerhalb des Polygons liegenden Elemente (Faces, Edges oder Nodes) werden in die Ausgabedatei geschrieben. </P>
Der Postprocessor NCCUTOUT kann die Größe von Ergebnisdateien reduzieren um Plattenplatz und Rechenzeit in den anschließenden Bearbeitungsschritten zu sparen. Er schneidet Daten aus UGRID-konformen NetCDF-Dateien vom Typ Area heraus. In der UGRID Metadaten-Terminologie bedeutet das, dass die Datei zumindest eine Mesh-Topology mit dem Attribut topology_dimension = 2 aufweisen muss.  Das auszuschneidende Gebiet wird typischerweise über ein Polygon definiert. Die innerhalb des Polygons liegenden Elemente (Faces, Edges oder Nodes) werden in die Ausgabedatei geschrieben. </P>


<P>[[Datei:Nccutout_more_polygons.png|250px|thumb|right|Fig. 2: Aus dem Modell des Jade-Weser-Ästuars an separaten Lokationen herausgeschnittene Ergebnisse, s. nordwestliche und südöstliche Ecke]]
<P>[[Datei:Nccutout_more_polygons.png|250px|thumb|right|Abb. 2: Aus dem Modell des Jade-Weser-Ästuars an separaten Lokationen herausgeschnittene Ergebnisse, s. nordwestliche und südöstliche Ecke]]
But the cut out area can also be defined by two or more polygons which need not be direct neighbours, s. Fig. 2. Though the results may look like seperate spots of a location grid they share a common mesh topology.</P>  
Das auszuschneidende Gebiet kann aber auch von zwei oder mehr Polygonen, die nicht direkte Nachbarn sein müssen, definiert werden, s. Abb. 2. Obwohl die Ergebnisse wie getrennt auf einem Location Grid vorliegend aussehen, so teilen sie doch eine gemeinsame Mesh Topology.</P>  


Furthermore, the user can reduce disk space by extracting only a subset of the original geophysical variables. He can add them to a white list or alternatively to a black list. <BR>
User können mit dem Plattenplatz außerdem durch eine Auswahl der zu konvertierenden geophysikalischen Variablen pfleglich umgehen. Dies wird wahlweise durch eine Black- oder eine White-Liste gesteuert. <BR>
[[Datei:nccutout_patch.png|thumb|'''Bild ''Kontrollvolumina und Exchanges'''.]]


|eingabedateien=
|eingabedateien=
# '''allgemeine Eingabedaten''' (Dateityp [[NCCUTOUT.DAT|nccutout.dat]]);
# '''allgemeine Eingabedaten''' (Dateityp [[NCCUTOUT.DAT|nccutout.dat]]);
# Datei mit '''Klassifikationen''' von Häufigkeitsverteilungen ([[BOUNDS.CFG.DAT|bounds.cfg.dat]]) <br />Hinweis: Lokale Konfigurationsdatei (empfohlen) oder Datei aus $PROGHOME/cfg/-Verzeichnis.
# '''Eingabe-UGRID-CF-NetCDFs''' (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]);
# '''synoptische Datensätze''' (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]);
# '''Schnittpolygone''' (file type [[IPDS.DAT|ipds.dat]]);
# '''Kontroll-Volumina''' (Dateityp [[IPDS.DAT|ipds.dat]]):
# für eine [[NetCDF#Qualitätssicherung mit NetCDF-Attributen|(teil-) automatisierte Qualitätssicherung]] (Dateityp [[BOUNDS.CFG.DAT|bounds_verify.dat]]).
# für eine [[NetCDF#Qualitätssicherung mit NetCDF-Attributen|(teil-) automatisierte Qualitätssicherung]] (Dateityp [[BOUNDS.CFG.DAT|bounds_verify.dat]]).


|ausgabedateien=   
|ausgabedateien=   
# '''Aggregierte Daten''' Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]); zur Struktur des Aggregations-Gitters und dessen Zusammenhang mit dem Berechnungsgitter siehe unter ''[[NetCDF Aggregation f%C3%BCr unstrukturierte Gitter]]''.
# '''Ausgabe-UGRID-CF-NetCDFs''' (Dateityp [[CF-NETCDF.NC|cf-netcdf.nc]]);
# (optional) Datei mit '''Informationen zum Programmablauf''' (Dateityp nccutout.sdr);
# (optional) Datei mit '''Informationen zum Programmablauf''' (Dateityp nccutout.sdr);
# (optional) Datei mit '''Testausgaben''' (Dateityp nccutout.trc).
# (optional) Datei mit '''Testausgaben''' (Dateityp nccutout.trc).
|methode=
|methode=
Geeignete physikalische Daten werden für Kontroll-Volumina sowie Austauschflächen (''Exchanges'') aggregiert.  
<P>[[Datei:nccutout_face_subface.png|250px|thumb|right|Abb.3: Um konsistente Gitter zu erhalten werden Faces jeweils mit all ihren Subfaces herausgeschnitten.]]
NCCUTOUT verarbeitet NetCDF-Dateien, deren Gitter auf dem Eltern-Kind-Prinzip basieren, bspw. einem Berechnungsgitter mit einer niedrigeren und einem SubGrid mit einer höheren Auflösung. Ob die Daten ausgeschnitten werden oder nicht hängt von der Lage ihrer geometrischen Elemente im gröbsten Gitter ab. Das zeigt sich in Abb. 3. In einem ersten Schritt werden die Faces des  Berechnungsgitters und nachfolgend alle SubFaces innerhalb dieser Faces extrahiert. Diese Methode führt zu konsistenten Gittern und Eltern-Kind-Verbindungen.</P>
<P>
Betrachtet man den Workflow im Postprocessing, so empfiehlt es sich NCCUTOUT direkt nach den numerischen Modellen wie UNTRIM2007 und UnTRIM2 laufen zu lassen, so dass das komplette Postprocessing von der Reduktion profitiert.</P>


Falls beim Lesen von Daten ein '''HDF error''' auftritt wird versucht, die Werte des gewünschten Datenrecords aus den Werten zeitlich benachbarter Records zu rekonstruieren (Interpolation). Diese Reparatur funktioniert ausschließlich für von der Zeit abhängige Variablen. <br>
<P>
Performance: Ein Großteil der in NCCUTOUT verbrauchten CPU-Zeit entfällt auf Basis-IO-Methoden. Weil das Schreiben in den untersuchten Testläufen deutlich langsamer als das Lesen ist, beschleunigen sowohl die Reduktion der Flächen als auch der geophysikalischen Variablen das Programm.  


Ein Leitfaden zur Erfassung der DMQS-Metadaten steht [[Leitfaden_Metadaten_Küstengewässer|hier]].
|preprozessor=[[NCANALYSE]], [[NCCHUNKIE]], [[NCDELTA]], [[NCDVAR]], [[NCMERGE]], [[UNTRIM2007]], [[UNTRIM2]]
 
|postprozessor=[[DAVIT]], [[NCAGGREGATE]], [[NCANALYSE]], [[NCAUTO]], [[NCCHUNKIE]], [[NCDELTA]], [[NCDVAR]], [[NCMERGE]], [[NCPLOT]], [[NC2TABLE]] and  [[MATLAB]]
|preprozessor=[[NCANALYSE]], [[NCCHUNKIE]], [[NCDELTA]], [[UNTRIM2007]], [[UNTRIM2]], [[INSEL2IPDS]]
|postprozessor=[[DAVIT]], [[INSPECT_CONTROL_VOLUMES]], [[NCANALYSE]], [[NCAUTO]], [[NCCHUNKIE]], [[NCDELTA]], [[NCPLOT]], [[NC2TABLE]], [[PLOTPROFILZEIT]],[[PLOTTS]]
|programmiersprache=Fortran95
|programmiersprache=Fortran95
|zus_software= ---
|zus_software= ---
|kontakt_original=[mailto:guenther.lang@baw.de G. Lang]
|kontakt_original=P. Schade, G. Lang
|kontakt_pflege=[mailto:guenther.lang@baw.de G. Lang],[mailto:susanne.spohr@baw.de S. Spohr]
|kontakt_pflege=[mailto:pos.proghome@baw.de Arbeitsgruppe POS]
|dokumentation=
|dokumentation=
* Vorträge:
** 2014-03-12: [http://ewisa.baw.de/files/09206_tv12_2014_03_12_aggregation_g_lang.pdf ''Aggregation von Daten''].
* Musterdateien:
* Musterdateien:
** Musterdateien finden sich in '''$PROGHOME/examples/nccutout/'''
** allgemeine Musterdateien stehen in '''$PROGHOME/examples/nccutout'''
** Testverzeichnis für hydro-dynamische [[UNTRIM2007]]-Ergebnisse: '''$PROGHOME/examples/nccutout/run/utr2007/elbe/nccut'''
** Testverzeichnis für hydro-dynamische [[UNTRIM2]]-Ergebnisse: '''$PROGHOME/examples/nccutout/run/utr2009/easy/nccut'''
** Testverzeichnis für [[NCANALYSE]]-Ergebnisse: '''$PROGHOME/examples/nccutout/run/ncana/easy/nccut'''
}}
}}

Aktuelle Version vom 24. April 2023, 12:14 Uhr

Basisinformationen

Programm-Name

NCCUTOUT

Version

Juli 2022

Beschreibung

September 2022

Stichworte

Analyse
Postprocessor
synoptische Berechnungsergebnisse
Tidekennwerte
Tideunabhängige Kennwerte
Differenzen synoptischer Berechnungsergebnisse
Differenzen von Ergebnissen
CF NetCDF Format für 2D- und 3D-Daten
Verfahren für unstrukturierte orthogonale Gitternetze
Unterstützung von Simulationsergebnissen mit SubGrid
Unterstützung von DMQS-Metadaten und -Variablen
(Teil-) Automatisierte Qualitätssicherung (Wertebereich)
Ablage des Inhalts der ASCII-Eingabesteuerdateien in netcdf.nc (als Variable)
Ablage der MD5-Hash-Werte von Eingabedateien in netcdf.nc (als Variable)
optionale Verwendung der Message Passing Interface (MPI, MPI Forum)

Danksagung: This project took advantage of netCDF software developed by UCAR/Unidata (www.unidata.ucar.edu/software/netcdf/).

Kurzbeschreibung

Abb. 1: Aus dem Gesamtmodell des Projekts EasyGSH-DB herausgeschnittene Ergebnisse der Deutschen Bucht

Der Postprocessor NCCUTOUT kann die Größe von Ergebnisdateien reduzieren um Plattenplatz und Rechenzeit in den anschließenden Bearbeitungsschritten zu sparen. Er schneidet Daten aus UGRID-konformen NetCDF-Dateien vom Typ Area heraus. In der UGRID Metadaten-Terminologie bedeutet das, dass die Datei zumindest eine Mesh-Topology mit dem Attribut topology_dimension = 2 aufweisen muss. Das auszuschneidende Gebiet wird typischerweise über ein Polygon definiert. Die innerhalb des Polygons liegenden Elemente (Faces, Edges oder Nodes) werden in die Ausgabedatei geschrieben.

Abb. 2: Aus dem Modell des Jade-Weser-Ästuars an separaten Lokationen herausgeschnittene Ergebnisse, s. nordwestliche und südöstliche Ecke

Das auszuschneidende Gebiet kann aber auch von zwei oder mehr Polygonen, die nicht direkte Nachbarn sein müssen, definiert werden, s. Abb. 2. Obwohl die Ergebnisse wie getrennt auf einem Location Grid vorliegend aussehen, so teilen sie doch eine gemeinsame Mesh Topology.

User können mit dem Plattenplatz außerdem durch eine Auswahl der zu konvertierenden geophysikalischen Variablen pfleglich umgehen. Dies wird wahlweise durch eine Black- oder eine White-Liste gesteuert.

Eingabe-Dateien

  1. allgemeine Eingabedaten (Dateityp nccutout.dat);
  2. Eingabe-UGRID-CF-NetCDFs (Dateityp cf-netcdf.nc);
  3. Schnittpolygone (file type ipds.dat);
  4. für eine (teil-) automatisierte Qualitätssicherung (Dateityp bounds_verify.dat).

Ausgabe-Dateien

  1. Ausgabe-UGRID-CF-NetCDFs (Dateityp cf-netcdf.nc);
  2. (optional) Datei mit Informationen zum Programmablauf (Dateityp nccutout.sdr);
  3. (optional) Datei mit Testausgaben (Dateityp nccutout.trc).

Methode

Abb.3: Um konsistente Gitter zu erhalten werden Faces jeweils mit all ihren Subfaces herausgeschnitten.

NCCUTOUT verarbeitet NetCDF-Dateien, deren Gitter auf dem Eltern-Kind-Prinzip basieren, bspw. einem Berechnungsgitter mit einer niedrigeren und einem SubGrid mit einer höheren Auflösung. Ob die Daten ausgeschnitten werden oder nicht hängt von der Lage ihrer geometrischen Elemente im gröbsten Gitter ab. Das zeigt sich in Abb. 3. In einem ersten Schritt werden die Faces des Berechnungsgitters und nachfolgend alle SubFaces innerhalb dieser Faces extrahiert. Diese Methode führt zu konsistenten Gittern und Eltern-Kind-Verbindungen.

Betrachtet man den Workflow im Postprocessing, so empfiehlt es sich NCCUTOUT direkt nach den numerischen Modellen wie UNTRIM2007 und UnTRIM2 laufen zu lassen, so dass das komplette Postprocessing von der Reduktion profitiert.

Performance: Ein Großteil der in NCCUTOUT verbrauchten CPU-Zeit entfällt auf Basis-IO-Methoden. Weil das Schreiben in den untersuchten Testläufen deutlich langsamer als das Lesen ist, beschleunigen sowohl die Reduktion der Flächen als auch der geophysikalischen Variablen das Programm.

Vorlauf-Programme

NCANALYSE, NCCHUNKIE, NCDELTA, NCDVAR, NCMERGE, UNTRIM2007, UNTRIM2

Nachlauf-Programme

DAVIT, NCAGGREGATE, NCANALYSE, NCAUTO, NCCHUNKIE, NCDELTA, NCDVAR, NCMERGE, NCPLOT, NC2TABLE and MATLAB

Weitere Informationen

Programmiersprache

Fortran95

zusätzliche Software

---

Originalversion

P. Schade, G. Lang

Programmpflege

Arbeitsgruppe POS

Dokumentation/Literatur

  • Musterdateien:
    • allgemeine Musterdateien stehen in $PROGHOME/examples/nccutout
    • Testverzeichnis für hydro-dynamische UNTRIM2007-Ergebnisse: $PROGHOME/examples/nccutout/run/utr2007/elbe/nccut
    • Testverzeichnis für hydro-dynamische UNTRIM2-Ergebnisse: $PROGHOME/examples/nccutout/run/utr2009/easy/nccut
    • Testverzeichnis für NCANALYSE-Ergebnisse: $PROGHOME/examples/nccutout/run/ncana/easy/nccut

zurück zu Programmkennblätter


Strukturübersicht