Matlab spring equation question

22 views (last 30 days)
Liam Bouchereau
Liam Bouchereau on 27 Oct 2020
Edited: maiaL on 27 Oct 2020
Can someone please help me with the following question?
The force required to compress a linear spring is given by the equation;
where F is the force in newtons, k is the spring constant in newtons per meter and x is displacement. Write a program which will determine the compression of each spring for a given set of forces F and corresponding spring constants k. Use function round() to round the n-th element in the answer vector only.
For example:
TestResult
F = [20 30 80];
k = [20 10 20];
n_th = 2;
Result =
3
  2 Comments
KSSV
KSSV on 27 Oct 2020
You have to use
F = k*x
right? F, k is given.
Liam Bouchereau
Liam Bouchereau on 27 Oct 2020
F = k*x doesn't work because x is undefined
I tried
x = F/k;
disp(round(x));
but am unsure how to round to the n_th element

Sign in to comment.

Answers (1)

maiaL
maiaL on 27 Oct 2020
Edited: maiaL on 27 Oct 2020
The way I understand the problem, you need an array "x" as the result of this program, which will have the same size as the arrays F and k. For that, I would use an element-wise division here:
x = F./k;
For the rounding part, I believe you'd need to use the round() function with a 2nd argument, like so:
x = round(x,n_th);

Community Treasure Hunt

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

Start Hunting!