0

関数のパラメーターの1つを決定するために、多数のコサイン波に適合する必要があるプログラムに取り組んでいます。私が使用している方程式は y = y_0 + Acos((4*pi*L)/x + pi) です。ここで、L は最適な線から取得しようとしている値です。

データのセットごとに手動でこれを正しく行うことができることは知っていますが、このプロセスを自動化する最良の方法は何ですか? 私は現在、テキスト ファイルからデータを読み込んでおり、データと同様の振幅を持つパラメーター値の配列が得られるまで、初期パラメーターを変更してループを実行しています。最適なものを選択しようとする 2 つのエンド ピーク。それは、手作業でフィッティングしたときに得られる値よりも一貫して低い値を選択することです (ほぼ正確に 1 フェーズ オフ)。この方法を改善する方法、またはより効果的な別の方法はありますか?

編集:私のLabVIEWバージョンには、私が使用しているものであるcosフィッティングVIがあります。問題は、ループを使用して初期パラメータを変更してフィッティングを自動化しようとすると、プログラムに同じ最適なものを選択させる方法がわかりません人間が選ぶようなフィットライン。

4

2 に答える 2

2

高速フーリエ変換を使用しないのはなぜですか? これは、コサインをフィッティングするよりもはるかに高速です。複素数の結果ベクトルで、合計の最大ピークを探します。周波数 (FFT 結果ベクトル内の位置)、振幅、および位相が与えられます。

于 2011-07-12T23:45:19.493 に答える
0

適合曲線とデータの差を計算することにより、適合度を評価できます。VIは、「高度なカーブフィッティング」パレットでこれを行います。次に、あなたがしなければならないのは、最適なものを選ぶことだけです。

于 2011-07-13T15:01:33.197 に答える