How can I perform Finite Element Analysis in MATLAB useing ANSYS data?

9 views (last 30 days)
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?

Accepted Answer

Ayush
Ayush on 18 Apr 2024
Edited: Ayush on 18 Apr 2024
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!

More Answers (0)

Categories

Find more on Numerical Integration and Differential Equations in Help Center and File Exchange

Tags

Products


Release

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!