まず、この優れたarticleを既に見てきました。 私はsdp
と呼ばれるMATLABスクリプトを持っています。私はtrack
と呼ばれる別のMATLABスクリプトを持っています。 track
をsdp
の後に実行します。track
は、sdp
の出力の一部を使用しています。トラックを走らせるために、私はaction
という関数を何度も呼び出す必要があります。私はaction
を別のMATLABファイルの関数として定義しています。このaction
の各呼び出しには、いくつかの入力があります。たとえば、x1,x2,x3
ですが、x2,x3
は変更されない単なる「データ」です。彼らはtrack
と同じsdp
で同じであり、action
に同じままです。ここでは、x2,x3
は巨大な行列です。そしてグローバル変数の代替:MATLABの永続変数とネストされた関数
(x2,x3,...x10
ように思う)そこの多くのラメの方法は、SDPで、その後、トラックにグローバルとしてx2,x3
を定義することですので、私は唯一のx1
でアクションを呼び出すことができます。しかし、これは私のパフォーマンスを信じられないほど遅くします。 が何であるかを覚えておくために、どうすればよいでしょうか?それぞれの呼び出しは非常に高速です。たとえば、これをインラインで実行すると、超高速です。
おそらく私はいくつかの永続変数を使用できます。しかし、私は彼らが私の例に当てはまるかどうか正確には分かりません。私はそれらを正確に使う方法も知らない。
オブジェクト指向プログラミングの方が高速でしょうか?わからない。あなたは永続的な変数やこれらの関数のネストに精通していますか、それはおそらく関連していますか? – bissi