Mass spring differential equation

I am good at Matlab programming but over here I am stuck in the maths of the problem, I am dealing with the differential equation of spring mass system

mx’’+cx’+kx=0

where x’’=dx2/dt2 and x’=dx/dt. I have the values of mass and I also have the array of time and x i.e x is given for a particular value of time so I can find x’’ and x ‘ easily. I am stuck at what method to apply to find the value of c and k. I can program any method but have searched several books but didn’t get how to find c and k. If I get to know the method I can program it easily.

Re: Mass spring differential equation

Let x", x' and x be column vectors of results calculated at each time step (each vector has n entries).

Then create the matrices:

A = [x" x'] this is a n row, 2 column matrix, and

y = [m ; c] this is a 2 row, 1 column matrix, and

x = [x] this is a n row, 1 column matrix.

Now your DE can be written:

Ay = -kx

we can find the minimum squares solution of this as follows

Ay = -kx

so

A'Ay = -kA'x

so

$\displaystyle (A'A)^{-1} A'Ay = -k(A'A)^{-1} A'x $

so

$\displaystyle y = -k(A'A)^{-1} A'x $

Re: Mass spring differential equation