CellVal-IniPara-Fitting
以前のバージョンのOriginでは、フィットパラメータの初期化を行うのにOriginCコードを使用する必要がありました。Origin9.0 SR1以降では、LabTalkスクリプトを使用して初期化パラメータを設定できるようになりました。これは、ワークシートの値を初期パラメータとして使用したい時などに特に便利です。
このチュートリアルでは、3つの異なる気温に対してそれぞれの吸着摂取曲線を描き、結果を3つの.txt ファイルにエクスポートする方法を学びます。数の条件はヘッダ情報と同じ.txt ファイルに保存されています。isothermal-sphericalモデルの以下の数式を使用してデータをフィットします。
ここで、yは正規化された摂取質量(mg/g)、xは時間帯(s)、Tは時間定数(1/s)、それとフィットパラメータです。
時間定数と温度の関係については以下の経験式から説明されます。
各温度の摂取曲線では、この経験式からTを計算し、その値を初期値として曲線フィットに使用します。
必要なOriginのバージョン: Origin 9.0 SR1以降
このチュートリアルでは、以下の項目について解説します。
y = 1 - 6/(pi^2)*exp(-(pi^2/T)*x)
//パラメータ初期化で実行するコード //現在のワークシートを取得 range rpage=ry.getpage()$; //ワークシートデータを取得 range rlayer=ry.getlayer()$; //ワークシートデータのインデックスを取得 int inext=rlayer.index; //データワークブックがアクティブである事を確認 win -a %(ry.getpage()$); //データワークシートがアクティブである事を確認 page.active=inext; //データワークシートの列2をアクティブ化 wks.col=2; //列の内容から温度を文字列として取得 string str1$ = wks.col.comment$; //温度の数字を文字列から取得 string str2$ = str1.Left(3)$; //文字列の値から倍精度の数値に変換 double Temp = %(str2$); //経験式を使用してTの初期値を計算 T=25000 - 58 * Temp; //パラメータ初期化スクリプトが正確に実行されるか確認 type -b "Experimental temperature is $(Temp) K, so the initial value of T is $(T)."