fcn2optimexpr
算法描述
fcn2optimexpr
将应用于优化变量的标准 MATLAB® 函数句柄转换为等效的优化表达式。该函数尝试创建一个可有效评估的表达式。不谈细节,fcn2optimexpr
采取以下步骤。
具体步骤如下:
如果
Analysis
参量是"off"
,则将该函数包装为黑盒函数并退出。否则,检查函数是否具有以单独函数表示的
for
循环。如果是,请尝试使用静态分析来分析该函数。如果成功,则退出。否则,继续下一个案例。
如果不是,则尝试使用重载来评估函数,即检查所有操作是否来自 优化变量和表达式支持的运算 列表。如果是,则使用支持的运算符并退出;如果不是,则将函数包装为黑盒并退出。
当返回的表达式是“黑盒”时,自动区分不适用。这意味着如果求解器使用导数信息,则求解器必须使用有限差分步骤来估计导数。
有关静态分析的信息,请参阅 优化表达式的静态分析。