Python.

Визуализация научных данных на Python. (Александр Киселев)

 

Для оптимальной работы рекомендуем скачать и установить Anaconda (сборка, которая включает Python и все нужные для лекции библиотеки — numpy, scipy, matplotlib):
https://www.continuum.io/downloads

Дополнительные библиотеки можно установить так (в командной строке):

conda install astropy

 

Лекция matplotlib

Лекция astropy

Лекция scipy

 

Задачи

Решения задач (Киселев Александр)

 

Свои решения задач присылайте artem_vesnin@iszf.irk.ru

 

Задача 1

Дан набор данных:
xdata = np.array([­2,­1.64,­1.33,­0.7,0,0.45,1.2,1.64,2.32,2.9])
ydata = np.array([0.699369,0.700462,0.695354,1.03905,1.97389,2.41143,1.91091,0.919576,­0.730975,­1.42001])
И функция:

def func(x, p1,p2):
return p1*np.cos(p2*x) + p2*np.sin(p1*x)
Необходимо подобрать коэффициенты p1 и p

Задача 2
На сайте имеются глобальные карты ионосферных параметров, например электронной концентрации, полного электронного содержания, ветров и пр. Данные получены с использованием модели GSM TIP(Global numerical
self­consistent and time­dependent model of the thermosphere, ionosphere and protonosphere.). Необходимо написать скрипт, который на вход принимает данные с данного сайта и строит карту в виде контура.

Пример вывода:

Lecture4_Problem2_output

Задача 3

В обсерватории NSO(National Solar Observatory) имеется инструмент SOLIS (Synoptic Optical Long­term Investigations of the Sun), который проводит ежедневные наблюдения Солнца. На инструменте установлено несколько телескопов: 50 сантиметровый векторный спектромагнитограф, 14 сантиметровый полнодисковый телескоп и 8 миллиметровый телескоп для наблюдения за Солнцем как звездой. Необходимо написать скрипт, который скачивает последние доступные данные для 50 сантиметрового спектромагнитографа и выводит полнодисковую магнитограмму, область с максимальным значением поля (размером 200 на 200 пикселей), и срезы(  вертикальный и горизонтальный) через центр этой области. Ссылка на последние данные: http://solis.nso.edu/pubkeep/vsm_current_m630l_hr.fits.gz (http://solis.nso.edu/pubkeep/vsm_current_m630l_hr.fits.gz) Для скачивания данных можно использовать метод urlretrieve из модуля urllib.request.Данные скачиваются в формате fits запакованными в архив gz. Для открытия можно использовать команду open из модуля astropy.fits. (Распаковывать данные из архива не обязательно). Полнодисковая магнитограмма находится по индексу 0 в fits файле. Примерно то, как должно получиться:

Lecture4_Problem3_output1

Задача 4

Дано изображение. Необходимо убрать шум. Подсказка: на исходное (чистое изображение был наложен шум) нужно использовать преобразование Фурье что бы выявить шумовые гармоники

Comments are closed.