昨日に続いて MPFR でプログラムを組んでいるが、これの拡張版の mpreal クラスが扱うのがなかなかに難しい。
簡単にいうと、
printf("a = %d\n", a);
b = a;
printf("b = %d\n", b);
のようなことをすると、aとbで違った表示がされる。
MPFR が原因なのか、あるいは mpreal なのか解からないが、不思議な現象である。
このとき、a の桁数が打ち切られて b に入っているようでもあり、よく解からない。
とりあえずは、あとで valgrind をかけてメモリチェックをかけて、それから詳細を確認しようと思う。
それにしても、Matlab で10秒でかけるコードを mpack で実装しようとすると5分はかかる。
mpack はマニュアルが未整備なので、関数を使うときにはソースコードを直接参照してから利用している。mpreal なども確認するためにソースコードの動きをざっと確認したりしており、これが結構時間がかかっている。
まだまだだいぶかかりそうだ。
今日の作業内容:MPFR プログラミング
今日のランチ:さか本 野菜天丼とおそばセット
明日の予測作業時間:4h
0 件のコメント:
コメントを投稿