2017/09/10

Mavericks (10.9) から一気に Sierra (10.12) へ更新したった

VMWare Fusionを新しいMacOSに対応させるには,アップグレードパッケージを買わなければいけないのと,とあるVPNソフトが動かなくなるのでMavericks (10.9)のまま維持してきた MacPro と MacBook Air を一気に Sierra (10.12) へ更新したのでメモ.

ダウンロード

何故か,App Store で Sierra で検索してもヒット0なのでどうしたものかと思っていたけど,普通に Google 検索したらここにたどり着いて,App Store 経由でダウンロード&インストール開始.

日本語入力

Google日本語入力を使っているのですが,どうも動きが怪しいので再インストールで解決.保存しておいた辞書も維持されているので,動作が怪しかったら再インストールで良いと思う.ちなみに,MacPro では必要だったけど,MacBook Air では不要だった.

emacs-w3m

mewでHTMLメールが読めなくなっちゃうので,再コンパイル&インストール.

ssh関連

sshサーバ

sshサーバにしていて,公開鍵暗号方式を使っていた場合,
I could not login ssh server with my old DSA key.
と言われて,ログインできなくなります.これはかなり重大事件なわけですが,なんのことはない,OpenSSH 7.4 になって,文字通り old DSA key が受け付けられなくなっただけのことなので,クライアントで ecdsa 等( ssh-keygen -t ecdsa )で作成しなおせば良い.ただし,Mavericks のOpenSSH では ecdsa はサポートしていないので何か対処は考える必要がある.

sshクライアント

sshサーバが ecdsa をサポートしていない場合,引き続き dsa を使えば良いだけのはずですが,OpenSSH 7.4 は,クライアントでも dsa の使用は認めてくれないので, ~/.ssh/config に
  PubkeyAcceptedKeyTypes=+ssh-dss
などとする必要があります.

ssh-agent

Mavericks では,ssh-agent が必要に応じて勝手に起動してくれていたが,Sierra ではその機能がなくなっている.なので,ssh-agent を明示的に起動して上げる必要がありそう(もっとうまい方法があれば良いのですが...).

ssh-agent > ~/.ssh/.auth
(.authの最終行をコメントアウトもしくは削除)
source ~/.ssh/auth を ~/.zshenv などに追記

MacPorts

公式の Migration 手順に従うのが良いかと思います.
一方で,ざっくりと
sudo port -v selfupdate
だけで凌ぐことが出来るのか,出来ないのか不明です(MacBook Airはこちらの手順).

emacs-w3m

mew で HTML メールが見られなくなっているので,再インストールすればいいやと思ったのですが, /usr に書き込めなくなったため, sudo make install しても配備出来ません.

基本ディレクトリ関連

/usr に書き込めなくなったのは,前述の通り.これは root 権限でも書き込めないという状態なので,インストール先を別にする必要があります.

標準アプリ

拡張子で判断されるアプリケーションの設定がクリアされてしまいます.面倒ですが,再設定しています.何か方法があるのかもしれませんが...加えて,Finder のサイドバーもクリアされてしまうので,再設定してます.



2017/09/09

GMT on Mac

JAGURS のファイルが GMT グリッドファイルということなので,いよいよちゃんと GMT を使うべく手元にインストール.MacPorts にあるようなのでそのまま使います.新しいの入れておけば良いだろうと思って, gmt5 をインストールしたけど, grdinfo コマンドが無い...

        % port contents gmt5 | grep grdinfo
          /opt/local/share/doc/gmt/html/_sources/grdinfo.rst.txt
          /opt/local/share/doc/gmt/html/grdinfo.html
          /opt/local/share/doc/gmt/man/man1/grdinfo.1.gz

じゃぁ,と思って gmt4 をインストールしたら,変わったディレクトリにコマンドが入ってました.

        % port contents gmt4 | grep grdinfo
          /opt/local/lib/gmt4/bin/grdinfo
          /opt/local/share/doc/gmt4/html/man/grdinfo.html
          /opt/local/share/doc/gmt4/man/man1/grdinfo.1

なので,最後の仕上げに
        export PATH=$PATH:/opt/local/lib/gmt4/bin
を追加して完成.

第一歩として試したかった,JAGURS 付属の海底地形データの情報を取得.zmax を使って,計算ステップ間隔を決定します.
% grdinfo bathy.SD01.grd
bathy.SD01.grd: Title:
bathy.SD01.grd: Command: grdsample -V -R140/147:30/34/43 -I18c /home/babat/data/bathymetry_thk/bathy.thk.27s.grd -Gbathy.whole.grd=cf
bathy.SD01.grd: Remark:
bathy.SD01.grd: Gridline node registration used
bathy.SD01.grd: Grid file format: cf (# 10) GMT netCDF format (float) (deprecated)
bathy.SD01.grd: x_min: 140 x_max: 147.5 x_inc: 0.005 name: x nx: 1501
bathy.SD01.grd: y_min: 34 y_max: 43 y_inc: 0.005 name: latitude [degrees_north] ny: 1801
bathy.SD01.grd: z_min: -2096.24316406 z_max: 9788.53125 name: z
bathy.SD01.grd: scale_factor: 1 add_offset: 0

2017/08/12

JAGURS on Mac

JAGURS(高性能津波計算コード)の作者の馬場さんから,Macで動いたなら手順を公開して欲しいという依頼がありましたので,まとめておきます.
(シリアル版かつ手抜きなので順次更新します)
(追記:シリアル版といいつつ,OpenMPは有効に出来るようでした.というわけで,MacOSな1台のマシンでやるにはOpenMPで十分.)

【試した環境】

【依存ライブラリ】
NetCDF,PROJ4,FFTW3が必要ということなので,MacPorts でお手軽に入れました.なので,インストール先は全て /opt/local になりますので,それに合わせてMakefileを修正して下さい.NetCDFはFortranから使えるようにするため,netcdf-fortranパッケージもインストールして下さい.かつ,FFTW3もFortranから使えるようにするため,gfortran variant などを付けておいて下さい.
(というのを考えるのが面倒なので,コンパイルする手順も別途作成します)
  • NetCDF
    •   netcdf @4.4.1.1_0+dap+netcdf4 (active)
    •   netcdf-fortran @4.4.4_0+gcc6 (active)
  • PROJ4
    • proj @4.9.3_0 (active)
  • FFTW3
    • fftw-3 @3.3.5_0+gfortran (active)

あと,少なくとも私の環境では, -lsz (szip) が無いと言われたので,
  % port install szip
しました.

【コンパイル】
まずは,シリアル版.Makefile.SC_ICEをベースにするようにマニュアルに書いてあるけど,Makefileと同じ内容なので,Makefileでスタートする.

【罠】
フォートランのプログラムファイルが .f90 で提供されています.一方,gnu系(?)のコンパイラでは,.f90の場合,preprocessorが動いてくれません!

#ifdef MULTI
  1
Warning: Illegal preprocessor directive

とか言われます.これは, .F90 にすることで解決するそうです.まさか...
というわけで,ファイル名を .F90 にしてあげて(厳密には,preprocessorを使うソースだけで良いですが面倒なので全部),Makefileの %.o: %.f90 を  %.o: %.F90 にします.
(gfortran に -cpp オプションを渡してあげれば良いだけでした)

【Makefile修正箇所】

  • gfortran で .F90 なファイル(.f90と区別される)にpreprocessorを適用するには, -cpp オプションを指定する.
  • gfortran で OpenMP を使うには, -fopenmp オプションを指定する.

FC=/usr/local/bin/gfortran
PROJ4_DIR=/opt/local
CC=/usr/local/bin/gcc
CFLAGS=-g -I${PROJ4_DIR}/include
BASE=-cpp
FFTW3_INCLUDE_DIR=/opt/local/include
FFTW3_LIB=-lfftw3
OPT=-O2 -fopenmp
NETCDF=/opt/local
LIBS=-L$(NETCDF)/lib -lnetcdff -lnetcdf -L/opt/local/lib -lhdf5_hl -lhdf5 -lcurl -lsz -lproj $(FFTW3_LIB)
# MPI=ON

修正済Makefileはここに置いておきます



2017/08/05

「君の名は。」の月

「君の名は。」DVDも発売されましたね♪
書こう書こうと思っていたネタ帳がどこかに紛失してしまったので書き直し.

まず,なんか,もう気に入りすぎちゃって,片手じゃ足りないくらい見ちゃってました.両手では足りる回数でしたが・・・.

んで,何を書こうと思ったかというと,月.
深海監督は,リアルな描写を旨とされているということなんだけど,天文屋からするとちょっとねぇ〜というところがちらほら.
あの描写(進行方向)がされている彗星が地球に落下することは無いんですよね.基本,自分のところに落ちてくる流星(隕石)は,静止流星として見えてないとね...まぁ,これはマニアックな話.
惜しいのは,月齢.3年間時間がずれていて日付が同じ.その日に月の形が同じになるかは月齢が同じかどうかということになる.これは,ちょっと気合いを入れて調べると分かる.例えば,ここで月齢の計算が出来る.ただ,まぁ,ちょっと気合がいると思います.このこよみのページによると,2013年10月で新月だったのは5日.そうすると,三日月(に見える)の日は,10月8日〜10日位なんですね.

んだども,ど〜〜しても,見た瞬間に気になっちゃったのは(そして,何度も確認したのは),2台のクレーン車の上に居た半月.こちらのサイトのように,意味深な解釈もありそうなのですが,自分としては,気になってしょうがないのはこの半月.こればっかりは,何の調べも必要なく,あり得ない.と分かってしまう.何かというと,,,月が光っている向き(半分)が逆.もしくは,昼夜が逆.なんでかって言うと,半月ということは,月と地球と太陽が90度の角度を成しているわけで,もうちょっとわかり易い表現に変えると,光っている側の90度向こう側に太陽が居ることを意味してます.月は太陽に照らされているので当然ですね.
そうすると,何がおかしいかというと,半月で「上」側が光っている場合,太陽は月の上側に居るわけなので,昼間じゃなきゃおかしいのです.か,「下」半分が光ってて,夜.別にそんな話はどうでもいいって?ま,良いです.でも,これは「ウソ」って分かる描写なら別に気にもならないのですが,リアルっぽくあり得ないから気になっちゃいました.虫が食ったような三日月モドキとかはあり得ないって分かるし.

更なる蛇足ですが,1200年周期で彗星が戻ってくることはあるわけですが,,,,同じ場所に落ちるってのはなぁ...でも,「あり得ない」と断言できるものではない.

でも,面白くて何度も観たし,DVDも買いましたで!

(追記)
彗星の分裂というのは,木星に衝突したシューメーカーレビー第9彗星(SL9)に限らず,頻繁に発生している現象です.私の最初の研究はSL9の木星衝突時の近赤外(OASIS)観測記録の解析.卒論は,百武彗星の分裂片の運動解析でした.どっちもちゃんと論文化していないのは,,,反省.

2017/03/30

Adobe Acrobat Pro DC for Mac

Adobe Acrobat Proが古い(IX)ままだったので,DCを買ったのだが,パッケージ署名の証明書が怪しいと・・・



開いてみたところ,有効期限切れでした.今が3月30日.証明書は2月22日まで.惜しいなぁ...在庫で眠ってる間に期限が切れたかな.


ダウンロードパッケージなら証明書の更新も出来るでしょうけど,CDに焼いたパッケージと成ると,再作成になるからなんとも難しいですね.