Community Tip - If community subscription notifications are filling up your inbox you can set up a daily digest and get all your notifications in a single email. X
Dear forum,
Basically, I am trying to analyse the forced vibration of a single span Timoshenko beam on elastic supports at both ends.
I want to at the end determine the displacement w(f), rotation phi(f), shear force Q(f) and bending moment (f) at the ends of the beam due to a force excitation on one end of the beam. I want a plot of these paramaters over the excitation frequency f = 1Hz., 2Hz, 3 Hz....1000Hz.
To obtain these parameters, I need to solve for a matrix system which looks like this: A.c = b. A is a 4x4 matrix for each frequency, c is a 4x1 vector for each frequency and b is a 4x1 vector for each frequency. So, based on my frequency spacing of 1Hz from 1Hz to 1000Hz, I have 1000 4x4 A matrices in the A(f) matrix, 1000 4x1 matrices in the c(f) vector and 1000 4x1 matrices in the b(f) vector.
I have tried using lsolve to solve the system of equation for the c(f) vector but I keep on having an error message which says that the calculation does not converge to a solution. Initally, I have thought that it was because of the units, so I have created a another calculation sheet without units. Still the same convergence error when using lsolve.
Is this a familiar error and how can one get around it?
Solved! Go to Solution.
A.c = b. A is a 4x4 matri
See my last PM. In your sheet, which you can't post in the public forum, A is not a 4x4 matrix but rather a nested 4x1 matrix consisting of 1x4 matrices which as I suppose should be the rows of the expected 4x4 matrix. Sent you a possible solution in the PM.
A.c = b. A is a 4x4 matri
See my last PM. In your sheet, which you can't post in the public forum, A is not a 4x4 matrix but rather a nested 4x1 matrix consisting of 1x4 matrices which as I suppose should be the rows of the expected 4x4 matrix. Sent you a possible solution in the PM.
So basically I had calculations using the row selector and the result was a row (1x4 matrix). It was still a row vector even after I put it in a matrix and so I ended up with a nested matrix.
Using the lsolve function with nested matrix has led to the error. Werner_E has quickly noticed the wrong nested matrix format in my calculation. By using the stack function instead to build the matrix, the nested matrix problem was avoided and I could use the lsolve function without any error messages.
Everything now works like magic. Thanks so much for your quick reply and great help.