Compose-4000:ComposeカーブフィッティングでのCompose数学関数
Tutorial Level: Beginner
ComposeのOML言語には、データに方程式をフィッティングする関数が用意されています。このチュートリアルでは、lsqcurvefit関数とpolyfit関数の使用方法を紹介します。
lsqcurvefitによるフィッティングで使用するテストデータの作成
- Composeを開始します。
-
ファイルメニューで、開くを選択して、<installation_dir>/tutorials/フォルダでファイルlsqcurvefitDemo.omlを探します。このファイルには、ランダムを含む、減衰正弦波応答からサンプリングしたデータを作成するコードが格納されています。
このプロットは次のようになります。
フィッティング関数の定義
カーブフィッティングのためのパラメーターは、振幅、指数減衰係数、および振動周波数です。これらのパラメーターはそれぞれA、b、およびfで表され、フィッティング関数に1番目の引数としてベクトルで渡されます。2番目の引数は、この関数を評価する時刻を記述したベクトルです。

lsqcurvefitによるカーブフィッティングの実行
データプロットといくつかの計算から、フィッティングパラメーターを推定できます。lsqcurvefitでは、これらの初期推定値が入力として必須です。その他の入力として、tとxの未加工データ値があります。

この出力を次に示します。

1番目の出力pには、フィッティングパラメーターが格納されています。2番目の出力resnormには、未加工データとフィッティングしたカーブとの残差のノルムが格納されています。
未加工データとフィッティングしたカーブのプロット


polyfitによるフィッティングで使用するテストデータの作成
- Composeを開始します。
- ファイルメニューで、開くを選択して、<installation_dir>/tutorials/フォルダでファイルpolyfitDemo.omlを探します。
-
このファイルには、多項式分布の散布図に使用するデータを作成するコードが格納されています。
このプロットは次のようになります。
polyfitによるカーブフィッティングの実行
データプロットといくつかの計算から、フィッティングパラメーターを推定できます。polyfitでは、これらの初期推定値が入力として必須です。その他の入力として、tとxの未加工データ値があります。

この出力を次に示します。1番目の出力pには、フィッティングした多項式係数が格納されています。2番目の出力sには統計データが格納されています。ここには、残差ベクトルのノルムのみが示されます。

未加工データとフィッティングしたカーブのプロット
上記で得られた係数(p)を指定したpolyvalを使用して、フィッティングしたカーブを未加工データとともにプロットできます。

