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

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;

 Réponse acceptée

Change the line
amag = F./m;
to
amag=sqrt(sum(F.^2))/m;

7 commentaires

Thank you so much your answer. This is correct answer but I don't understand this equation. I know F=m*a
Basic mathematics. If you want the magnitude, which is a scalar value, then you have to calculate the magnitude of F vector to obtain a scalar value. Since m is scalar, then the acceleration will be scalar.
Thank you so much cvklpstunc
Hello, i still don't understand this explanation of the answer. Is this high level math or science?
Hi,
Its real simple like using the Pythagorean theorem. First try to add the 2 vectors and then get their squares and after word try to get sum of the vector. you will have your scalar but you have to take sqrt of that answer and then divide it with (m) to get the desired result.
I write it as F=sqrt(F.1.^2+F2.^2); amag=F./m and got wrong answer. Why?
F1 instead of F.1

Connectez-vous pour commenter.

Plus de réponses (3)

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
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 le 9 Juil 2018
Modifié(e) : Walter Roberson le 9 Juil 2018
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.

2 commentaires

can u explain how its work??
? The line at the bottom already explains it.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Programming dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by