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,

回答(2 个)

Precise Simulation
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.
  1 个评论
Asif Arshid
Asif Arshid 2017-10-25
Thanks for sharing this resource. I downloaded and installed FEATool but I am unable to view/print the stiffness matrix of (any) single brick element, which was my objective.

请先登录,再进行评论。


Precise Simulation
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.

类别

Help CenterFile Exchange 中查找有关 Particle & Nuclear Physics 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by