Hello,
I'm coding a state estimator (EKF) using an matlab coded s-function, and need to store the state and covariance matrix at each time step.
Is it possible to set the Dwork to a 2 dimensional matrix? If so, how? If not, are there any other alternative methods to store the covariance matrix after each step?
Thanks, Alex

 Akzeptierte Antwort

Kaustubha Govind
Kaustubha Govind am 20 Mai 2013

0 Stimmen

No, AFAIK, S-function DWorks can only be vectors (1-D). Why not simply reshape the matrix to a vector and vice versa?

1 Kommentar

Sepehr Ariaei
Sepehr Ariaei am 16 Apr. 2019
Miss. Govind,
MATLAB should really develop this DWork vector for multi-dimensional approach. It has been 6 years since people commented this and still it's not possible to do it. If you please add this as a feature would come in handy in the future! I really needed this.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Erwin Torreao Dassen
Erwin Torreao Dassen am 2 Sep. 2013

1 Stimme

Humm... I was also needing this. Elsewhere in Simulink when specifying dimensions one can use an array like [2 3] to specify a 2D (or even more) signal. This doesn't work for the Dwork vector. Nowhere in the documentation is this stated and the "dimensions" name for the dwork property is misleading. It would be very good to support multidimensional work vectors (feature request?). For now at least state this in the documentation.
Kind regards,
Erwin

1 Kommentar

Nshine
Nshine am 12 Feb. 2020
I completely agree with this answer. The documentation is not clear, and in fact inconsisent with Matlab's typical use of 'dimension'. If it is stated somewhere, I havent been able to easily find it.

Melden Sie sich an, um zu kommentieren.

Kategorien

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by