ESMF (Земля Система Modeling Framework) это программа для создания высокопроизводительных, гибкой инфраструктуры программного обеспечения для увеличения простоту использования, мобильность производительности, совместимости и повторно использовать в климате, численного прогноза погоды, ассимиляции данных, то ESMF определяет архитектуру для построения сложных систем, в сочетании моделирования и включает в себя структуры данных и утилиты для разработки индивидуальных моделей.
Основная идея в том, что ESMF сложные приложения должны быть разбиты на более мелкие куски, или компонентов. Компонент это единица композиции программное обеспечение, которое последовательную функцию и стандартного интерфейса вызывающего и поведения. Компоненты могут быть собраны для создания нескольких приложений, а также различные реализации компонента могут быть недоступны. В ESMF, компонент может представлять собой физическую домена, или функция, как муфта или системы ввода / вывода.
ESMF также включает в себя инструментарий для построения компонентов и приложений, таких как программное обеспечение, regridding календарного управления, рубки и обработки ошибок, и параллельно коммуникаций.
На рисунке ниже представлены компоненты ESMF на практике. Это схема структуры НАСА ГЕОС-5 общей циркуляции атмосферы, построенной модели с нуля, используя ESMF. Каждый прямоугольник является ESMF компонент, в том числе соединителей. Иерархического дерева компонентов может быть "опущен" на разных уровнях, так что весь пакет физики могут быть заменены, или один параметризация. Каждый компонент является потенциально "замены".
Особенности
- 90 Интерфейс Полное Fortran, частичная C / C ++ интерфейс
- Fortran 90 Справочное руководство и руководство пользователя
- Работает на большинстве высокопроизводительных вычислительных платформ параллельно, в том числе IBM, варианты много Linux, Cray, Compaq, более (см здесь полный список)
- Поддержка MPI, OpenMP и гибридного коды пользователей
- 2500+ испытания в комплекте с исходного распределения
- Бесплатная поддержка пользователей
- активное сообщество пользователей
- Компонент, государства и муфта программное обеспечение, которое обертывания код пользователя с минимальными затратами
- Простые драйверы, которые пользователи могут изменять
- Последовательный или параллельное выполнение компонентов
- Один исполняемый возможность
- Ограниченная несколько исполняемый возможность
- Инфраструктура для построения компонентов системы Земля:
- Диспетчер Время, которое включает григорианский, 360 день, нет-прыжок, Джулиан, и другие календари, а также широкий спектр функций времени
- Структуры данных для хранения и обработки массивов, полей, и связки полей на той же сетке.
- Параллельные передачи данных и программное обеспечение regridding
- лесозаготовительные Сообщение инструменты
- Диспетчер файлов ресурсов
<класс Li = "bbli"> Надстройка для системных компонентов муфта Земле:
Что нового В этом выпуске:
- Отказоустойчивый расширение интерфейсов ESMF_GridComp и ESMF_CplComp имеет были реализованы.
- Многочисленные усовершенствования и исправления.
Что нового в версии 3.2.0r:
- Эта версия изменяет код для того, чтобы обратную совместимость и добавлена поддержка для ОПИ 11.x компилятора версии на Linux / ПК и платформы Cray XT.
Что нового в версии 3.1.0rp2:
- Добавлена поддержка репликации размеров в поле. & Quot; 0 & Quot; вход в аргументе gridToFieldMap в ESMF_FieldCreate () и ESMF_FieldSetCommit () указывает, что измерение Сетка не является частью области. Вместо этого поле воспроизведены по всей КЭУ по соответствующей размерности сетки.
- Перегруженный ESMF_FieldCreate (), чтобы принять Fortran указатель массива и сохранить свои свойства (например, границ и способности для освобождения).
- Перегруженный ESMF_FieldSetCommit (), чтобы принять Fortran указатель массива и сохранить свои свойства (например, границ и способности для освобождения).
- Сетка теперь поддерживает опцию ESMF_INDEX_USER для indexflag. Это позволяет пользователю явно указать нижнюю границу их локальном пространстве индекса. Это необходимо при создании поле с Fortran указатель массива с нестандартной индексации.
- Перегруженный ESMF_ArrayCreate (), чтобы принять Fortran указатель массива и сохранить свои свойства (например, границ и способности для освобождения).
- Оптимизированный ESMF_ArraySMM () и ESMF_ArrayBundleSMM () производительность выполнения, масштабируемость и использование памяти.
- Добавлена поддержка для оптимизации коммуникаций для массивов с различными распределениями, размеров и размеров в той же ArrayBundle.
- Добавлена поддержка КЭУ с нулевыми элементами в DistGrid, Array и области.
- Сделано аргумент localDe дополнительные в ESMF_ArrayGet () и ESMF_FieldGet () методы, где не запрещенные перегрузки ограничения.
- Сигналы установить на любое TimeStep 0, на ESMF_ClockCreate (), теперь звонят должным образом.
- Сигналы Теперь звонить правильно для часов в ESMF_MODE_REVERSE.
- Сигналы Теперь звонить правильно для часов с использованием отрицательного TimeStep.
- функция размер указателя коррекции Добавил умолчанию построить систему используя новые переменные среды ESMF_F90_PTR_BASE_SIZE и ESMF_F90_PTR_PLUS_RANK.
Что нового в версии 3.1.0rp1:.
- Добавлена Атрибуты для класса грид
- Добавлена Атрибуты для класса Array.
- Добавлена minIndex и maxIndex аргументы ESMF_GridGet (). Эти аргументы относятся к первой плитки.
- Добавлена minIndexPDimPDe и maxIndexPDimPDe аргументы ESMF_DistGridGet ().
- Добавлена ESMF_GridMatch () метод, чтобы сравнить два объекта сетки.
- Новый раздел в руководстве пользователя под названием & Quot; Настройка ESMF запустить тестовый набор приложений & Quot; Было добавлено, что описывает, как пользователи могут задавать свои собственные сценарии mpirun. ESMF Теперь последовательно использует настройки переменной среды ESMF_MPIRUN для запуска тестового набора в комплекте и примеры приложений.
- Следующие известно ошибки были исправлены.
Комментарии не найдены