Solving a 3 degree of freedom mass spring damper model
조회 수: 41 (최근 30일)
이전 댓글 표시
Hi,
I'm converting these EOM's into a frequency based domain system as shown in attachment 2 in order to solve for the relative displacements X1,X2,X3 but, i'm having a difficult time trying to implement them into MATLAB. Could someone provide a barebone guide so i have an idea of how to proceed?
Thanks,
Z
댓글 수: 0
답변 (1개)
David Goodmanson
2020년 11월 22일
편집: David Goodmanson
2020년 11월 22일
Hi Z^2,
Now that you have the K, C and M matrices, you can create a matrix equation to find the natural resonant frequencies. Generalizing to n masses instead of 3, Let
xv = [x;v]
be a 2nx1 column vector of n displacements and n velocities; and let the system have an overall time dependence of exp((g+i*w)*t). Then a time derivative gives a multiplicative factor of (g+i*w) and
[v;a] = d/dt [x;v] = [x;v]*(g+i*w)
For the eqns of motion you can arrive at the 2nx2n matrix equation
[I 0;0 M]*[x;v]*(g+i*w) = [0 I;-K -C]*[x;v]
Here Mfull = [I 0;0 M] is a block matrix of four nxn matrices, I is the nxn identity, and 0 is an nxn block of zeros, and similarly for [0 I;-K -C]. Ordinarily you would have to multiply both sides by the inverse of Mfull to obtain an eigenvalue equation. But Matlab provides an option in eig so that you don't have to actually use the inverse of Mfull:
Mfull = [I 0;0 M];
A = [0 I;-K -C]
[xv lambda] = eig(A,Mfull)
The lambdas are the natural frequencies of the system, lambda = g+i*w. The values of g had better come out negative, meaning exponential decay rather than exponential growth.
I assumed here that you were not applying any external forces at a specific frequency and looking for a steady state solution. If you were, then the solution is different, and easier.
참고 항목
카테고리
Help Center 및 File Exchange에서 Assembly에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!