主要内容

克隆

在线状态估计对象副本

描述

例子

obj_clone=克隆(obj)创建一个在线状态估计对象的副本obj相同的属性值。

如果你想复制现有的对象,然后修改复制对象的属性,使用克隆命令。不使用语法创建额外的对象methoda = obj。任何更改,以这种方式创建新对象的属性(methoda)也改变原始对象的属性(obj)。

例子

全部折叠

创建一个扩展卡尔曼滤波对象的范德堡尔振荡器有两个州和一个输出。要创建对象,使用之前编写和保存状态转换和测量功能,vdpStateFcn.mvdpMeasurementFcn.m。初始状态两种状态的值指定为2,0。

obj = extendedKalmanFilter (@vdpStateFcn、@vdpMeasurementFcn [2; 0])
obj = extendedKalmanFilter属性:HasAdditiveProcessNoise: 1 StateTransitionFcn: @vdpStateFcn HasAdditiveMeasurementNoise: 1 MeasurementFcn: @vdpMeasurementFcn StateTransitionJacobianFcn: [] MeasurementJacobianFcn:[]状态:[2 x1双]StateCovariance: [2 x2双]ProcessNoise: [2 x2双]MeasurementNoise: 1 HasMeasurementWrapping: 0

使用克隆生成一个对象具有相同的属性与原始对象。

methoda =克隆(obj)
methoda = extendedKalmanFilter属性:HasAdditiveProcessNoise: 1 StateTransitionFcn: @vdpStateFcn HasAdditiveMeasurementNoise: 1 MeasurementFcn: @vdpMeasurementFcn StateTransitionJacobianFcn: [] MeasurementJacobianFcn:[]状态:[2 x1双]StateCovariance: [2 x2双]ProcessNoise: [2 x2双]MeasurementNoise: 1 HasMeasurementWrapping: 0

修改MeasurementNoise的属性methoda

methoda。MeasurementNoise = 2;

验证MeasurementNoise原始对象的属性obj保持不变,等于1。

obj.MeasurementNoise
ans = 1

输入参数

全部折叠

对象为在线状态估计的非线性系统,使用以下命令之一:创建

输出参数

全部折叠

克隆在线状态估计的对象obj,作为一个返回extendedKalmanFilter,unscentedKalmanFilterparticleFilter对象与相同的属性obj

版本历史

介绍了R2016b