Hi, I try to solve below question but I have a problem, my answer is wrong

2 次查看(过去 30 天)
Write a function that is called like this: amag = accelerate(F1,F2,m). F1 and F2 are three-element column vectors that represent two forces applied to a single object. The argument m equals the mass of the object in units of kilograms. The three elements of each force equal the x, y, and z components of the force in Newtons. The output variable amag is a scalar that is equal to the magnitude of the object’s acceleration. The function calculates the object’s acceleration vector a by using Newton’s law: F = ma, where F is the sum of F1 and F2. Then it returns the magnitude of a. Hint: we are talking about physical vectors here, so the Pythagorean theorem will come in handy.
My answer is;
function amag = accelerate(F1,F2,m)
F = F1 + F2;
amag = F./m;

采纳的回答

Birdman
Birdman 2017-10-27
Change the line
amag = F./m;
to
amag=sqrt(sum(F.^2))/m;
  7 个评论

请先登录,再进行评论。

更多回答(3 个)

Isaac DeVaughn
Isaac DeVaughn 2017-12-6
I think i understand the your answer basically there's an extra formula for the magnitude of F=squareroot(Fx^2+Fy^2+Fz^2) that is supposed to be implied by that last line. I didn't understand that from the question but thats kinda how magnitude works

Amit Kumar
Amit Kumar 2018-2-19
what is wrong with code? this code runs correctly for some values but showing error for F1=[1;0;0], F2=[0;1;0] and m=1 function [ amag ] = accelerate( F1,F2,m ) F=(sqrt(F1.^2)+sqrt(F2.^2)); amag=sum(F/m); end

Muniba Arshad
Muniba Arshad 2018-7-9
编辑:Walter Roberson 2018-7-9
Guys this is the correct solution,
amag = accelerate(F1,F2,m)
F_sum = F1 + F2;
F = sqrt(F_sum(1,1)^2+F_sum(2,1)^2+F_sum(3,1)^2);
amag = F/m;
Explanation: First add the vectors then find the magnitude of resultant vector and apply the formula a=F/m on it.

类别

Help CenterFile Exchange 中查找有关 General Physics 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by