株式会社オメガシミュレーション

= Excelアドイン実地例 : 複合問題(反応方程式のパラメータ決定) =

図のように反応速度式と測定データが与えられているとして、測定データから反応速度式のパラメータ を決定します。 この問題は微分方程式の係数を決める問題で、係数を仮定して積分計算を繰り返し行い、測定データと計算結果との残差が最小となるように係数を求めます。


・ソーステキスト

図のように別のシートに EQUATRAN-G のソーステキストを作成します。 ソーステキストの内容をポイントだけ説明しておきます。 まず REACTという関数(FUNCTION)に反応方程式を数値積分する計算が記述してあります。 INTEGRAL文で積分区間、積分刻み、積分手法を与えて数値積分を指定しています。 測定データのある時間で積分計算の値をサンプリングし、それと測定データとの誤差を eC とします。 この関数をメインから繰り返し呼んで最小2乗法計算を行います。 eC の残差平方和が最小となるような、k と n を探索するためにFIND文で指定します。 積分計算の外側で最小2乗法の繰り返し計算を行います。


・入出力データ

Excel のメニューから EQUATRAN のアドインを起動し、入出力データ作成を行うと、別のシートに入出力変数を列挙したシートが自動的にできあがります。

「I/O」が入力(I)となっている変数に測定データをコピーします。
EQUATRAN ウィンドウ上で「ラン」を実行すると、入出力データの出力(O)に計算結果が出力されます。


・計算結果

この結果をもとのシートにコピーし(リンク貼り付けをしておくと便利です)、測定データと計算結果をグラフ化することで、求まったパラメータ(k=4.046×10-6、n=2.083)が測定データをよく表現できているかを評価することができます。 また、残差平方和を計算してみると十分小さいことが分かります。