ラベル 太陽物理学 の投稿を表示しています。 すべての投稿を表示
ラベル 太陽物理学 の投稿を表示しています。 すべての投稿を表示

2018年4月10日火曜日

Google Colaboratory で Sunpy、その1 導入 [20180509修正]

「GDLでSSWを動かそう計画」が行き詰まっていたので、pythonを使った太陽物理学の解析ライブラリ Sunpy を動かしてみた。

Google Colabの知っておくべき使い方 – Google Colaboratoryのメリット・デメリットや基本操作のまとめ(codexa)
Google Colabを導入(Qiita)


2017年8月20日日曜日

GDLSSW007, PSとEPS (2) PLplot導入

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き


PLplot自身から、PSファイルとEPSファイルの作成を試みる。

参考にしたサイト, PLplot


2017年8月19日土曜日

GDLSSW006, PSとEPS (1)

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き


前回の記事では、GDL上で作成した論文用のEPSファイルがどうにもおかしかった。

この不具合がどこから来ているのかを調べる。



2017年8月9日水曜日

GDLSSW005, EPS作成、MDIとTrace, その2

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き


前回の記事に書いたように、SSWの挙動を確認するために、過去にIDLで作成した図を再度作成する。

画像は、Yamamoto & Sakurai (2009, PASJ, 61, 75)の図3である。(以下の図)


GDL上で、同じプロシージャで作成した図が以下である。



どちらの図もEPSファイルをconvertコマンドでJPGにしている。

以下、図の違いである。

  • 画像の大きさが違う。(縦8cm、横8cmに設定)
  • フォントが違う(Times-Romanに設定)
  • 磁場強度の輪郭線の色が違う。(線の太さも細い気がする)
  • (緑の濃さが若干異なる気がする)

GDLではプロット関係では、PLplotを利用している。

プロット領域の設定は基本だろうし、フォントについてはPLplotのドキュメントを読む限り使えるはずで、この辺のPLplotとの調整はまだうまく行っていない模様。

色違いの磁場強度の輪郭線を上書きできないのもPLplot関係なのか?

GDL上に'xloadct'は見つからないが、loadctは実行可能。

Xウインドウ上でプロット(plot_map,/over,lcolor)させても同じように単色の輪郭線しか書けないが、新たにプロットすると、新しいカラーテーブルで表示される。

Xウインドウ上でのプロット。縮小表示している。

異なるカラーバーでのプロット。縮小表示。





GDLでのプロットの結論として、「最低限の表示はできるが、細かい調整はできない」

クイックルックには十分だが、EPSファイルを思ったように作成できないのは、論文作成のためには致命的な欠陥。



IDLとGDLのEPSで、TRACE画像の緑の濃さが若干異なる気がするが、IDLのファイルを再現できる環境では無いので、これは要注意。

TRACEのprepで色々メッセージが出ているが、どれがダメなのかよく分からない。(止まってはいない)

2017年8月6日日曜日

GDLSSW004, EPS作成、MDIとTrace

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き


SSWの挙動を確認するために、過去にIDLで作成した図を再度作成する。

画像は、Yamamoto & Sakurai (2009, PASJ, 61, 75)の図3である。(以下の図)


オリジナルのEPSファイルをconvertコマンドでJPGにしたら、こんな感じになってしまった。

イベントはAR10486で起きたX10フレアで、TRACEで観測された1600Aの画像に、MDIの磁場強度の輪郭線を書いている。

 この図の作成の要点は、データの読み込み、マップ化、EPSファイルの作成である。



MDIデータの読み込みとマップ化


まずは、MDIについて、データの読み込みとマップ化を試みた。

MDIのFITSデータの読み込みについてはエラーメッセージは出なかった。

複数のファイルを一度に読み込む'mreadfits'も機能している。

ただ、データの内容については、おかしいかもしれない。

私の記憶では、MDIデータを読み込んだ後のアレイ(e.g., float[1024,1024])で、光球面の外には、float最小値である-32000?程度の値が入っているはずだったが、そこに全て'nan'が入っていた。
 
 
マップ化でエラーメッセージ?が出た。

% Compiled module: GET_FITS_CDELT.
% Compiled module: REP_TAG_NAME.
% Compiled module: IS_NUMBER.
% Compiled module: IS_NUMBER2.
% Input conversion error.
% Type conversion error: Unable to convert given STRING: 'cdel1' to FLOAT.
% Input conversion error.
% Type conversion error: Unable to convert given STRING: 'cdel2' to FLOAT.
% Input conversion error.
% Type conversion error: Unable to convert given STRING: 'dxb_img' to FLOAT.
% Input conversion error.
% Type conversion error: Unable to convert given STRING: 'dyb_img' to FLOAT.
% Compiled module: GET_FITS_CEN.

STRINGをFLOATに変換できないと言っているのは、is_number2.pro中の'finite'関数である。

index2map.pro -> get_fits_par.pro -> get_fits_cdelt.pro -> rep_tag_name.pro -> is_number.pro -> is_number2.pro

結論として、これらのメッセージは無視して良い。



このようにして作ったマップを表示すると、以下のようになる。

<<新版、8/6, 13時台>>


上に書いたように、光球面外の値がnanになっているので、以下の処理をした。

>    w0=where(finite(data0,/nan))
>    data0[w0]=-30000.

±3000Gで表示している。



なお最近のplot_mapは、キーワード無しで使うと、エラーを吐いて止まってしまう。

ベクトル化とかplot_map_index.pro ってなんなんすか、Zarroさん。





<<旧版、8/6, 1時台>>


この図では、光球面の外側も黒白カラーテーブルの中間色である灰色になってしまっている。

以前作った時は、ここが最低値の黒色になっていたはずである。(過去に作成した図で確認した)

そこで、データのnanの領域を-30000などの数値に変えようとしたがうまくいかない。

以下、data0がデータ、map0がマップ構造体である。

GDL> print,data0[0,0]
          nan
GDL> print,data0[10,10]
          nan
GDL> print,map0.data[10,10]
          nan
GDL> w0=where(data0 eq !VALUES.F_NAN)
GDL> help,w0
W0              LONG      =           -1
GDL> print,data0[0,0],!VALUES.F_NAN
          nan          nan
GDL> help,data0[0,0],!VALUES.F_NAN
<Expression>    FLOAT     =           nan
<Expression>    FLOAT     =           nan
GDL> print,(data0[0,0] eq !VALUES.F_NAN)
   0


whereと!VALUES.F_NANを使って、nanの領域を取り出せるかと思ったら失敗。

何より困った事に、データ中のnanとシステム変数のnanが一致しない。

なんか間違えてるかな?

2017年7月29日土曜日

GDLSSW004, sswdbの導入とmake_mirror.pro

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き

make_mirror.pro



GDLSSW003, sswdbの導入とON_IOERRORの不備

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き


前回までに、エラーメッセージが出ながらもssw_gdlを起動する事ができた。

次にSSWDBのインストールのため、sswdb_upgrade.proを動かした。

SSWDBのインストールのためには、SSWのホームページで装置名を選択して、テキストファイル(setup.sswdb_upgrade)を作る必要がある。


2017年7月27日木曜日

GDLSSW002, SSWの起動

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き

導入したGDLについては、plotやtvsclなど、なんとか動くみたい。

続いて、GDL上でのSSWの起動を試みた。

GDLSSW001, GDLとSSWのインストール

GDL (GNU Data Language) 上で SSW (Solar Soft Ware) を使うためのメモ書き(挫折の可能性あり)

まずはインストールから。

注目の投稿

【貨幣循環】名目GDPと M=G+I と V=1/(1-β) の成長率

「 【貨幣循環】貨幣循環導入の3点セット 」では、貨幣循環の定式化である M=G+I と V=1/(1-β) を紹介した。「 【貨幣循環】歳出伸び率とGDP成長率の関係 」では、名目GDPの成長率と政府支出Gの成長率の関係を紹介した。本記事では、MとV、および名目GDPの成長率...

人気の投稿