ESMF (Earth System Modeling Framework) ist ein Programm für den Aufbau von hochleistungsfähigen, flexiblen Software-Infrastruktur, um Benutzerfreundlichkeit zu erhöhen, die Leistung Portabilität, Interoperabilität und Wiederverwendung in Klima, numerischen Wettervorhersage, Datenassimilation, die ESMF definiert eine Architektur zur Erstellung komplexer, gekoppelt Modellierungssysteme und beinhaltet Datenstrukturen und Versorgungsunternehmen für die Entwicklung einzelner Modelle.
Die Grundidee ist, dass ESMF komplizierte Anwendungen sollten in kleinere Stücke oder Bestandteile zerlegt werden. Eine Komponente ist eine Softwareeinheit, Zusammensetzung, die eine zusammenhängende Funktion hat, und einer Standard-Aufrufschnittstelle und Verhalten. Komponenten zusammengebaut werden können, um mehrere Anwendungen zu erzeugen, und verschiedene Implementierungen von einer Komponente zur Verfügung stehen. In ESMF kann eine Komponente einer physischen Domäne oder eine Funktion, wie ein Kuppler oder I / O-System.
ESMF umfasst auch Toolkits für die Gebäudekomponenten und Anwendungen, wie regridding Software, Terminverwaltung, Protokollierung und Fehlerbehandlung und parallele Kommunikation.
Die folgende Abbildung zeigt ESMF Komponenten in der Praxis. Es ist ein Schaltbild der Struktur des NASA GEOS-5 Atmosphärenzirkulationsmodell von Grund auf mit ESMF gebaut. Jeder der Kästen ist ein ESMF Komponente, einschließlich der Kuppler. Die hierarchische Baum von Komponenten "schnitt" werden auf verschiedenen Ebenen, so dass die gesamte Physik-Paket ersetzt werden könnten, oder eine einzelne Parametrierung. Jede Komponente ist potentiell "Swap-fähig."
Eigenschaften :
- Voll Fortran 90-Schnittstelle, teilweise C / C ++ Schnittstelle
- Fortran 90 Referenzhandbuch und Benutzerhandbuch
- Läuft auf den meisten Hochleistungs-Parallel-Computing-Plattformen, darunter IBM, viele Linux-Varianten, Cray, Compaq, mehr (siehe hier für die vollständige Liste)
- Unterstützt MPI, OpenMP und Hybrid-Benutzercodes
- 2500+ Tests mit Source-Distribution gebündelt
- Kostenlose Anwender-Support
- Aktive Benutzer-Community
- Aufbau zur Kopplung Erde Systemkomponenten:
- Component, Staat und Koppler Software, die Benutzercode Wraps mit minimalem Overhead
- Einfache Fahrer, dass die Benutzer ändern können
- Sequential oder gleichzeitige Ausführung von Komponenten
- Einzel ausführbare Fähigkeit
- Begrenzte mehrere ausführbare Fähigkeit
- Infrastruktur für den Aufbau der Erde Systemkomponenten:
- Time Manager, die Gregorian umfasst, 360 Tage, nicht-Sprung, Julian und andere Kalender, sowie eine breite Palette von Zeitfunktionen
- Datenstrukturen zur Speicherung und Manipulation von Arrays, Felder und Bundles von Feldern auf dem gleichen Netz.
- Parallele Datenkommunikation und regridding Software
- Nachrichtenprotokollierung Werkzeuge
- Ressourcendateimanager
Was ist neu in dieser Pressemitteilung:
- Ein fehlertolerantes Erweiterung der ESMF_GridComp und ESMF_CplComp Schnittstellen hat umgesetzt.
- Zahlreiche Verbesserungen und Bugfixes.
Was ist neu in Version 3.2.0r:
- Diese Version modifiziert den Code, um die Abwärtskompatibilität zu ermöglichen und fügt Unterstützung für die PGI Compiler-Version 11.x auf Linux / PC und der Cray XT-Plattform.
Was ist neu in Version 3.1.0rp2:
- Unterstützung für replizierten Dimensionen in Field. Ein & quot; 0 & quot; Eintrag im gridToFieldMap Argument ESMF_FieldCreate () und ESMF_FieldSetCommit () anzeigt, dass ein Rastermaß ist nicht Teil des Feldes. Stattdessen wird das Feld in allen DEs entlang der entsprechenden Rastermaß repliziert.
- Überlastete ESMF_FieldCreate (), um eine Fortran-Array-Zeiger zu übernehmen und zu bewahren ihre Eigenschaften (wie Grenzen und die Fähigkeit, freigeben).
- Überlastete ESMF_FieldSetCommit (), um eine Fortran-Array-Zeiger zu übernehmen und zu bewahren ihre Eigenschaften (wie Grenzen und die Fähigkeit, freigeben).
- Der Grid unterstützt jetzt eine ESMF_INDEX_USER Option für die indexflag. Dies ermöglicht dem Benutzer explizit die untere Reihe von ihren lokalen Index Raum gebunden. Dies ist notwendig, wenn Sie ein Feld aus einem Fortran-Array-Zeiger mit Nicht-Standard-Indizierung.
- Überlastete ESMF_ArrayCreate (), um eine Fortran-Array-Zeiger zu übernehmen und zu bewahren ihre Eigenschaften (wie Grenzen und die Fähigkeit, freigeben).
- Optimierte ESMF_ArraySMM () und ESMF_ArrayBundleSMM () Laufzeit-Performance, Skalierbarkeit und Speichernutzung.
- Unterstützung für optimierte Kommunikation für Arrays mit unterschiedlichen Verteilungen, Abmessungen und Größen in der gleichen ArrayBundle.
- Unterstützung für DEs ohne Elemente in DistGrid, Array und Field.
- Made localDe Argument optional in ESMF_ArrayGet () und ESMF_FieldGet () Methoden, bei denen nicht durch Überlastung Beschränkungen verboten.
- Alarme bei Zeitschritt 0 klingelt, auf ESMF_ClockCreate () nun korrekt klingeln.
- Alarme nun richtig klingeln für eine Uhr in ESMF_MODE_REVERSE.
- Alarme nun richtig klingeln für eine Uhr mit einem negativen Zeitschritt.
- Hinzugefügt Standardzeigergröße Override-Funktion, um System zu bauen Einsatz neuer Umgebungsvariablen ESMF_F90_PTR_BASE_SIZE und ESMF_F90_PTR_PLUS_RANK.
Was ist neu in Version 3.1.0rp1:.
- hinzugekommen Attribute in die Grid-Klasse
- hinzugekommen Attribute, um die Array-Klasse.
- hinzugekommen MinIndex und MaxIndex Argumente ESMF_GridGet (). Diese Argumente gelten für die erste Fliese.
- hinzugekommen minIndexPDimPDe und maxIndexPDimPDe Argumente ESMF_DistGridGet ().
- hinzugekommen ESMF_GridMatch (), um zwei Raster Objekte zu vergleichen.
- Ein neuer Abschnitt in der Bedienungsanleitung mit dem Titel & quot; Einrichten ESMF zu Test Suite Anwendungen & quot laufen; war, dass, wie Benutzer ihre eigenen mpirun Skripte angeben skizziert aufgenommen. ESMF nutzt durchgängig die Einstellung der Umgebungsvariable ESMF_MPIRUN, um die Test-Suite gebündelt und beispielsweise Anwendungen starten.
- Die folgenden bekannten Fehler wurden behoben.
Kommentare nicht gefunden