Did anyone developed a code/function to create Stiffness matrix of 8-Node Brick (Hexahedral) in Finite Element Analysis ?
9 次查看(过去 30 天)
显示 更早的评论
I am developing a model, which will use 8-nodded brick elements. I am looking for an already built code/function, which can create its stiffness matrix.
Thanks in advance,
0 个评论
回答(2 个)
Precise Simulation
2017-10-23
编辑:Precise Simulation
2024-11-14,3:33
Q1 hexahedral elements are available and pre-defined with the FEATool toolbox. Once installed, the following code assembles a bilinear diffusion matrix with 8 node brick elements on a 5x5x5 unit cube:
grid = blockgrid( 5, 5, 5 );
form = [2 3 4; 2 3 4]; % Bilinear form specification.
sfun = { 'sf_hex_Q1'; 'sf_hex_Q1' }; % Q1 elements.
coef = 1; % Bilinear form coefficient.
icub = 2; % Quadrature rule/order.
[vrowinds,vrowcols,vavals,n_rows,n_cols] = ...
assemblea( form, sfun, coef, icub, grid.p, grid.c, grid.a);
help assemblea % See help text.
A = sparse(vrowinds,vrowcols,vavals,n_rows,n_cols); % Create sparse matrix.
spy( A )
To see the element/basis function definition simply open the featool/ellib/sf_hex_Q1.m file in a text editor.
Precise Simulation
2017-10-26
For a single element you can just create a grid with one cell, for example using
grid = blockgrid(1);
in the example above.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Particle & Nuclear Physics 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!