⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 constraints.m

📁 matlab实例
💻 M
字号:
%***********************************************************************
%  function constraints
%
%  apply rigid and prescribed constraints to global stiffness matrix
%***********************************************************************
function [kglobal,load_vector] = constraints(NodeConstraint, ndofs, ndofs_node, kglobal,load_vector)

% find constrained degree-of-freedom
constr_dof = (NodeConstraint.nodeID - 1)*ndofs_node + NodeConstraint.dof;

temp = kglobal(constr_dof,constr_dof);  % save diagonal term

for i = 1:ndofs                          % adjust for non-zero constraint
  load_vector(i) = load_vector(i) - kglobal(i,constr_dof) * NodeConstraint.value;
end

kglobal(:,constr_dof) = zeros(ndofs,1);  % zero stiffness column
kglobal(constr_dof,:) = zeros(1,ndofs);  % zero stiffness row

load_vector(constr_dof) = temp * NodeConstraint.value;
if temp == 0, temp = 1;, end            % prevent non-zero diagonal
kglobal(constr_dof,constr_dof) = temp;  % replace diagonal term

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -