Hatena::ブログ(Diary)

cpn blog このページをアンテナに追加 RSSフィード

2011-08-16

AOGS2011参加記録

06:00 | AOGS2011参加記録を含むブックマーク AOGS2011参加記録のブックマークコメント

台湾台北で開催された国際学会 AOGS に参加・発表してきました.

f:id:cpn:20110813152940j:image

学会中で短い間だったけど, 現地の伊藤君の案内で台北市内の色々なところに回れました.

台湾台風の研究が盛んでほぼ毎日関連するセッションが開かれていました. 特に伊藤君を始めとする台湾国立大学の方々の研究のレベルが高く, モチベーションが上がりました.

気候的には, 昼はこちらでいう夕立みたいな雨がちょくちょく降って曇っている事が多いので, 直射日光はそんなに厳しくないけど, 湿度が高くて外にいると汗がすぐ出てきます. 一方, 室内の冷房は厳しくて, 上着を一枚持ってきておけばよかったかなと思いました.


福岡から台北

いざ出発

f:id:cpn:20110807105711j:image


ちなみに, 早く来すぎて荷物受け取ってもらえず並び直しでした. 2 時間前にならないと受付してもらえないらしい...

でも, おかげで折りたたみ傘と通りもんと正露丸がゲットできました. 特に, 折りたたみ傘はお昼はよく雨が降る台湾ではすごく重宝.


あと, なぜか本田くんが一人だけ指定席になっていたのはうけた(笑)


飛行機は緑と白が基調のエバー航空.

f:id:cpn:20110807121956j:image

機内は寒くて, 機内食はあまり美味しくなかったなぁ...

あと, ブランケット頼んだら前の2人に渡されたり, パンが落ちて肩に当たったりとサービスは良くなかったです(笑).


台湾スマップ?と一緒のザキくん

f:id:cpn:20110807150914j:image


換金

f:id:cpn:20110807152234j:image

1 台湾ドルが約 2.8 円. 台湾は食べ物や交通費が日本よりかなり安く, 20000円分換金したけど使い切れずに, 帰りに 7,000 円ほど帰ってきました. ちなみに, 換金は行きも帰りも台湾でしたほうがお得とのことです.


大有巴士バスで桃園空港から台北市内へ. たったの 90 元.

f:id:cpn:20110807160431j:image


ホテルでくつろぐザキくん.

f:id:cpn:20110807184737j:image


士林夜市

夜は伊藤君の案内で士林夜市


地下鉄は切符でなくコインを改札にタッチする方式.

f:id:cpn:20110807191313j:image

f:id:cpn:20110807191340j:image

臭豆腐の匂いがすごかった.


台湾ビール

f:id:cpn:20110807194037j:image

チャーハンが美味しかった.

f:id:cpn:20110807194217j:image

出店でアーチェリーピンボールなどで遊びました. 懐かしい感じ.


学会 1 日目

学会会場へは MRT と歩きで 1 時間ほど. ちょっとホテル遠かったかな.


会場は台湾 1 の高さを誇る TAIPEI 101 のとなりの台北國際會議中心.

f:id:cpn:20110808102556j:image

f:id:cpn:20110808103931j:image

受付でなぜか参加費が払われていなくてちょっとトラブル.


午後は伊藤くんの案内で台湾国立大学へ.


メインストリートの椰子並木が印象的

f:id:cpn:20110808131250j:image

研究室はなんと銀行の上らしい.

f:id:cpn:20110808140451j:image


夜はレセプションに参加.


学会 2 日目

夜はザキくんと太田さんの発表お疲れ飲み. メニューにバッチリ日本語書いているのに, 店員さんが全く日本語喋れないという罠.


学会 3 日目

夜は発表後の大塚さんの希望で, 学会会場近くの臨江街観光夜市を回る. ここでも出店のシューティングで遊んだり.

f:id:cpn:20110816043008j:image

大塚さんの購入したちっちゃい貝のにんにくの聞いた食べ物が美味しかったな.


その後, 伊藤君の住んでいる永康街へ.


おいしい水餃子をいただく.

f:id:cpn:20110810195223j:image


永康刀削麺へ. 麺を刀で切る実演あり.

自分はジャージャー麺を頂いた. もちもちの麺で美味しかった.

f:id:cpn:20110810200457j:image


永康 15 というデザート屋さんでマンゴーかき氷をいただく.

フレッシュで美味しかった.

f:id:cpn:20110810205346j:image

f:id:cpn:20110810205908j:image


学会4 日目

この日は初めて市バスにのって会場に行ってみました.

知らない場所で乗るバスはちょっとワクワク.

夜は発表前日ということでホテルの近くの肥前屋でうなぎを頂きました.

結構行列ができていて驚き.

f:id:cpn:20110811195625j:image

f:id:cpn:20110811193648j:image


学会 5 日目

余裕をもってタクシーで会場へ.

自分は Outer Planets and Icy Worlds というセッションで, アジア系の人々が多い今まで見てきたセッションとは違って欧米の方が 7 割くらいで何か別のところに来たような印象を受けました.

初めての英語での口頭発表だったので, 久々にかなりの緊張感. マイクの位置が遠かったので持って話せば良かったなぁ. 質疑応答はグダグダだったけど, まあなんとか話せたかな.

f:id:cpn:20110816062350j:image

お昼に伊藤くんに台湾アキバ(電気街的な意味で)に連れていってもらいました.

f:id:cpn:20110812124103j:image

アニメイトには, 日本のアニメがたくさんあって驚き.

台湾版の K-ON もゲット.

f:id:cpn:20110813154703j:image


本田くんが無事発表を終えた後, 自分たち 3 人と, 篠田さん, 大塚さん, 坂井さん, 伊藤くんで再び永康街へ. 最終日ということで高級中華を頂きました.

花枝はイカの愛称です.

f:id:cpn:20110812185046j:image

思慕昔というデザート屋でマンゴーいちごかき氷も頂きました.

f:id:cpn:20110812211504j:image

f:id:cpn:20110812212237j:image


帰福

亜熱帯書店

f:id:cpn:20110813071837j:image

福岡

f:id:cpn:20110813100719j:image

トラックバック - http://d.hatena.ne.jp/cpn/20110816

2011-08-15 このエントリーを含むブックマーク このエントリーのブックマークコメント

トラックバック - http://d.hatena.ne.jp/cpn/20110815

2011-03-10

地球流体データ解析・数値計算ワークショップ 参加記録

01:18 | 地球流体データ解析・数値計算ワークショップ 参加記録を含むブックマーク 地球流体データ解析・数値計算ワークショップ 参加記録のブックマークコメント

2011年3月6日(日)〜8日(火)に,東京大学気象庁において開催された, 地球流体データ解析・数値計算実習 (dcmodel/davis チュートリアル) に参加した. 2日目には数値予報課の方々と交流ができて楽しかった. 今回感じたことは, 大きく以下の2点.

  • irb を使って足腰を鍛えておこう
  • gfdnavi を使ってみよう

以下は, 個人的メモです.


1 日目:午前

Live 設定
  • Crtl の入れ替え
    • $ xmodmap Desktop/misc/Xmodmap_SwapCapsLock-Ctrl
  • 有線ネットワークの設定
    • /etc/network/interfaces
      • iface eth1 inet dhcp # 追記
    • $ sudo ifup eth1

Ruby の初歩,数値・データ処理および可視化の基礎

午前中は主に, http://ruby.gfd-dennou.org/tutorial/gokuraku/ にしたがって ruby チュートリアルが行われました. 以下は自分的にためになった部分のメモです.

  • hoge.rb の先頭に #! /usr/bin/env ruby と書いておき、chmod +x で実行可能にしておけば, $ ./〜.rb ですむ.
  • 引用符 "" と '' の違い
    • "":制御文字を解釈する
    • '':制御文字を解釈しない
  • ary[-1]は配列 ary の 1 番最後の要素を示す(負の数はうしろから数える)
  • 配列の中に配列があっても大丈夫( ary2 = [a, ary1] など)
  • ary2[1][3] は ary2[1]の3番の要素を意味する
  • 曖昧でない場合は括弧を省略可能( print "Hello\n" )
  • printf: 決められたフォーマットで文字列を画面に出力するメソッド(たのしいRuby, p.218参照)

irb(main):089:0> ["dog", "cat", "bird"].each{|i|

irb(main):090:1* printf("a %s\n", i)

irb(main):091:1> }

a dog

a cat

a bird

=> ["dog", "cat", "bird"]

  • printf ではなく print で書くと以下のようになる(出力結果は上と同様.)

irb(main):095:0* ["dog", "cat", "bird"].each{|i|

irb(main):096:1* print("a ", i, "\n")

irb(main):097:1> }


  • 「do ... end」 と 「{}」 は同じ意味になる

irb(main):098:0> 10.times do

irb(main):099:1* print "hoge"

irb(main):100:1> end

hogehogehogehogehogehogehogehogehogehoge=> 10

irb(main):104:0> 10.times {

irb(main):105:1* print "hoge"

irb(main):106:1> }

hogehogehogehogehogehogehogehogehogehoge=> 10


def wa(a,b,c)

d = a+b+c

return d # 戻り値の指定。なければ最後の文の戻り値が返される。

end

e = wa(3,4,6) # 定義前に実行することはできない。


b.methods.sort

=> ["%", "*", "**", "+", "+@", "-", "-@", "/", "<", "<=", "<=>", "==", "===", "=~", ">", ">=", "__id__", "__send__", "abs", "between?", "ceil", "class", "clone", "coerce", "display", "div", "divmod", "dup", "enum_for", "eql?", "equal?", "extend", "fdiv", "finite?", "floor", "freeze", "frozen?", "hash", "id", "infinite?", "inspect", "instance_eval", "instance_exec", "instance_of?", "instance_variable_defined?", "instance_variable_get", "instance_variable_set", "instance_variables", "integer?", "is_a?", "kind_of?", "method", "methods", "modulo", "nan?", "nil?", "nonzero?", "object_id", "prec", "prec_f", "prec_i", "private_methods", "protected_methods", "public_methods", "quo", "remainder", "respond_to?", "round", "send", "singleton_method_added", "singleton_methods", "step", "taint", "tainted?", "tap", "to_a", "to_enum", "to_f", "to_i", "to_int", "to_s", "truncate", "type", "untaint", "wa", "zero?"]

これらの使い方を調べるには, http://www.ruby-lang.org/ja/documentation/

を見ればよい.

まず, hoge.classclass を調べる.

例えば, hoge が Float という class だった場合, http://doc.ruby-lang.org/ja/1.8.7/library/_builtin.htmlhttp://doc.ruby-lang.org/ja/1.8.7/class/Float.html の部分を見ればよい.


もしくは, Ruby インタラクティブリファレンス (ri)を用いる.

irb でなくデフォルトシェル

$ ri Float#to_s

などとすれば, 以下のような出力結果が得られる.

!------------------------------------------------------------- Float#to_s

flt.to_s => string

!------------------------------------------------------------------------

Returns a string containing a representation of self. As well as a

fixed or exponential form of the number, the call may return

``+NaN+'', ``+Infinity+'', and ``+-Infinity+''.


1 日目:午後

Ruby による地球流体データ解析: GPhysによる手軽で汎用なデータ解析
  • gphys ライブラリ本体を http://dennou-q.gfd-dennou.org/library/ruby/products/gphys/ の latest version から DL すれば, /gphys-1.1.0/lib/numru にテストプログラムが入ったルビープログラム(## test part ## の部分 )があるので, やりたいことをする方がみつかるかも.
  • (例1) ~/gphys-1.1.0/lib/ggraph.rb
    • $ ruby ggraph.rb でいろいろと絵を描いてみる.
  • (例2) ~/gphys-1.1.0/lib/numru/ganalysis/met.rb には, 温度から温位への変換や, 等温位面渦位を描く方法が書いてある(以下の部分).

theta_rg = theta.regrid(u)

u_th = GAnalysis::Met.interpolate_onto_theta(u, theta_rg, theta_levs)


Gfdnaviによるデータサーバの構築と利用
その他

2 日目:午前

オブジェクト指向によるデータ解析可視化の思想と実践:電脳Ruby
  • 地球流体科学におけるrubyの利用, プラズマ核融合学会誌 で検索すると pdf がある
  • オブジェクト指向(プログラムの再利用性を高める技術)の3大特徴
    • カプセル化:余計な内部構造は隠して, 不用意な依存性で再利用性が壊れることを防ぐ
    • 多様性:同じような操作は同じ名前でできるようにする(呼び出し側で統一可)
    • 継承:不要の再定義しないですむようにする
  • タイリング:タイル状に分割されたデータを, 一つの GPhys として扱える
    • 例えば, 期間ごとに分かれた時系列のファイルをそのまま一体として扱える
    • ファイルの自動処理は現在 NetCDF のみ. ?
Ruby 活用に関するディスカッション

数値予報ルーチン業務における ruby の活用
  • ルーチン管理システム, job管理で ruby を利用している(ジョブスケジューラ)
世界の数値予報センターのモデル開発環境とデータハンドリング
  • UK, MetOffice では サイエンスレビューとコードレビューを分けている(クロスチェック大切)
  • チケットやブランチを見ることで、他の人の進捗状況を見ることができる

2 日目:午後

実況監視業務における可視化
  • rapid スキャン:衛星データ, 5~10min 間隔で取得, 試験的に
  • RISS: 気象レーダーデータ共有装置
  • 3D表示ツールの窓で関数計算ができるのは便利
    • GFDnavi でも同様の昨日があれば便利かも
気象情報の提供に資する可視化
  • Webアプリ:統合ビューア, 共通画像

3 日目:午前

ISPACK の GPU 利用の話
  • 2D turb, f=0, 球面だと最終的には 4 重極構造になるらしい
  • GPUのメリット
    • ピーク演算性能が高い
    • メモリバンド幅が広い
    • 価格が比較的安い
    • 電力消費が比較的少ない
  • GPUのデメリット
    • GPUとメインメモリとの通信が多いとそこが律速になる
額田彰氏(東工大)を交じえて 今後の数値計算環境の展望についての議論
スーパーコンピューターの過去, 現在, 未来 (仮題)

3日目:午後 developers 会議

  • おじさん以外は gpview 禁止 → irb を使おう
    • ruby に慣れて足腰を鍛えておかないと, やりたいことができない
  • LTS: Long Time Saport
  • Debian 本家にパッケージを入れることができれば大分楽
  • ifort 関係のパッケージ
    • パッケージごとに置き場所が変わるので注意
    • netcdf がめんどくさいらしい
    • netcdf-g95 を参考につくってみると良い
    • まずは lenny 版から
トラックバック - http://d.hatena.ne.jp/cpn/20110310

2011-03-03

Debian lenny から squeeze へのアップグレード

19:00 | Debian lenny から squeeze へのアップグレードを含むブックマーク Debian lenny から squeeze へのアップグレードのブックマークコメント

Desktop で Debian lenny から squeeze へのアップグレードを行った.

大きな問題もなく, アップグレード完了. 以下作業メモ.

一応, 追加した HDD はアンマウントしておく

# df -h

Filesystem サイズ 使用 残り 使用% マウント位置

/dev/sda1 46G 6.3G 38G 15% /

tmpfs 1.7G 0 1.7G 0% /lib/init/rw

udev 10M 836K 9.2M 9% /dev

tmpfs 1.7G 0 1.7G 0% /dev/shm

/dev/sda3 1.3T 558G 703G 45% /home

/dev/sdb1 1.4T 1.3T 6.5G 100% /home/katon/jupiter/work2

/dev/sdc1 1.4T 198M 1.3T 1% /home/katon/jupiter/work3

/dev/sdd1 1.4T 1.2T 148G 89% /home/katon/jupiter/work4

# umount /home/katon/jupiter/work2 /home/katon/jupiter/work3 /home/katon/jupiter/work4

バックアップ

以下のディレクトリの中身をバックアップすることが推奨されている.

  • /etc
  • /var/lib/dpkg
  • /var/lib/apt/extended_states の中身、
  • dpkg --get-selections "*" (引用符を忘れてはいけません) の出力
  • /var/lib/aptitude/pkgstates

しかし, 簡単のため /etc の中身と /home の設定ファイルのみをバックアップした.

  • /etc

# cp -r /etc /home/katon/etc_redspot_110303

# scp -r etc_redspot_110303 katon@gfdport:

~$ cp -r .bashrc .xemacs .synergy.conf dot_files_redspot/

~$ scp -r dot_files_redspot gfdport:

アップグレードの過程自体は、/home ディレクトリ以下は一切変更しません。とはいえ、(Mozilla スイートの一部や、GNOMEKDE といったデスクトップ環境のように) ユーザが初めて新しいバージョンのアプリケーションを起動するときに、既存のユーザ設定を新たなデフォルト値で上書きしてしまうものがあるのも事実です。万一に備えて、ユーザのホームディレクトリにある隠しファイルと隠しディレクトリ (いわゆる 「ドットファイル」) をバックアップしておくのがよいでしょう。古い状態に戻したり、再度設定する場合に役立つはずです。ユーザにもこのことについて知らせておいてください。

splashy パッケージを削除

  • bug #512951 のため、アップグレードの前に splashy パッケージを完全削除 (purge) しておく必要があります。

# apt-get purge splashy

パッケージ splashy はインストールされていなかったようだ.


パッケージリストを更新

# apt-get update


古いロケールから UTF-8アップグレードする

# dpkg-reconfigure locales

ロケールが既に ja_JP.UTF-8 UTF-8 になっていることを確認した.


パッケージの状態をチェック

インストールが未完了のパッケージ (Half-Installed) や設定に失敗したパッケージ (Failed-Config)、何らかのエラー状態にあるパッケージを表示

# dpkg --audit

パッケージが hold 状態になっていないか確認

# aptitude search "~ahold" | grep "^.h"

# dpkg --get-selections | grep hold

これらのコマンド後, 何も出力されないことを確認.

APT の取得先 (ソース) の準備

アップグレードを始める前に, apt の設定ファイル /etc/apt/sources.list の "lenny" の部分を "squeeze" に書き換えた.

  • /etc/apt/sources.list

deb http://dennou-q.gfd-dennou.org/debian/ squeeze main

deb-src http://dennou-q.gfd-dennou.org/debian/ squeeze main

deb http://security.debian.org/ squeeze/updates main

deb-src http://security.debian.org/ squeeze/updates main

deb ftp://www.gfd-dennou.org/library/cc-env/Linux/debian-dennou squeeze/

deb-src ftp://www.gfd-dennou.org/library/cc-env/Linux/debian-dennou squeeze/

セッションの記録

# script -t 2>~/upgrade-squeeze.time -a ~/upgrade-squeeze.script

Script started, file is /home/katon/upgrade-squeeze.script

パッケージリストの更新

# apt-get update

システムの最小アップグレード

# apt-get upgrade

カーネルアップグレード

# dpkg -l "linux-image*" | grep ^ii

ii linux-image-2.6-686 2.6.26+17+lenny1 Linux 2.6 image on PPro/Celeron/PII/PIII/P4

ii linux-image-2.6.26-1-686 2.6.26-13lenny2 Linux 2.6.26 image on PPro/Celeron/PII/PIII/

ii linux-image-2.6.26-2-686 2.6.26-26lenny1 Linux 2.6.26 image on PPro/Celeron/PII/PIII/

現在は 2.6.26 であることを確認.

# apt-cache search linux-image-2.6- | grep -v transition

uname -r

# uname -r

2.6.26-2-686

で調べたパッケージと似た名前のものをインストール.

# apt-get install linux-image-2.6-686

update-grub が走るかを確認

grub ブートローダのユーザは、カーネルアップグレードの一部分としてして update-grub が走るのを確認するか、手動で実行する必要があります。

# update-grub

Searching for GRUB installation directory ... found: /boot/grub

Searching for default file ... found: /boot/grub/default

Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst

Searching for splash image ... none found, skipping ...

Found kernel: /boot/vmlinuz-2.6.32-5-686

Found kernel: /boot/vmlinuz-2.6.26-2-686

Found kernel: /boot/vmlinuz-2.6.26-1-686

Updating /boot/grub/menu.lst ... done

新しい udev をインストール

カーネルアップグレード直後に, 古い udev と新しいカーネルを使うことによる非互換性のリスクを最小限にするため, 新しい udev もインストールする必要があります. 以下のように実行します.

# apt-get install udev

システムを再起動

# reboot

セッションの記録を再開

# script -t 2>~/upgrade-squeeze2.time -a ~/upgrade-squeeze2.script

システムのアップグレード

# apt-get dist-upgrade

  • いろいろと聞かれるが, 基本デフォルトで.
  • キーボードは使っている Dell を選択.
  • 以下のパッケージでエラーが発生
    • /var/cache/apt/archives/libnumru-misc-ruby1.8_0.1.0-1_all.deb
    • /var/cache/apt/archives/libnumru-units-ruby1.8_1.5-1_all.deb
    • /var/cache/apt/archives/libnumru-met-ruby1.8_0.0.2-5_all.deb
    • openmpi-bin
    • openmpi-g95
    • openmpi-checkpoint

エラーへの対処

以下のパッケージの処理中にエラーが発生しました:

/var/cache/apt/archives/libnumru-misc-ruby1.8_0.1.0-1_all.deb

/var/cache/apt/archives/libnumru-units-ruby1.8_1.5-1_all.deb

/var/cache/apt/archives/libnumru-met-ruby1.8_0.0.2-5_all.deb

E: Sub-process /usr/bin/dpkg returned an error code (1)

# less -R upgrade-squeeze2.script

で関連するエラーを探す. 以下のエラーの記述があった.

未選択パッケージ libnumru-misc-ruby1.8 を選択しています。

(.../libnumru-misc-ruby1.8_0.1.0-1_all.deb から) libnumru-misc-ruby1.8 を展開しています...

dpkg: /var/cache/apt/archives/libnumru-misc-ruby1.8_0.1.0-1_all.deb の処理中にエラーが発生しました (--unpack):

'/usr/lib/ruby/1.8/numru/misc/emath.rb' を上書きしようとしています。これはパッケージ numru-misc 0.0.6-3 にも存在します

未選択パッケージ libnumru-units-ruby1.8 を選択しています。

(.../libnumru-units-ruby1.8_1.5-1_all.deb から) libnumru-units-ruby1.8 を展開しています...

dpkg: /var/cache/apt/archives/libnumru-units-ruby1.8_1.5-1_all.deb の処理中にエラーが発生しました (--unpack):

'/usr/lib/ruby/1.8/numru/units.rb' を上書きしようとしています。これはパッケージ numru-units 1.5-1 にも存在します

未選択パッケージ libnumru-met-ruby1.8 を選択しています。

(.../libnumru-met-ruby1.8_0.0.2-5_all.deb から) libnumru-met-ruby1.8 を展開しています...

dpkg: /var/cache/apt/archives/libnumru-met-ruby1.8_0.0.2-5_all.deb の処理中にエラーが発生しました (--unpack):

'/usr/lib/ruby/1.8/numru/met.rb' を上書きしようとしています。これはパッケージ numru-met 0.0.2-4 にも存在します

# apt-get -f install

以下のパッケージの処理中にエラーが発生しました:

openmpi-bin

openmpi-g95

openmpi-checkpoint

E: Sub-process /usr/bin/dpkg returned an error code (1)

# apt-get -f install

openmpi-bin (1.4.2-4) を設定しています ...

update-alternatives: エラー: alternative mpiexec は mpirun のスレーブにはできません: これはマスター alternative です。

dpkg: openmpi-bin の処理中にエラーが発生しました (--configure):

サブプロセス インストール済みの post-installation スクリプト はエラー終了ステータス 2 を返しました

dpkg: 依存関係の問題により openmpi-g95 の設定ができません:

openmpi-g95 は以下に依存 (depends) します: openmpi-bin ...しかし:

パッケージ openmpi-bin はまだ設定されていません。

dpkg: openmpi-g95 の処理中にエラーが発生しました (--configure):

依存関係の問題 - 設定を見送ります

dpkg: 依存関係の問題により openmpi-checkpoint の設定ができません:

openmpi-checkpoint は以下に依存 (depends) します: openmpi-bin (= 1.4.2-4) ...しかし:

パッケージ openmpi-bin はまだ設定されていません。

dpkg: openmpi-checkpoint の処理中にエラーが発生しました (--configure):

依存関係の問題 - 設定を見送ります

# dpkg --remove openmpi-bin openmpi-g95 openmpi-checkpoint

(データベースを読み込んでいます ... 現在 202241 個のファイルとディレクトリインストールされています。)

openmpi-bin を削除しています ...

dpkg: 依存関係の問題により、openmpi-g95 の削除ができません:

gtool5-g95 は以下に依存 (depends) します: openmpi-g95.

dpkg: openmpi-g95 の処理中にエラーが発生しました (--remove):

依存関係の問題 - 削除しません

openmpi-checkpoint を削除しています ...

man-db のトリガを処理しています ...

以下のパッケージの処理中にエラーが発生しました:

openmpi-g95

# dpkg -P openmpi-g95

dpkg: 依存関係の問題により、openmpi-g95 の削除ができません:

gtool5-g95 は以下に依存 (depends) します: openmpi-g95.

dpkg: openmpi-g95 の処理中にエラーが発生しました (--purge):

依存関係の問題 - 削除しません

以下のパッケージの処理中にエラーが発生しました:

openmpi-g95

# dpkg -P gtool5-g95

(データベースを読み込んでいます ... 現在 202191 個のファイルとディレクトリインストールされています。)

gtool5-g95 を削除しています ...

dpkg: 警告: gtool5-g95 の削除中、ディレクトリ '/usr/lib/gtool5-g95/bin' が空でないため削除できませんでした。

dpkg: 警告: gtool5-g95 の削除中、ディレクトリ '/usr/lib/gtool5-g95' が空でないため削除できませんでした。

# dpkg -P gtool5-g95

dpkg: 警告: インストールされていない gtool5-g95 を削除する要求を無視します。

# dpkg -P openmpi-g95

(データベースを読み込んでいます ... 現在 202064 個のファイルとディレクトリインストールされています。)

openmpi-g95 を削除しています ...

openmpi-g95 の設定ファイルを削除しています ...

man-db のトリガを処理しています ...

# apt-get -f install

GRUB 2 へアップグレードする

GRUB 2 が動くことを確認し, GRUB 2 へアップグレードする.

# upgrade-from-grub-legacy

GRUB 2 をインストールするデバイスを尋ねられたので, ターミナルを新たに立ち上げ df で調べると,


katon@redspot:~$ df -h

Filesystem Size Used Avail Use% マウント位置

/dev/sda1 46G 8.8G 35G 21% /

/dev/sda3 1.3T 558G 703G 45% /home

のように, / は sda1 であることがわかったので,

GRUBインストールするデバイス:/dev/sda

とした.

rebootして, 最初にGRUB 2になっていることを確認.

これで無事にアップグレード作業は終了!

$ uname -a

Linux redspot 2.6.32-5-686 #1 SMP Wed Jan 12 04:01:41 UTC 2011 i686 GNU/Linux


カーネル、旧パッケージの削除

# apt-get purge linux-image-2.6.26-1-686

  • # 必要とされていないパッケージを削除する。

# apt-get autoremove

2011-03-02

usb に live イメージを焼く

05:49 | usb に live イメージを焼くを含むブックマーク usb に live イメージを焼くのブックマークコメント

DVD の差分を USB メモリに保存する方法で, usb に live イメージを焼いたときの作業メモです.

1. usb を接続し, アンマウントする

# umount /dev/sde1 /dev/sde2

2. dd でイメージを書き込む

"dennou_live_current.img"というイメージを, /dev/sde に書き込む.

# dd if=dennou_live_current.img of=/dev/sde

これで起動フラグのたった /dev/sde1 と残りの空領域ができる.

3. この空き領域にパーティションを作成

# fdisk /dev/sde

  1. p: パーティション情報を表示
  2. n: 新しい領域を作成する
    • Command action: "p primary partition (1-4)" を選択
    • Partition number (1-4): 2 を選択
    • First cylinder (18385-61151, default 18385): # default のまま(Enter)
    • Last cylinder, +cylinders or +size{K,M,G} (18385-61151, default 61151): # default のまま(Enter)
  3. l: 設定可能なパーティション・タイプを表示する
  4. t: パーティションのコードを変更する
    • Partition number (1-4): 2 を選択
    • Hex code (type L to list codes): 83 ← Linux領域に指定
  5. p: パーティション情報を表示(設定が反映されたか確認)
  6. w: 情報を書き込んで終了する

4. ファイルシステムを構築する(ext4

# mkfs.ext4 /dev/sde2

5. ラベルをつける

# e2label /dev/sde2 live-rw

6. ラベルを確認

# e2label /dev/sde2

live-rw

以上で終了.

トラックバック - http://d.hatena.ne.jp/cpn/20110302

2011-03-01

Linux で usb が sd* であるかを調べる方法

05:46 | Linux で usb が sd* であるかを調べる方法を含むブックマーク Linux で usb が sd* であるかを調べる方法のブックマークコメント

1. usb を接続すると, 勝手にマウントされた場合

$ df


2. usb を接続しても勝手にマウントされない場合

$ dmesg | grep scsi

[5592256.194755] scsi3 : SCSI emulation for USB Mass Storage devices

[5592261.380888] scsi 3:0:0:0: Direct-Access Kingston DataTraveler G2 1.00 PQ: 0 ANSI: 2

3:0:0:0: が Kingston DataTraveler G2 という USB であることがわかる.


次に,

# dmesg | grep sd

[5592261.387735] sdg: sdg1

[5592261.387735] sd 3:0:0:0: [sdg] Attached SCSI removable disk

から, 3:0:0:0: は [sdg] であることがわかる.

トラックバック - http://d.hatena.ne.jp/cpn/20110301

2011-02-27

vmware で Debian lenny から squeeze へアップグレード

01:04 | vmware で Debian lenny から squeeze へアップグレードを含むブックマーク vmware で Debian lenny から squeeze へアップグレードのブックマークコメント

デスクトップDebian lenny を squeeze へアップグレードする前に, 実験的にノートPCの普段使っていない vmware 上でアップグレードを試してみた.

アップグレードリリースノートを読みながら行った.


システムの最小アップグレード後にネットワークが繋がらなったり, dist-upgrade 後に再起動するとマウスのカーソルが動かなくなったりしてハマったがなんとか解決できた.


ということで, 以下に作業ログを記しておく.

バックアップ

以下のディレクトリの中身をバックアップすることが推奨されている.

  • /etc
  • /var/lib/dpkg
  • /var/lib/apt/extended_states の中身、
  • dpkg --get-selections "*" (引用符を忘れてはいけません) の出力
  • /var/lib/aptitude/pkgstates

splashy パッケージを削除

  • bug #512951 のため、アップグレードの前に splashy パッケージを完全削除 (purge) しておく必要があります。

# apt-get purge splashy

パッケージ splashy はインストールされていなかったようだ.

パッケージリストを更新

# apt-get update


古いロケールから UTF-8アップグレードする

# dpkg-reconfigure locales

ロケールが既に ja_JP.UTF-8 UTF-8 になっていることを確認した.

パッケージの状態をチェック

インストールが未完了のパッケージ (Half-Installed) や設定に失敗したパッケージ (Failed-Config)、何らかのエラー状態にあるパッケージを表示

# dpkg --audit

パッケージが hold 状態になっていないか確認

# aptitude search "~ahold" | grep "^.h"

# dpkg --get-selections | grep hold

これらのコマンド後, 何も出力されないことを確認.

APT の取得先 (ソース) の準備

アップグレードを始める前に, apt の設定ファイル /etc/apt/sources.list の "lenny" の部分を "squeeze" に書き換えた.

セッションの記録

# script -t 2>~/upgrade-squeeze.time -a ~/upgrade-squeeze.script

Script started, file is /home/katon/upgrade-squeeze.script

パッケージリストの更新

# apt-get update

システムの最小アップグレード

# apt-get upgrade


今回は, アップグレード方法は aptitude ではなく, apt-get が推奨されているらしい.


Debian GNU/Linux の前回のリリースからのお勧めのアップグレード方法は、パッケージ管理ツール apt-get を用いる方法です。前回のリリースでは、この作業には aptitude が推奨されていましたが、apt-get の最近のバージョンでは同等の機能が提供されており、さらにより高い整合性により望ましいアップグレード結果をもたらします。

カーネルと udev のアップグレード

lenny から squeeze への dist-upgrade を実行する際には、新しい linux-image-2.6-* メタパッケージをインストールすることが推奨されていた.

しかし, このパッケージは dist-upgrade の過程で自動的にインストールされていた. 以下のコマンドで確認.

# dpkg -l "linux-image*" | grep ^ii

ii linux-image-2.6-686 2.6.26+17+lenny1 Linux 2.6 image on PPro/Celeron/PII/PIII/P4

ii linux-image-2.6.26-1-686 2.6.26-13lenny2 Linux 2.6.26 image on PPro/Celeron/PII/PIII/

ii linux-image-2.6.26-2-686 2.6.26-21lenny4 Linux 2.6.26 image on PPro/Celeron/PII/PIII/


# apt-get install udev

システムを再起動

# reboot


再起動ネットワークがつながらない問題への対処

再起動ネットワークがつながらなくなった. ジタバタした結果,

/etc/network/interfaces の中の dhcp 設定の記述

iface eth0 inet dhcp

がない(なくなった?)ことが問題だったようだ.

そこで, 以下のように /etc/network/interfaces を書き換えた.

# The loopback network interface

auto lo

iface lo inet loopback

# The primary network interface

allow-hotplug eth0

iface eth0 inet dhcp # この1行を追記


ちなみに, eth* が eth0 であることは dmeseg で以下のように確認した.

# dmeseg | grep eth0
[ 4.252125] eth0: registered as PCnet/PCI II 79C970A


システムのアップグレード

# apt-get dist-upgrade

  • 以下のパッケージの処理中にエラーが発生しました:

/var/cache/apt/archives/libnumru-misc-ruby1.8_0.1.0-1_all.deb

/var/cache/apt/archives/libnumru-units-ruby1.8_1.5-1_all.deb

/var/cache/apt/archives/libnumru-met-ruby1.8_0.0.2-5_all.deb

W: Duplicate sources.list entry http://security.debian.org squeeze/updates/main Packages (/var/lib/apt/lists/security.debian.org_dists_squeeze_updates_main_binary-i386_Packages)



root@modon:~# apt-get upgrade

root@modon:~# apt-get -f install


マウスのカーソルが動かない問題

インストールは無事終了したので再起動してみると, 起動してログインはできるが, マウスのカーソルが動かなくなっていた. ここによると

以下の3点に気をつければマウスが使えるようになる.

  1. VMware Toolsのマウスを使用するには、X11の vmmouse というドライバ( xserver-xorg-input-vmmouse )が必要である。
  2. vmmouseを認識するには、vmmouse_detectから呼ばれるmdetectというコマンドが必要である。
  3. /etc/X11/xorg.confのvmmouseの設定のところに、optionで、「CorePointer」の指定が必要である。

まず, safe モードで起動して,

# apt-get install xserver-xorg-input-vmmouse


# apt-get install mdetect

/etc/X11/xorg.conf を編集し Option "CorePointer" の 1行を追記.


Section "InputDevice"

Identifier "VMware Mouse"

Driver "vmmouse"

Option "CorePointer" # この1行を追記

Option "Device" "/dev/input/mice"

Option "Emulate3Buttons" "true"

Option "ZAxisMapping" "4 5"

EndSection

その後, 再起動するとマウスが動くようになる.

GRUB 2 へアップグレードする

GRUB 2 が動くことを確認し, GRUB 2 へアップグレードする.

# upgrade-from-grub-legacy

GRUB 2 をインストールするデバイスを尋ねられたので, ターミナルを新たに立ち上げ df で調べると,


$ df

Filesystem 1K-ブロック 使用 使用可 使用% マウント位置

/dev/sda1 7850996 6930240 521944 93% /


のように, / は sda1 であることがわかったのでそれを選択.

rebootして, 最初にGRUB 2になっていることを確認.


これで無事にアップグレード作業は終了!

カーネル、旧パッケージの削除

# apt-get purge linux-image-2.6.26-1-686

  • # 必要とされていないパッケージを削除する。

# apt-get autoremove

sasakyhsasakyh 2011/03/03 00:28 numru 関連、どんなエラーだったか詳細ありません?

cpncpn 2011/03/03 00:43 すいません、詳細はメモしていませんでした。
今、研究室の後輩が dist-upgrade 中なので、エラーがあったら報告してもらうようにいってます。自分も、今から Desktopの方でアップグレード予定なので、エラーが出たらご報告します。

トラックバック - http://d.hatena.ne.jp/cpn/20110227

2011-02-22

gpcut の使い方

| 17:20 |  gpcut の使い方を含むブックマーク  gpcut の使い方のブックマークコメント

gpcut is command line tools for extract, slicing and thinning a GPhys variables.

使い方

% gpcut [options] path@varname[,dimname=pos1[:pos2[:thinning_intv[,dimname=...


(例)y, z, t の次元を持つ U.nc@U の t=0 のデータを切りだして新たに U0.nc として出力


$ gpcut -o U0.nc U.nc@U,t=0

OPTIONS

  • -m dim, --mean dim :平均
  • -o file :output fileの指定

Dropbox を使った Linux と Windows のファイル共有

13:53 | Dropbox を使った Linux と Windows のファイル共有を含むブックマーク Dropbox を使った Linux と Windows のファイル共有のブックマークコメント

Linux(Debian) から Windows へファイルのやりとりは, オンラインストレージDropbox を使っています.

例えば, Linux で描いた図を Windows 側に持ってきて, パワーポイントに張り付けたい時に使っています. 以前は Winscp を使っていましたが, dropbox を使ったほうが楽だと思います.


WindowsLinux の両方に dropboxインストールしておけば, Linux 側で hoge.png という図を描いて, Windows に送りたいときは

$ cp hoge.png ~/Dropbox/

としてしばらくすると, Windows 側の "My Dropbox" というフォルダの中に hoge.png が同期されます.


Windows

Windows 側のインストールインストーラーに任せれば簡単だと思います.


Linux

Linux 側は、debian lenny では ubuntu 用のパッケージでインストールできました.

# dpkg -i nautilus-dropbox_0.6.7_i386.deb

同期の開始を忘れずに.

$ dropbox start


登録はこちら

ここから 登録すれば 2GB もらえます.

自分も 250MB もらえるので是非登録してみてください.

伊藤耕介伊藤耕介 2011/02/22 16:11 登録したけど、すんたげ(秋田弁で非常に)便利ですね。
こういうのが欲しかった。
あと、D論終わったのに全然暇になる気配が無いorz
精神的に余裕があるだけましかもしれませんが。

伊藤耕介伊藤耕介 2011/02/22 16:13 登録したけど、しんたげ(秋田弁でとても)便利です。
教えてくれてありがとう。

cpncpn 2011/02/22 16:38 >伊藤君
どういたしましてです。
そして、秋田弁講座ありがとう(笑)
D論後はなかなか休めないものなのだね。
がんばっていきましょう!

伊藤伊藤 2011/02/23 10:25 二重投稿になってしまいました。すぐに反映されてなかったもので。ちなみに、秋田弁には「し」と「す」の区別がないので、「しんたげ」と「すんたげ」は同義です。

トラックバック - http://d.hatena.ne.jp/cpn/20110222

2011-02-05

Asay-Davis et al., ICARUS (2011) / Changes in Jupiter’s zonal velocity between 1979 and 2008

| 06:49 |  Asay-Davis et al., ICARUS (2011) / Changes in Jupiter’s zonal velocity between 1979 and 2008を含むブックマーク  Asay-Davis et al., ICARUS (2011) / Changes in Jupiter’s zonal velocity between 1979 and 2008のブックマークコメント

Changes in Jupiter’s zonal velocity between 1979 and 2008

Research highlights

  • 木星の24°N付近のピークの東西風速は2000年から2008年の間に増加した.
  • この期間の緯度 ±70° の間で他の有意な変化は見られない.
  • 西風速は経度方向に変動し, 数時間から数年に渡って~10m/s 変動する.
  • 5-micron hot spots ( 8°N ) 付近の過去の東西風速の観測は 20~30 m/s も小さく見積もられていた.

García-Melendo et al., ICARUS (2011) / Dynamics of Jupiter’s equatorial region at cloud top level from Cassini and HST images

| 07:07 |  García-Melendo et al., ICARUS (2011) / Dynamics of Jupiter’s equatorial region at cloud top level from Cassini and HST imagesを含むブックマーク  García-Melendo et al., ICARUS (2011) / Dynamics of Jupiter’s equatorial region at cloud top level from Cassini and HST imagesのブックマークコメント

Dynamics of Jupiter’s equatorial region at cloud top level from Cassini and HST images

Research highlights

  • 木星の6°Nの西風ジェットの風速は経度方向に60m/sも変動する.
  • 木星の赤道(6N)の東西流ではロスビー波の活動が支配的.
  • 木星の赤道ジェットは対称的で6Nと6Sに 140–150 m/s のピークがある.
  • NEBs dark spots にある収束的な流れは特徴的な雲の模様に依存している.
  • SEBn にある白斑は弱く回転している準赤道的な高気圧である.

Showman et al., ICARUS (2011) / Scaling laws for convection and jet speeds in the giant planets

| 07:18 | Showman et al., ICARUS (2011) / Scaling laws for convection and jet speeds in the giant planetsを含むブックマーク Showman et al., ICARUS (2011) / Scaling laws for convection and jet speeds in the giant planetsのブックマークコメント

Scaling laws for convection and jet speeds in the giant planets

Research highlights

  • 回転球殻対流におけるジェットの風速は粘性と熱フラックスに依存している.
  • スケーリングの議論により, 幅広いパラメータ領域に対してジェットの風速を説明可能.
  • このスケーリングの議論から巨大惑星の内部の風速は弱いことが示唆される.

Morales-Juberías et al., ICARUS (2011) / Emergence of polar-jet polygons from jet instabilities in a Saturn model

| 07:35 | Morales-Juberías et al., ICARUS (2011)  /  Emergence of polar-jet polygons from jet instabilities in a Saturn modelを含むブックマーク Morales-Juberías et al., ICARUS (2011)  /  Emergence of polar-jet polygons from jet instabilities in a Saturn modelのブックマークコメント

Emergence of polar-jet polygons from jet instabilities in a Saturn model

Research highlights

  • 西風のジェットの力学的な不安定が非線形的に平衡に達したとき, 安定な六角形の構造が強制なしに出現しうる.
  • ある与えられたジェットの振幅に対して, 支配的な東西波数はジェットのピークの曲率に最も依存する.
  • 我々のシミュレーションにおいてジェットの安定な多角形の形は, 低気圧性渦と高気圧性渦がジェットの極側と赤道側にずれて並ぶことで形成される.

アブストより

  • このシミュレーションでは風速を観測からはずれた値にしないとヘキサゴンの伝播速度を再現できていないので, この vortex street model は観測と整合的ではないかもしれない.

読む前の疑問(今後の課題)

  • 強制なしにジェットが平衡に達するということは、粘性はほどんど効かないのか?
  • 多角形の東西波数はジェットの曲率に依存とあるが、ジェットの南北構造はどう与えているか?
トラックバック - http://d.hatena.ne.jp/cpn/20110205

2011-01-10

gpvect コマンドの使用例(ベクトルをコンター, カラーに重ね描きする)

00:55 | gpvect コマンドの使用例(ベクトルをコンター, カラーに重ね描きする)を含むブックマーク gpvect コマンドの使用例(ベクトルをコンター, カラーに重ね描きする)のブックマークコメント

自分の gpvect コマンドの使用例を載せておきます(半分メモ代わりです)。

gpvect ってなに?って人はこちら


実は自分も gpvect を知ったのはつい最近で、今まではずっと ggraph で書いてました(笑)

でも、クイックビューには gpコマンド が便利ですね。

例えば、

など。時間変化をちょっと見たいときとか便利です。


使用例

早速ですが、使用例はこちら。

gpvect --slice z=-100e3,t=0:100:5 --scalar EPV.nc@EPV VelX.nc@VelX VelY.nc@VelY --xintv 3 --yintv 3 --factor 3 --unit_vect --anim t --wsn 4

  • --slice で切り出しの範囲を指定することができる. 全ての変数で xx@xx,z=-100e3,t=0:100:5 と指定せずに済むことになり楽
  • --scalar オプションを付けることで1番目に指定した EPV のコンターとトーンを描く
  • 2番目と3番目の変数(VelX, VelY)がベクトルとして描かれる
  • --xintv 3 , --yintv 3 :間引き間隔の指定
  • --factor 3 :ベクトルの長さを3倍する
  • --unit_vect :単位ベクトルを描く

詳しい使い方は、

$ gpvect --help

を参照してください。