2907
Comment:
|
6208
|
Deletions are marked like this. | Additions are marked like this. |
Line 6: | Line 6: |
kashiwa PCを使用してframe fileをみんなが快適に解析できるようにできるようにしたい | kashiwa PCを使用してみんなが快適に解析できるようにできるようにしたい |
Line 9: | Line 9: |
ちなみにframe fileのデータが欲しいだけなら、[[http://157.82.231.170/past_data_viewer/|Pastavi]]を使えば良い(宇宙線研のネットワークにつなぐ必要あり) |
|
Line 19: | Line 21: |
環境はほとんどできているはずなのでgwpyを使ってframe fileを読んでみる | 環境はdefaultでほとんどできているはずなのでgwpyを使ってframe fileを読んでみる |
Line 30: | Line 32: |
kashiwa PCにログイン |
|
Line 33: | Line 37: |
などでkashiwa PCにログイン 仮想環境の構築(python3.7の部分は好みのversionで良い, 後ろの~/.vir~の部分も好きなpathに好きな名前で置いても良い) |
仮想環境の構築(python3.7の部分は好みのversionで良い, 後ろの~/.virtualenvs/new_envの部分も好きなpathに好きな名前で置いても良い) |
Line 36: | Line 39: |
virtualenv -p python3.7 ~/.virtualenvs/new_env | virtualenv -p python3.6 ~/.virtualenvs/new_env |
Line 42: | Line 45: |
今後、仮想環境を有効にする際は毎回これを打つ必要があり、面倒くさいので~/.bashrcに | 今後、仮想環境を有効にする際は毎回これを打つ必要があり、面倒くさいので |
Line 44: | Line 47: |
alias nenv=source ~/.virtualenvs/new_env/bin/activate | echo "alias nenv='source ${HOME}/new_env/bin/activate' " >> ${HOME}/.bashrc |
Line 46: | Line 49: |
と書けば、nenvと打つだけで仮想環境を有効にできる もしくは、~/.bash_profileや~/.bashrcに {{{ if [[ $- =~ i ]]; then source ~/.virtualenvs/new_env/bin/activate fi }}} と書くと、ログイン時に毎回仮想環境が立ち上がってくれる |
と打てば、nenvと打つだけで仮想環境を有効にできる |
Line 56: | Line 52: |
pip install -U pip | pip install -U pip setuptools wheel |
Line 66: | Line 62: |
自身のpc上に作業用のディレクトリを適当に作る(mkdir以下は当然任意) {{{ mkdir ~/work }}} 作ったdirectoryにcodeを書く {{{ emacs ~/work/test.py . . . }}} 以下のshell scriptを作業用のdirectiryにおく(公開鍵の設定などは済ましていることを前提としている) {{{ exePath=$(pwd)/$2 exePath=~${exePath#*$(cd $(dirname $0); cd ../ ;pwd)} ssh-add ~/.ssh/id_rsa rsync -arp --inplace $(cd $(dirname $0); pwd) m31-01:~/ ssh -Y -t -t m31-01 <<EOC source ~/.virtualenvs/new_env/bin/activate $1 ${exePath} exit EOC rsync -arp --inplace m31-01:~/$(basename $(cd $(dirname $0); pwd))/ $(cd $(dirname $0); pwd) ssh-add -D ~/.ssh/id_rsa }}} |
|
Line 67: | Line 91: |
詰まった問題やこのページの通りやってもうまくいかないことを書き込む == gwpyを最新のものにするとframe fileがtimeseries.readで読めなくなる == 単一source fileなら読めるが複数source fileを読もうとするとerrorが出る {{{ $ python test.py 単一ファイル読み出し TimeSeries([-522.9516 , -522.9491 , -522.79504, ..., -354.20483, -354.3787 , -354.50488] unit: nm / s, t0: 1247030016.0 s, dt: 6.103515625e-05 s, name: K1:CAL-CS_PROC_MICH_DISPLACEMENT_DQ, channel: K1:CAL-CS_PROC_MICH_DISPLACEMENT_DQ) 複数ファイル読み出し XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): End of frame stream while 1114112 points remain to be read XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): I/O error XLAL Error - XLALFrStreamReadREAL4TimeSeries (LALFrStreamReadTS_source.c:236): Internal function call failed: I/O error XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): End of frame stream while 589824 points remain to be read XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): I/O error XLAL Error - XLALFrStreamReadREAL4TimeSeries (LALFrStreamReadTS_source.c:236): Internal function call failed: I/O error XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): End of frame stream while 65536 points remain to be read XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): I/O error XLAL Error - XLALFrStreamReadREAL4TimeSeries (LALFrStreamReadTS_source.c:236): Internal function call failed: I/O error Traceback (most recent call last): File "/home/taiki.tanaka/work/PEMInjection/test.py", line 55, in <module> data = TimeSeries.read(sources,channel,format='gwf.lalframe',nproc=2,start=int(gpsstart),end=int(gpsend)) File "/gpfs/home/taiki.tanaka/.virtualenvs/gw/lib/python3.6/site-packages/gwpy/timeseries/core.py", line 314, in read return timeseries_reader(cls, source, *args, **kwargs) File "/gpfs/home/taiki.tanaka/.virtualenvs/gw/lib/python3.6/site-packages/gwpy/timeseries/io/core.py", line 50, in read return io_read_multi(joiner, cls, source, *args, **kwargs) File "/gpfs/home/taiki.tanaka/.virtualenvs/gw/lib/python3.6/site-packages/gwpy/io/mp.py", line 108, in read_multi raise exc RuntimeError: Failed to read /data/full/12470/K-K1_C-1247030016-32.gwf: Internal function call failed: I/O error }}} |
柏PCの使い方
目的
kashiwa PCを使用してみんなが快適に解析できるようにできるようにしたい
あと環境構築などで詰まったことの備忘録
ちなみにframe fileのデータが欲しいだけなら、Pastaviを使えば良い(宇宙線研のネットワークにつなぐ必要あり)
セットアップ
アカウント申請
田越、大原さんあたりの誰かに柏のkagra main systemの利用アカウントが欲しい旨を連絡する。
startup
主にアカウント発行の際にメールでもらえるguideに沿って行えば良い
一応、JGW docにも資料がある
frame fileを読んでみる(python)
環境はdefaultでほとんどできているはずなのでgwpyを使ってframe fileを読んでみる Lecture in Japanese
frame fileを読んで様々なplotを書くためのsample codeやcondor_jobを使ってjobを投げるためのshellなどが豊富にある Kozapy
kashiwa PCのdefault環境では満足できない方へ
virtualenv
matplotlibが古すぎてplotがダサくなる方やgwpyのerrorが自身のPCと異なり困る方など向け
おそらくkashiwaでpython環境構築に使うのが推奨されているのがvirtualenvである
kashiwa PCにログイン
ssh m31-01
仮想環境の構築(python3.7の部分は好みのversionで良い, 後ろの~/.virtualenvs/new_envの部分も好きなpathに好きな名前で置いても良い)
virtualenv -p python3.6 ~/.virtualenvs/new_env
仮想環境を有効にする
source ~/.virtualenvs/new_env/bin/activate
今後、仮想環境を有効にする際は毎回これを打つ必要があり、面倒くさいので
echo "alias nenv='source ${HOME}/new_env/bin/activate' " >> ${HOME}/.bashrc
と打てば、nenvと打つだけで仮想環境を有効にできる 次に仮想環境を有効にした状態でpipを用いてlibraryをinstallする
pip install -U pip setuptools wheel pip install gwpy lalsuite
lalsuiteもinstallしないとframe fileが読めないので注意
gwpyをinstallする時に必要なものはほとんど一緒にinstallされると思うが、他に必要なlibraryがある場合は別途pip installを用いてinstallする
自身のPC上でprogram編集と結果閲覧を完結したい人向け
自身のpc上のeditorを愛している方や、ネットワークが弱くsshでm31-01にログインした状態で作業するのにストレスがある方向け
自身のpc上に作業用のディレクトリを適当に作る(mkdir以下は当然任意)
mkdir ~/work
作ったdirectoryにcodeを書く
emacs ~/work/test.py . . .
以下のshell scriptを作業用のdirectiryにおく(公開鍵の設定などは済ましていることを前提としている)
exePath=$(pwd)/$2 exePath=~${exePath#*$(cd $(dirname $0); cd ../ ;pwd)} ssh-add ~/.ssh/id_rsa rsync -arp --inplace $(cd $(dirname $0); pwd) m31-01:~/ ssh -Y -t -t m31-01 <<EOC source ~/.virtualenvs/new_env/bin/activate $1 ${exePath} exit EOC rsync -arp --inplace m31-01:~/$(basename $(cd $(dirname $0); pwd))/ $(cd $(dirname $0); pwd) ssh-add -D ~/.ssh/id_rsa
詰まった問題
詰まった問題やこのページの通りやってもうまくいかないことを書き込む
gwpyを最新のものにするとframe fileがtimeseries.readで読めなくなる
単一source fileなら読めるが複数source fileを読もうとするとerrorが出る
$ python test.py 単一ファイル読み出し TimeSeries([-522.9516 , -522.9491 , -522.79504, ..., -354.20483, -354.3787 , -354.50488] unit: nm / s, t0: 1247030016.0 s, dt: 6.103515625e-05 s, name: K1:CAL-CS_PROC_MICH_DISPLACEMENT_DQ, channel: K1:CAL-CS_PROC_MICH_DISPLACEMENT_DQ) 複数ファイル読み出し XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): End of frame stream while 1114112 points remain to be read XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): I/O error XLAL Error - XLALFrStreamReadREAL4TimeSeries (LALFrStreamReadTS_source.c:236): Internal function call failed: I/O error XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): End of frame stream while 589824 points remain to be read XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): I/O error XLAL Error - XLALFrStreamReadREAL4TimeSeries (LALFrStreamReadTS_source.c:236): Internal function call failed: I/O error XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): End of frame stream while 65536 points remain to be read XLAL Error - XLALFrStreamGetREAL4TimeSeries (LALFrStreamReadTS_source.c:127): I/O error XLAL Error - XLALFrStreamReadREAL4TimeSeries (LALFrStreamReadTS_source.c:236): Internal function call failed: I/O error Traceback (most recent call last): File "/home/taiki.tanaka/work/PEMInjection/test.py", line 55, in <module> data = TimeSeries.read(sources,channel,format='gwf.lalframe',nproc=2,start=int(gpsstart),end=int(gpsend)) File "/gpfs/home/taiki.tanaka/.virtualenvs/gw/lib/python3.6/site-packages/gwpy/timeseries/core.py", line 314, in read return timeseries_reader(cls, source, *args, **kwargs) File "/gpfs/home/taiki.tanaka/.virtualenvs/gw/lib/python3.6/site-packages/gwpy/timeseries/io/core.py", line 50, in read return io_read_multi(joiner, cls, source, *args, **kwargs) File "/gpfs/home/taiki.tanaka/.virtualenvs/gw/lib/python3.6/site-packages/gwpy/io/mp.py", line 108, in read_multi raise exc RuntimeError: Failed to read /data/full/12470/K-K1_C-1247030016-32.gwf: Internal function call failed: I/O error