34 久しぶりに kv

学生にチャレンジャーが現れたので、久しぶりに kv とのお付き合いを再開する。


boost が必要なので、私は MacPorts でインストール。
sudo port install boost

「kv - C++による精度保証付き数値計算ライブラリ」 から kv-0.4.52.tar.gz を入手する。
curl -O http://verifiedby.me/kv/download/kv-0.4.52.tar.gz
tar xzf kv-0.4.52.tar.gz
cd kv-0.4.52
sudo cp -pr kv /usr/local/include

試しにテスト・プログラムを1つコンパイル・実行
cd test
c++ -I/usr/local/include -I/opt/local/include test-interval.cc
./a.out
(結果が正しいのかよくわかんない(笑)。テストには答えが欲しい。)

毎回 -I/usr/local/include -I/opt/local/include を指定するのは 面倒なので、スクリプトとか別名定義を用意するのかな。 名前をどうするかが悩ましいけれど、とりあえず
ckv (シェル・スクリプト)
#!/bin/sh
c++ -I/usr/local/include -I/opt/local/include ${CXXFLAGS} -o ${1%.*} "$@"
とか。 ckv nantoka.cc とすると nantoka という実行形式が作られる。

おまけ: シェルスクリプトの準備
ckv のようなシェル・スクリプトは次のように準備する。
(1)
テキスト・エディターで書く。
(2)
実行許可属性を与える。ターミナルで
chmod +x ckv
(3)
環境変数 PATH に登録してあるディレクトリィに置く。 現象数理学科Macの場合、~/bin というディレクトリィが 登録されているはずなので (これも学年によっては違うのかな?)
cp ckv ~/bin
とすればよい。


matplotlib.hpp というのがある (http://verifiedby.me/adiary/0115)。 Python を呼び出して、matplotlib で描画させる、というものらしい。 ところが test-matplotlib.cc をコンパイル・実行しても、 図が表示されなかった。 環境の違いに起因するのだろうか (こちらは Mac だが、kvの作者は Linux 環境らしい。 Python にも色々あるしね。)。 えーと…
        void show() const {
                send_command("plt.show()");
        }
のようなメソッドを matplotlib.hpp に加えて使うことにした。 これを呼び出せば無事図を表示することができた。



桂田 祐史