Why can this linear system (Truss/global stiffness matrix, finding unknown reaction forces and displacements) be solved this way?

4 次查看(过去 30 天)
Overall System is F=K*u where K (symmetric, z by z, global stiffness matrix), F (z by 1, most elements(some of these are unknown)=0, external forces), u (z by 1, unknown elements=Inf, known elements=0, node displacements)
KK=K; %saves original K, stiffness matrix
cdof=u~=Inf; %so creates logical array for known(constrained degrees of freedom) positioning in u
F(cdof)=u(cdof); %makes corresponding F elements also 0 for some reason
K(cdof,:)=0;
K(:,cdof)=0; %zeros columns and rows corresponding to known displacements
K(cdof,cdof)=eye(sum(cdof)); %changes elements on diagonal that just got changed to 0's, 1's
u=K\F; %no clue why changed K array and F column returns u with unknowns solved
F=KK*u; % understandable why F can be found once u is found

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Structural Analysis 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by