2017-02-23 13 views
0

私はInport上で制御入力Uを受け取り、その入力に基づいてシステムの状態をシミュレートするSimulinkシミュレーションを持っています。私はシミュレーションに可変時間ステップのソルバーを使用したいと思いますが、Uは離散時間ポイント(均等に配置されていない)として定義されますが、これは確かに生成された時間とは一致しません)ode15s。Simulink:Inportsのスプライン補間?

SimulinkはUベクトルと時間ベクトルを取り込み、キュービックスプライン補間を使用して、指定されたUベクトルと整列していない時間についてUの値を決定します。[データの補間]オプションと同様です。 Inportの設定は、私のデータが等間隔ではなく、線形補間を必要としません。これどうやってするの?

答えて

2

これを実現する方法は次のとおりです。私はUベクトルが事前に既にわかっていると仮定しています。これは、ベクトル値がソルバーのサンプルモーメントと一致しないランダムサンプルモーメントで与えられるという事実から暗示されます。

「1次元補間テーブル」ブロックを入力し、「クロック」ブロックを入力として接続します。 1次元補間テーブルでは、Uベクトルの値を「テーブルデータ」に指定することができます。また、あなたの場合にはブレークポイントを指定することができます。これらは、ワークスペースの変数にすることができます。

次に、「アルゴリズム」の下で、補間方法として「立方体スプライン」を選択します。

これはすべきことです。

+0

なぜ、1-Dテーブルブロックへの入力にワークスペース変数を使用することがなかったのか尋ねないでください。これを行うより効率的な方法は何でしょうか? – Frank

+0

私が尋ねていることを尋ねるより良い方法は、あなたが提案する方法については何が非効率的なのでしょうか? – Frank

+0

投稿を編集しました。私はこの方法が非効率的であると推測する正当な理由はない。 –