I need help with an error I get

4 Ansichten (letzte 30 Tage)
Nathanael
Nathanael am 5 Mai 2024
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

Akzeptierte Antwort

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

Weitere Antworten (2)

Torsten
Torsten am 5 Mai 2024
Verschoben: Torsten am 5 Mai 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 am 5 Mai 2024
Bearbeitet: Venkat Siddarth Reddy am 5 Mai 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!

Kategorien

Mehr zu Startup and Shutdown finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by