シンボリックツールボックスを使用してmatlab関数を生成しています。ただし、生成される関数への入力の数は、必要なオブジェクトの数(スイッチの数など)によって異なります。2および3スイッチの場合、生成される関数は次のようになります。
y = fun(a1,a2,b1,b2)
y = fun(a1,a2,a3,b1,b2,b3)
この関数を使用するスクリプトでは、これらのパラメーターのベクトルを確立します。
a = [a1 a2 ...]
生成された関数を直接呼び出すか、ラッパー関数を作成して、スイッチの数を変更するときにcallステートメントを変更する必要がないようにします。この問題をさらに複雑にするために、これらの変数はACADO変数です。つまり、行列および要素ごとの演算は許可されません(つまり、すべての数学演算はスカラーを使用して実行する必要があり、シンボリックツールボックスの方程式はスカラー用に記述する必要があります)。