help using feval with sigma points

12 Ansichten (letzte 30 Tage)
dab483
dab483 am 27 Mär. 2013
Hi i have a function represent by:
function [y] = ffun(x,t);
if nargin < 2, error('Not enough input arguments.'); end
h=0.05;
m=2;
y=[x(1) + h*x(2) ;x(2) + h*(-9*x(1) + m*(1-x(1)^(2))*x(2))];
I am using 'feval' as:
xPredSigmaPts = feval(ffun,xSigmaPts(1:2,1:5),t)
where my xSigmaPts are:
xSigmaPts =
0 -2.4495 0 2.4495 0
6.0000 6.0000 2.8377 6.0000 9.1623
The answer I got using the above are:
xPredSigmaPts =
0.3000
6.6000
But this is not what I want. I want the 'feval' to evaluate/using each row and column of my data, xSigmaPts. So that the final result will be
xPredSigmaPts =
0.3000 -2.1495 0.1419 2.7495 0.4581
6.6000 4.1023 3.1215 1.8977 10.0785
How do I correct my 'feval' so that the final result as above? Thank you.

Akzeptierte Antwort

Matt J
Matt J am 27 Mär. 2013
Bearbeitet: Matt J am 27 Mär. 2013
It's not feval that needs fixing. It's ffun:
y=[x(1,:) + h*x(2,:) ;x(2,:) + h*(-9*x(1,:) + m*(1-x(1,:).^(2)).*x(2,:))];
  3 Kommentare
Matt J
Matt J am 27 Mär. 2013
The version I posted for you does not have this problem. Try mine instead of your own.
dab483
dab483 am 27 Mär. 2013
Oh my. Didn't notice the difference. So sorry about that. Now the problem solve. Thank you so much. :))

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Function Creation finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by