MATLAB Answers

help using feval with sigma points

3 views (last 30 days)
dab483
dab483 on 27 Mar 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.

Accepted Answer

Matt J
Matt J on 27 Mar 2013
Edited: Matt J on 27 Mar 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 Comments
dab483
dab483 on 27 Mar 2013
Oh my. Didn't notice the difference. So sorry about that. Now the problem solve. Thank you so much. :))

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!