Clear Filters
Clear Filters

I need help with an error I get

2 views (last 30 days)
I have to write a bit of code for an assignment and I keep getting an error and I dont know how to solve it.
I have to determine the position, velocity and acceleration. funcao_forca is a function of a force that is defined in another script. It keeps telling me that F is not recognized. How do I go about this?
function [posicao, velocidade, aceleracao] = atleta(t, f, M)
f = funcao_forca(t,F);
dt = 1;
t1 = [0:dt:t];
aceleracao = zeros(size(t1));
aceleracao = f/M;
velocidade = zeros(size(t1));
for i = 2:length(t1)
velocidade(i) = velocidade(i-1) + aceleracao(i) * (t1(i) - t1(i-1));
end
posicao = zeros(size(t1));
for i = 2:length(t1)
posicao(i) = posicao(i-1) + velocidade(i-1) + 0.5 * aceleracao(i) * (t1(i) - t1(i-1))^2;
end
end

Accepted Answer

Stephen23
Stephen23 on 5 May 2024
Perhaps the input argument should be F (not f):
function [posicao, velocidade, aceleracao] = atleta(t, F, M)

More Answers (2)

Torsten
Torsten on 5 May 2024
Moved: Torsten on 5 May 2024
Define F before you call "funcao_forca". It's not set in your code.
Maybe you mean
F = funcao_forca(t,f);
because f is a given input to your function.

Venkat Siddarth Reddy
Venkat Siddarth Reddy on 5 May 2024
Edited: Venkat Siddarth Reddy on 5 May 2024
Hi Nathanael,
Variables in MATLAB are case-sensitive.In the first line of function definition, "F" has been used which isn't declared or defined before. I think you have accidentally typed it for the variable "f".
I hope it helps!

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!