How can I perform Finite Element Analysis in MATLAB useing ANSYS data?
조회 수: 9 (최근 30일)
이전 댓글 표시
Hi,
I'm trying to perform finite element analysis on a cantilever beam under a sinusoidal load using MATLAB.
I first used ANSYS for transient analysis to obtain data (Mass, Stiffness matrix, deformation, acceleration of each node/No damping) for a duration from 0 to 1 second with a time step of 0.02 seconds. Then, using the equation f = mx'' + kx, I calculated the force matrix in reverse. After that, I interpolated the discretized forces from 0 to 1 second and used ode45 to recalculate the deformation and acceleration of each node. (The sizes of the mass and stiffness matrix are 2800x2800, and the acceleration and deformation are represented as 2800x1 matrix). However, the values I obtained are too big.(almost 10^100)
Is this approach correct? If not, how can I use data obtained from ANSYS to perform FEA in MATLAB?
댓글 수: 0
채택된 답변
Ayush
2024년 4월 18일
편집: Ayush
2024년 4월 18일
Hi daeho,
Based on the description of your approach used to perform finite element analysis from the ANSYS data seems logical. Nonetheless, the issue with numerical instability and unrealistic results can be factored with some workaround and improvements:
1. You can ensure that the initial condition on which the ANSYS data was captured remains consistent with “ode45”. Along with condition, unit consistency can also be looked at since those increase the numeric values by factors of 10 as in this case.
2. A physical system with large sized matrices (2800 X 2800) has the possibility to become a stiff system for which “ode45” is not the most suited. MATLAB recommends “ode15s” for such cases. Additionally, there was a fixed step of 0.02 seconds while “ode45” has an adaptive size of step that might lead to discrepancies. Please refer to the below documentation to know more about the different types of solver and their applications:
3. The reverse calculation of forces with the equation mentioned f=mx’’ +kx should be applied appropriately especially, x’’ for acceleration and x for deformation, since any mistake in these can change the factors/scale of the results.
Hope this helps!
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Numerical Integration and Differential Equations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!