SPEDAS Training Session of the First Half-DC electric field-

M. Shoji, S. Matsuda, T. Hori, M. Teramoto, T. F. Chang, S.
Kurita, Y. Kasaba, Y. Kasahara, T. Nakagawa, Y. Miyoshi

1

ERG Training Session - DC E-field -3/6/19このセッションを受けるにあたって ここは、SPEDAS Training Session アドバンスドコースです。前後編とも、”ある程度”のIDL/SPEDAS知識を前提とします。
 技術的にわからないことは机間巡視しているチュー

ターに質問してください。

2

ERG Training Session - DC E-field -3/6/19注意!
 これから始まるのはSPEDASの“hands-on”セッションです。e-mail確認などの内職の時間ではありません。


特に今日は、電場データ使用に関する注意点が多数説明される予定です。

 インターネット環境を多人数で使用します。Dropbox,Google Drive等のクラウド共有や(よもや)動画サイトの閲覧など、不要不急のネットワーク回線使用は禁止します。
Windows アップデート機能も休止させましょう。

3

ERG Training Session - DC E-field -3/6/19このパートの目標は・・・
PWEから公開されているEFD-spin (スピンフィット電場),EFD-pot(ポテンシャル)データの内容を理解、活用し、DC電場の解析が出来るようになる。
どのようにしてL2 spinfitデータが出来ているか 公開されている変数と各種注意点の確認
 VxB電場の導出と実測値との比較、差分の導出
 共回転電場の導出と実測値との比較
 Kazama et al., [2018]の イベントを見る(UHRとpotentialの比較)
4

ERG Training Session - DC E-field -3/6/19CDFファイル読み込み: load procedure
IDL> erg_init
ERG> timespan, ‘2017-12-13’
ERG> set_erg_var_label
ERG> erg_load_pwe_efd
ERG> erg_load_pwe_efd, datatype=‘pot’
ERG> tplot_names

SPEDAS Tips
✓ set_erg_var_label: 軸にあらせ軌
道要素のラベルをつける。
5

ERG Training Session - DC E-field -3/6/19

Load procedure解説
 erg_load_pwe_efd : PWE/EFDデータをダウンロードして tplot変数化
 取得1年以内のデータは公開されていないため、uname, passキーワードが必要 datatype キーワードで公開中のデータ: “spin”, “pot”,“spec”を選択可能
 特にspecの場合、bandwidthキーワードでスペクトルのバンド幅を取得可能
6ERG Training Session - DC E-field -3/6/19

tplot変数を表示
ERG> options, ['erg_pwe_efd_l2_Eu_*', 'erg_pwe_efd_l2_Ev_*'], datagap=60.
ERG> calc, '"erg_pwe_efd_l2_Eu_residual"=abs("erg_pwe_efd_l2_Eu_residual")’
ERG> calc, '"erg_pwe_efd_l2_Ev_residual"=abs("erg_pwe_efd_l2_Ev_residual")’
ERG> ylim, ['erg_pwe_efd_l2_Eu_residual', 'erg_pwe_efd_l2_Ev_residual'], 0, 30
ERG> tplot, ['erg_pwe_efd_l2_Eu_dsi', 'erg_pwe_efd_l2_Ev_dsi', $'erg_pwe_efd_l2_Eu_residual', 'erg_pwe_efd_l2_Ev_residual', $'erg_pwe_efd_l2_Vave']

SPEDAS Tips
✓ datagapオプション: 設定値より長い時間間隔を持つ隣接2点のデータを補完しない✓ labflagオプション: ラベルを離して付ける✓ calc: tplot変数に任意の計算を行う
7

ERG Training Session - DC E-field -3/6/19Spinfit電場データ変数の紹介
 erg_pwe_efd_l2_E[u,v]_dsiDouble probe [U, V] antennaから計算された電場 erg_pwe_efd_l2_E[u,v]_residual

上記電場を計算する際に生じたsine fit波形との残余% erg_pwe_efd_l2_E[u,v]_offset


上記電場を計算する際に得たオフセット

 erg_pwe_efd_l2_quality_flagクオリティフラグ(16 bit表記: 後述) erg_pwe_efd_l2_E[u1, u2, v1, v2]_*


各Single probeのポテンシャルから計算された電場 erg_pwe_efd_l2_WPT[1,2]_[3,4]_BIAS_LVL8Biasレベル (support data)
ERG Training Session - DC E-field -3/6/19Spin平均電位データ変数の紹介
 erg_pwe_efd_l2_V{u1,u2,v1,v2}


Spin周期で平均(sine fitのoffset)で求めた各プローブ電位

 erg_pwe_efd_l2_Vave

9

上記4電位の平均

ERG Training Session - DC E-field -3/6/19詳細はwiki pageを参照

10

ERG Training Session - DC E-field -3/6/19

あらせ衛星座標系(SGI, SSI, DSI)

✓ SGI, SSIはspinしている系✓ DSIはSSIからdespinした系✓ SGI-yとSSI-xのなす角は21.6°

11

ERG Training Session - DC E-field -3/6/19

あらせ衛星座標系とPWE UV座標系の関係
U, VそれぞれのアンテナがDC電場を独立して計測→ Spin変調により一周分のsin波形として観測される→ 初期位相と振幅がわかればDC電場ベクトルが導出できる→ (理想的には)U, Vどちらで計測した電場ベクトルも同じ(はず)a

電場[after Kasaba et al., 2017]12

ERG Training Session - DC E-field -3/6/19

Level 2 Spinfit電場ができるまで
1)入力: 64/256 Hz 電場データEu(t), Ev(t) @Leve-1prime CDFファイルをindex pulse time
区間ごとに切り出す
2) Sine fitを(IDL curvefit関数を用いて)行いパラメータ(A, a, C)を算出する:
Eu=Ausin(wspint+au)+Cu, Ev=Avsin(wspint+av)+Cv
3) Sine fitで求めたスピン毎の振幅及び位相から、スピン軸に垂直な電場ベクトルを衛星とスピンしている座標系(U-V座標系)でU,Vアンテナそれぞれ独立に導出する:

Euu=Ausinau, Euv=Aucosau,
Evu=-Avcosav, Evv=Avsinav,4) ワイヤアンテナとSun Sensorの角度差を考慮して(21.9°)太陽セクター基準のDSI座標に変換する:
Eux_dsi, Euy_dsi, Evx_dsi, Evy_dsi  Level 2データ
13ERG Training Session - DC E-field -3/6/192017-12-13の電場観測(Eu 64/256 Hzデータ)

14

ERG Training Session - DC E-field -3/6/19

“良い”Sine fit例: Res~0.004%Sinefit波形

15実測

ERG Training Session - DC E-field -3/6/19

“まあまあ”なSine fit例: Res~0.17%Sinefit波形

16実測

ERG Training Session - DC E-field -3/6/19

“ダメ”なSine fit例: Res~1.4%Sinefit波形

17実測

ERG Training Session - DC E-field -3/6/19Quality flagをツールで確認する
ERG> erg_pwe_qflag

ERG> erg_pwe_qflag, /full18

ERG Training Session - DC E-field -3/6/19

19

ERG Training Session - DC E-field -3/6/19OffsetデータでUアンテナの異常を確認例) 2018-08-13のデータ✓ U1のポテンシャルが他と異なる✓ Potentialデータ、SPB電場データも合わせてチェック

20

ERG Training Session - DC E-field -3/6/19

VxB電場の計算(軌道とMGFから)
ERG> erg_load_orb
ERG> erg_load_mgf
ERG> tmagname = 'erg_mgf_l2_mag_8sec_dsi’;;; Rotate velocity vector from GSE to DSI
ERG> spd_cotrans, 'erg_orb_l2_vel_gse', 'vel_j2000', in_coord='gse', out_coord='j2000’
ERG> erg_cotrans, 'vel_j2000', 'vel_dsi', in_coord='j2000', out_coord='dsi’;;; calcualte VxB in DSI coordinate
ERG> tinterpol_mxn, 'vel_dsi', tmagname
ERG> tcrossp, 'vel_dsi_interp', tmagname, newname='VxB_dsi’
ERG> calc, '"VxB_dsi"="VxB_dsi"*1e-3’
ERG> options, 'VxB_dsi', ysubtitle='[mV/m]'

SPEDAS Tips
✓ spd_cotrans: 各種地理座標系間の変換ルーチン✓ erg_cotrans: あらせ衛星固有の座標系への変換ルーチン。J2000を介して他の地理座標系へと変換✓ tinterpol_mxn, tvar, tref: tvarの時間ラベルをtrefに揃えて値を補間✓ tcrossp: tplot変数の外積
21

ERG Training Session - DC E-field -3/6/19

Ezの導出とEz/Exyの確認 (Euのみ記載)
ERG> tinterpol, tmagname, 'erg_pwe_efd_l2_Eu_dsi’, newname=tmagname+'_interp’
ERG> get_data, 'erg_pwe_efd_l2_Eu_dsi', data=eu
ERG> get_data, tmagname+'_interp', data=b
ERG> ez= -(eu.y[*,0]*b.y[*,0]+eu.y[*,1]*b.y[*,1])/b.y[*,2]
ERG> eu3=fltarr(n_elements(eu.x),3)

E・B=0を仮定し、成分を書き出した式

ERG> eu3[*,0:1]=eu.yERG> eu3[*,2]=ez
ERG> store_data, 'erg_pwe_efd_l2_Eu3_dsi', data={x:eu.x, y:eu3}

ERG> store_data, 'erg_pwe_efd_l2_Eu3_ratio', data={x:eu.x,y:eu3[*,2]/sqrt(eu3[*,0]^2+eu3[*,1]^2)}

推定した電場の値の方が実測値よりも大きくなるとき、(ex. 磁場がスピン軸に垂直に近くなっているとき)正しく3次元電場ベクトルが求められていない可能性がある。
22

ERG Training Session - DC E-field -3/6/19

電場データとVxBとの比較
ERG> split_vec, 'erg_pwe_efd_l2_Eu3_dsi’
ERG> split_vec, 'erg_pwe_efd_l2_Ev3_dsi’
ERG> split_vec, 'VxB_dsi’
ERG> store_data, 'Ex_with_VxB’, data=['erg_pwe_efd_l2_Eu3','erg_pwe_efd_l2_Ev3','VxB']+'_dsi_x’
ERG> store_data, 'Ey_with_VxB', data=['erg_pwe_efd_l2_Eu3','erg_pwe_efd_l2_Ev3','VxB']+'_dsi_y’
ERG> store_data, 'Ez_with_VxB', data=['erg_pwe_efd_l2_Eu3','erg_pwe_efd_l2_Ev3','VxB']+'_dsi_z’
ERG> tplot, 'E'+['x','y','z']+'_with_VxB'✓ 合わせて” erg_pwe_efd_l2_E{u,v}3_ratio”
もプロットしてみる✓ Eu, Evに差が発生していないか確認する✓ Residual, offset, quality flagなど、基本的な要注意項目はまず確認する癖をつける
23

ERG Training Session - DC E-field -3/6/19

VxB差分を取り、SM座標系へ変換
ERG> dif_data, 'erg_pwe_efd_l2_Eu3_dsi', 'VxB_dsi', newname='Eu-VxB_dsi’
ERG> dif_data, 'erg_pwe_efd_l2_Ev3_dsi', 'VxB_dsi', newname='Ev-VxB_dsi’
ERG> erg_cotrans, 'Eu-VxB_dsi', 'Eu-VxB_j2000', in_coord='dsi', out_coord='j2000’
ERG> erg_cotrans, 'Ev-VxB_dsi', 'Ev-VxB_j2000', in_coord='dsi', out_coord='j2000’
ERG> spd_cotrans, 'Eu-VxB_j2000', 'Eu-VxB_sm', in_coord='j2000', out_coord='sm’
ERG> spd_cotrans, 'Ev-VxB_j2000', 'Ev-VxB_sm', in_coord='j2000', out_coord='sm’
ERG> options, ['Eu-*','Ev-*'], datagap=60., labels=['Ex','Ey','Ez’]
ERG> ylim, ['Eu-*', 'Ev-*'], -10, 10
ERG> tplot, ['Eu-VxB_sm', 'Ev-VxB_sm']

24

ERG Training Session - DC E-field -3/6/19

Corotation電場の導出
ERG> spd_cotrans, 'erg_orb_l2_pos_gse', 'pos_geo', in_coord='gse', out_coord='geo'
ERG> get_data, 'pos_geo',data=data

SPEDAS Tips
✓ tkm2re: 与えたtplot変数をkm⇄Reで変換するルーチン。”km”オプションでRe→km, “replace”オプションで元のtplot変数を置き換え✓ 1Re=6,374kmを仮定

ERG> xgeo=data.y[*,0]ERG> ygeo=data.y[*,1]
ERG> zgeo=data.y[*,2]
ERG> nd=n_elements(data.x)
ERG> v_cor_geo = fltarr(nd,3)
ERG> v_cor_geo_t = sqrt(xgeo^2+ygeo^2)*2.*!pi/86400.
ERG> v_cor_geo[*,0] = -ygeo*v_cor_geo_t/sqrt(xgeo^2+ygeo^2)
ERG> v_cor_geo[*,1] = xgeo*v_cor_geo_t/sqrt(xgeo^2+ygeo^2)
ERG> v_cor_geo[*,2] = 0.
ERG> store_data, 'v_cor_geo', data={x:data.x, y:v_cor_geo}
ERG> tkm2re, 'v_cor_geo', /km, /replace
ERG> spd_cotrans, 'v_cor_geo', 'v_cor_sm', in_coord='geo', out_coord='sm’

ERG> tinterpol, 'erg_mgf_l2_mag_8sec_sm', 'v_cor_sm', newname='erg_mgf_l2_mag_8sec_sm_interp’
ERG> tcrossp, 'erg_mgf_l2_mag_8sec_sm_interp', 'v_cor_sm', newname='E_cor_sm’
ERG> calc, '"E_cor_sm"="E_cor_sm"*1e-3'
ERG> options, 'E_cor_sm', labels=['Ecor_x', 'Ecor_y', 'Ecor_z’]

25

ERG Training Session - DC E-field -3/6/19

観測データとCorotation電場の比較
ERG> split_vec, 'Eu-VxB_sm’
ERG> split_vec, 'Ev-VxB_sm’
ERG> split_vec, 'E_cor_sm’
ERG> store_data, 'Ex_comparison', data=['Eu-VxB_sm', 'Ev-VxB_sm', 'E_cor_sm']+'_x’
ERG> store_data, 'Ey_comparison', data=['Eu-VxB_sm', 'Ev-VxB_sm', 'E_cor_sm']+'_y’
ERG> store_data, 'Ez_comparison', data=['Eu-VxB_sm', 'Ev-VxB_sm', 'E_cor_sm']+'_z’
ERG> ylim, ['Ex','Ey','Ez']+'_comparison', -10, 10
ERG> tplot, ['Ex','Ey','Ez']+'_comparison'

26

ERG Training Session - DC E-field -3/6/19

ECHと電位を比較[Kazama et al., 2018]27

ERG Training Session - DC E-field -3/6/19

HFA, OFA, EFD-potのstackplot
ERG> timespan, '2017-04-12’
ERG> erg_load_pwe_hfa
ERG> erg_load_pwe_ofa
ERG> erg_load_pwe_efd, datatype='pot’
ERG> set_erg_var_label
ERG> tplot, ['erg_pwe_hfa_l2_lm_spectra_e_mix','erg_pwe_ofa_spec_l2_E_spectra_132','erg_pwe_efd_l2_Vave’]
ERG> tlimit, '2017-04-12/'+['16:50', '17:30']

28

ERG Training Session - DC E-field -3/6/19memo29

ERG Training Session - DC E-field -3/6/19

memo

30

ERG Training Session - DC E-field -3/6/19memo

31

ERG Training Session - DC E-field -3/6/19