File Exchange

image thumbnail

Fast Global Stiffness Matrix Assembly

version 1.0.1 (1.21 KB) by Ayad Al-Rumaithi
Generates global stiffness matrix from elements stiffness matrices in a fast way

20 Downloads

Updated 04 Apr 2020

View License

function K=Fast_Matrix_Assembly(Elements)

Input:
---------
Elements: a structure contains Elements{i}.K and Elements{i}.DOFs (Stiffness and Degrees of freedoms of the ith element).

output:
---------
K: Sparse global stiffness matrix

References
-----------------
Cuvelier, François, Caroline Japhet, and Gilles Scarella. "An efficient way to perform the assembly of finite element matrices in Matlab and Octave." arXiv preprint arXiv:1305.3122 (2013).

Cite As

Ayad Al-Rumaithi (2020). Fast Global Stiffness Matrix Assembly (https://www.mathworks.com/matlabcentral/fileexchange/70447-fast-global-stiffness-matrix-assembly), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (7)

Dear Anilcan Taner,
Elements{i}.K should be the stiffness matrix of ith element .Elements{i}.DOFs degrees of freedom vector of the ith element.
in your example it could be:
Elements{1}.K=KK{1};
Elements{1}.DOFs=[5 1 6];
Elements{2}.K=KK{2};
Elements{2}.DOFs=[6 1 2];
.....
K=Fast_Matrix_Assembly(Elements)

I am having problem with inputs for example;

i have 3x3 matrices named as KK{i} which i=1:9

but I am a bit lost with putting it to the code

Are you able to give an example of an input? I am trying to run this for a 3D frame model. Thanks in advance

Yes. It can be used with any type of elements

can this be used for 3-D elements?

Thank you

Very useful. Very fast

Updates

1.0.1

fixed bug when using elements with different degree of freedoms

MATLAB Release Compatibility
Created with R2017b
Compatible with any release
Platform Compatibility
Windows macOS Linux