First of all, I created a simple solid cubic structure with coarse mesh in ANSYS WB Modal modulus. With the boundary condition is set as 1 face fixed, the first 5 natural frequencies (fn) given by ANSYS are 572.06, 572.06, 802.83, 1350.8, 1637.8Hz. After that, I used the APDL Math command to export the matrices of stiffness and mass. The code is shown in the following:
! Stiffness
*SMAT,MatKD,D,IMPORT,FULL,file.full,STIFF
*PRINT,MatKD,Ksparse.matrix
! Mass
*SMAT,MatMD,D,IMPORT,FULL,file.full,MASS
*PRINT,MatMD,Msparse.matrix
I do realize that both exported matrices are symmetric. As I imported both [K] and [M] in Matlab and tried to calculate the corresponding fn, I got the following results: 561.8, 561.8, 801.1, 1341.8, 1638.7Hz.
The question is:
1. Why can't I get the same result compared to ANSYS?
2. The error gets more significant is I have finer mesh, which introduces more degree of freedom. For example, the first two calculated minimum fn are pure imaginary numbers. I wonder if it is caused by some sort of numerical error that built-in function "eigs" in MATLAB has trouble calculating large scale matrices?