среда, 28 декабря 2011 г.

Осторожно! Оператор data

Задача: избежать "run-time" и скрытых семантических ошибок при использовании оператора data
Методы решения: fortran

"В Фортране существует две возможности задания начальных значений переменных: в операторах объявления типа и оператором DATA. Начальные значения присваиваются переменным на этапе компиляции программы."
О.В. Бартеньев "Современный ФОРТРАН", стр. 63

суббота, 24 декабря 2011 г.

Fortran и ОС Windows 7

Задача: Поставить компилятор fortran-а на компьютер/ноутбук с операционной системой Windows7 (на 64 разрядную)
Методы решения: Geany, CVF, gfortran, MinGW

Для пользователей ОС Windows XP самой распространённой "программой с фортраном" является, наверное, Compaq Visual Fortran. Так бы и сидел научный брат за старым, но никем не отменным сине-зелёным фортаном, но повальный переход на новые 64 разрядные ОС (в т.ч. и Windows7) привёл к неизбежным переменам. Несмотря на то, что у CVF есть версия для 64 разрядных ОС, конкретно под Windows7 полноценно CVF отказывается работать.
Перед пользователем встаёт вопрос: как быть? Как вариант - можно снести Windows7 и поставить Windows XP, где CVF работает отлично. А можно перейти на какой-либо дистрибутив ОC Linux и программировать на свободном программном обеспечении (СПО, gfortran и g95). Правда для консервативного пользователя такое решение представляется слишком радикальным.
А ведь хочется как: работать под новенькой Windows7 и пользоваться всеми благами прежних программным пакетов. Преемником фирмы Compaq (последним продуктом CVF, кажется, стала версия 6.6) по поддержке и развитию фортрана стала фирма Microsoft с программным продуктом Microsoft Visual Studio (MSVS). Причём компилятор фортрана в него необходимо ставить отдельно, он не входит в дистрибутив по умолчанию. Для чистой совести также необходима лицензия MS.

Есть компромиссные варианты.

Вариант I: gfortran

Можно установить БЕСПЛАТНЫЙ и СВОБОДНО распространяемый компилятор gfortran под Windows7 и работать с ним через Geany.
Он с успехом справляется с подавляющим большинством научных задач, решаемых на фортране. И gfortran и Geany являются СПО, так что на них можно работать как под ОС Windows, так и под ОС Linux.


Вариант II: CVF через Geany

Есть один маленький фокус. Если установить на компьютер с Windows 7 или 8 Compaq Visual Fortran (CVF) и во время установки оставить все параметры по умолчанию, то можно будет "подцепить" компилятор CVF (df) через Geany или любой другой IDE (например, Notepad++).



Как перевести 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...