validateFcns
语法
描述
validateFunctions
测试的预测模型、自定义成本,自定义约束,和雅可比矩阵函数的非线性MPC控制器等潜在问题的信息是否丢失,是否输入和输出参数的任何用户提供的功能是不兼容的对象设置或用户提供的分析梯度/雅可比矩阵函数是否数值准确。当你第一次设计非线性MPC控制器,或者当你做出重大的改变现有的控制器,这是最佳实践来验证控制器的功能。
非线性MPC
多级非线性MPC
validateFcns (
多级非线性MPC控制器的功能测试nlmpcMSobj
,x
,mv
)nlmpcMSobj
对潜在的问题。功能测试使用指定的国家和操纵变量值,x
和mv
,分别。这些值可以表示名义条件或任意操作点。使用这种语法如果控制器没有测量扰动和参数。
validateFcns (
指定额外的nlmpcMSobj
,x
,mv
,simdata
)simdata
结构。如果参数所需的功能状态和阶段,您需要提供simdata
。
例子
输入参数
提示
当你提供自己的雅可比矩阵分析功能,它是特别重要的,这些函数返回有效的雅可比矩阵值。如果
validateFunctions
检测大型用户定义的雅可比矩阵函数返回的值之间的差异和有限差分近似,验证雅可比矩阵的代码实现。
算法
为每个控制器功能,validateFunctions
检查是否该函数:
存在于MATLAB®路径
所需数量的输入参数吗
可以成功地执行没有错误吗
返回输出参数与正确的大小和尺寸
返回有效的数值数据;也就是说,它不返回
正
或南
值
雅可比矩阵的函数,validateFunctions
检查返回值是否与有限差分近似雅可比矩阵的值。这些使用数值摄动有限差分计算值。
版本历史
介绍了R2018b