While waiting for PTC to finally give us Prime 5, I am working on a worksheet for the analysis of the natural frequencies of a generalized beam in Prime 4.
Here is my problem:
I want to write a generalized Mathcad worksheet that can be used to find the nth free-vibration natural frequencies of a beam with nth DOF. The DOF's arise because the beam can be arbitrarily divided into i number of beam elements with i+1 number of nodes and with any defined supports at any defined positions on the beam. I have done this before, however, my worksheet is very limited to a cantilever beam, divided into 3 beam elements. I know what the stiffness matrix of a beam element is, and what its mass matrix as well is. I know how to **manually** assemble the stiffness and mass matrices for up to 3 beam elements...though the assembled matrices get really large and cumbersome to handle, since I basically add in an "analog manner" the individual stiffness matrices of the beam elements. I know how to **manually** reduce the mass and stiffness matrices based on my boundary conditions. I know how to solve the eigenvalues of the characteristic equation (K-w²M)U=0 to get the natural frequencies. So what then is my problem?
-Well, my biggest problem is assembling the K and M matrices **automatically** for a beam divided into i elements, having i+1 nodes. So, if someone can help me with a short code that does this, I will be very grateful.
-Since I want to make the sheet as general as possible, it has to be considered that the beam elements may not have the same cross-sectional area, length or mass i.e the beam elements may have different mass and stiffness matrices but still have to be assembled together.
-Also, I will be grateful if someone can show me how to automatically delete the rows and columns of the assembled K and M matrices based on the boundary conditions at a specific node. In my *analog* worksheet, I basically copy the assembled matrices and manually delete the rows and columns corresponding to the fixed support node.
Now before everyone murders me that I am posting questions that have already been answered in other blog posts, I want to make it known that I have truly searched the community and internet in general but I haven't really found a satisfactory solution to the problem I have. As with most things, I do believe strongly that the problem can be easily solved with Mathcad, if one is very experienced, has a very good command of Mathcad and is a good programmer, all three things of which I am not :/ To proof that I have searched already, here are the links to the posts I have found related to my problem which I think still do not really answer my question very well:
-https://www.youtube.com/watch?v=J55VeMfLeWc&t=1719s (Here, the assembly is done using transformation matrices which have to be defined all the time depending on the problem situation...I would like to make Mathcad do this as automatic as possible)
Ready to further expound on the question if someone, kind enough to help needs further clarifications.
Solved! Go to Solution.
Enclosed is worth a look. Made a long time ago. It may take you some time to work through it.
Assembles global stiffness matrix.
For simplicity this one uses a constant cross section but you can change this easily. Uses different lengths.
For reactions don't delete the row and col just place a relatively very large number on the diagonal at the row col junction and you fix the deflection to a very small number close to zero.
Wow. Thanks very much for the quick reply and the uploaded file. I am currently going through it in order to fully understand it and how I can flexibly apply it in my cases. So far it looks really good but will give final feedback again here after I have gone through it. Once again, thanks a million
Does the steel cylinder have an internal diameter equal to either:
the outside of the cast iron shaft or
does it replace the shaft and have the same internal diameter.
Exactly what I needed. Your sheet works like magic. Perfect solution Things like this make me enjoy engineering and Mathcad even more
Many many many thanks.