HELP: 'Error: Function definitions are not permitted in this context.'
3 views (last 30 days)
Show older comments
snrlax
on 15 Nov 2013
Commented: Azzi Abdelmalek
on 15 Nov 2013
I'm new to matlab just for you to know.
I'm getting this error on this function:|
function [dydt]=deriv(t,y,a,b,u,df,dr,Fn)
dydt=zeros(2,1);
alphaf=(y(2)+a*y(1))/u-df; % Slip Angle Front [rad]
alphar=(y(2)-b*y(1))/u-dr; % Slip Angle Rear [rad]
tire_model(niu,Calpha,alphaf,alphar,Fn) % Lateral Forces [N]
dydt(1)= (1/Izz)*(Fyf*a-Fyr*b); % Yaw Acelaration
dydt(2)= (1/M)*(Fyf+Fyr)-u*y(1); % Lateral Acelaration
end
a,b,u,df,dr,Fn are defined in the main script, I noticed that if I define them inside this function it works, but that's not what I pretend.
Thanks in advance
0 Comments
Accepted Answer
Azzi Abdelmalek
on 15 Nov 2013
Edited: Azzi Abdelmalek
on 15 Nov 2013
If a,b,u,df,dr and Fn are used by your function, you need to define them inside your function, or define them as input arguments.
2 Comments
Azzi Abdelmalek
on 15 Nov 2013
When you call the function, with ode45 for example:
[t,y]=ode45(@(t,y),deriv(t,y,a,b,u,df,dr,Fn),tspan,IC)
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!