How to assemble matrices?
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am trying to assemble local stiffness matrix to global one. Each node has 3Dof. The problem is I dont know how to shift the matrices at last part while adding process. Thanks everyone. The code is
clc;clear all
el_tot=3; %number of elements
n_tot=3*(el_tot+1); %number of nodes
% LOCAL - TO - GLOBAL MAPPING
EL_N = [1:3:n_tot-3; 6:3:n_tot];
% INITIALIZE GLOBAL STIFFNESS MATRIX AND GLOBAL FORCE VECTOR
K = zeros(n_tot); % 2nd same size superfluous , n_tot ); --dpb edit
shift=0;
% ELEMENT LOOP
for iel = 1: el_tot
% GET NODE INDICES FOR ELEMENT iel
el_nodes = EL_N :,iel);
% DEFINE ELEMENT STIFFNESS MATRIX AND VECTOR
Kloc =ones(6,6);
% INSERT / SUM LOCAL ELEMENT STIFFNESS MATRICES
% INTO GLOBAL STIFFNESS MATRIX
K(el_nodes,el_nodes) = K(el_nodes,el_nodes) + Kloc ;
end*
0 commentaires
Réponse acceptée
KSSV
le 13 Oct 2016
It is a FEM problem. You cannot expect a FEM solution in MATLAB community. You have to assemble stiffness matrices based on your nodal connectivity. YOu may refer the below link to understand how to assemble the local stiffness matrix to global matrix.
You can extend the analogy to your 3D.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!