понедельник, 30 сентября 2013 г.

Научные "регулярные выражения" и их визуализация в matplotlib. Основы matplotlib.pyplot

Опубликовал новый ipython notebook на русском языке. В нём три части:

1) Расчёт сумм, средних и ско по столбцам или строкам двумерного массива без циклов, а также вычитание из получившихся выборок линейного тренда.

2)  Совместная сортировка двух одномерных массивов и случайный выбор n элементов из массива.

3) Краткое введение в структуру matplotlib.pyplot: рисунки, фигуры и оси.

среда, 25 сентября 2013 г.

Как опубликовать свой ipython notebook на nbwiewer.ipython.org

Задача: опубликовать свой ipython notebook на nbwiewer.ipython.org

Самым простым вариантом опубликовать в сети свой notebook, сделанный с помощью ipython notebook, является его публикация в родном формате (*.ipynb) на какой-нибудь онлайн сервис. По совету Николая Колдунова рассмотрим способ бесплатной публикации на сервисе github.

понедельник, 23 сентября 2013 г.

вторник, 20 августа 2013 г.

Python for windows. Питон для виндоуз. Winpython

Цель: Разобраться в азах языка программирования Питона
Методы: WinPython, python, numpy, scipy, matplotlib, basemap
Задачи:
1) Установить на windows Питон;
2) разобраться в основных модулях Питона, которые необходимы для построения "научного конвейера";
3) "Научный конвейер". На примере реанализа NCEP/NCAR разобрать полный цикл обработки гидрометеорологических и океанологических данных: от чтения netcdf файла до рисования карты, пригодной для презентации/публикации.

Хочу предложить читателям моего блога взглянуть на язык программирования Питон/Python. Недавно я начал активно использовать его для решения своих научных задач (построение карт различных метеорологических параметров по данным различных реанализов в формате netcdf). Python позволяет легко читать netcdf формат, что для пользователей windows очень актуально. Ncdump, конечно, хорош, но требует всё равно постобработки. К тому же большие файлы  (а таких в научных задачах большинство) он "жуёт" плохо. Установить же библиотеку netcdf на windows, как я понимаю, задача достойная эпитета "эпическая".
А вот Питон/Python работает с netcdf легко и непринуждённо! К тому же сейчас для Питона написаны и свободно распространяются модули, которые позволяют создавать графику, в том числе и географические карты, очень высокого класса. Таким образом, с помощью Питона можно создать конвейер полного цикла по производству научной продукции (чтение данных, обработка и преобразование данных, анализ данных, графическое представление результатов).
Конечно, у Питона есть и недостатки. Но о них мы поговорим как-нибудь потом. А теперь перейдём к решению поставленных задач.

воскресенье, 26 мая 2013 г.

Fortran и Windows 8. Compaq Visual Fortran и Windows 7. Windows x64 и fortran

Задача: Поставить компилятор fortran-а на компьютер/ноутбук с операционной системой Windows 8 
Методы решения: Geany, CVF 6.1 и выше

Дорогие пользователи Compaq Visual Fortran версии 6.1 и выше!

Только что поставил CVF6.1 на ноутбук ASUS S46CB с операционной системой Windows 8. Работает правда из под оболочки Geany версии 1.23 (можно ниже), а не родной оболочки CVF.

Итак, инструкция по установке компилятора CVF и Geany на Windows 8.


понедельник, 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...