はじめに
Foundation版OpenFOAMのバージョン10で実行時コードが変更されたため、原因調査および対策を考えた。その結果をここに記す。
発生状況
境界条件(たとえばcodedMixed)で解析時刻を取得していたが、バージョン10で実行時コンパイル時にエラーが発生して計算ができなくなった。
原因
バージョン9までは次のコードで解析時刻を取得できていた。
this->db().time(). timeOutputValue()
バージョン10でtimeOutputValueメソッドが存在しなくなったため、エラーが発生した。
対策
バージョン10では同様の機能を持つメソッドが用意されている(というか名前が変わっただけ)。
this->db().time().userTimeValue()
バージョン10以降はuserTimeValueメソッドを使用すればよい。
おわりに
なんでこんな変更をしたのだろう...?