понедельник, 23 апреля 2012 г.

Особенности формата ввода/вывода в gfortran

Цель: Использовать выражения в дескрипторах преобразований <> в gfortran
Средства: gfortran

"Если в строке формата дескриптор преобразований использует целочисленную константу, то она может быть заменена заключенным в угловые скобки (< >) целочисленным выражением:"

integer :: m, k
k = 10
do m = 3, 5
  k = k*10 
  write(*, '(2x, i<m>)') k ! 100
  end do                         ! 1000
end                                ! 10000
О.В. Бартеньев, "Современный Фортран", стр. 294

Такой синтаксис позволяет создавать динамически корректируемый формат для ввода/вывода данных. Однако, компилятор gfortran для приведенного выше кода выдаст ошибку. Как же воспользоваться дескрипторами преобразований <> в gfortran?


вторник, 3 апреля 2012 г.

Install WRF on Linux OS. Part 1 - Установка модели WRF на Linux. Часть 1

Цель: Поставить модель WRF на Linux-дистрибутив
Средства: Ubuntu 10.04 LTS, WRF ARW model, Internet

Это первая часть "step-by-step" инструкции по установке и запуску негидростатической мезомасштабной атмосферной модели WRF версии 3.1 на ОС Linux. В ней описываются особенности сборки и компиляции двух главных компонент модели WRF: собственно WRF и WPS.  
В качестве среды Linux был использована довольно старая версия Ubuntu 10.04 LTS (Lucid Lynx). Все описанные ниже действия являются русифицированным аналогом онлайн учебника, который Вы можете найти здесь Wrf OnLineTutorial . Итак, приступим.

N.B. Библиотека Netcdf версии 4.1 была собрана без возможности использовать hdf5 (т.е. новый) формат. С установкой HDF5 возникли сложности, как и с WRF версии 3.3.
Netcdf 4.1 + WRF3.1 оказалось хорошим к установке сочетанием для этой версии Ububntu.

Как перевести UV в направление и скорость ветра? How to convert wind UV-components to direction and velocity?

 Всё просто.  def uv2dir(u, v):     '''     Источник:     https://github.com/blaylockbk/Ute_WRF/blob/master/functions/wind_calc...