空间刚架matlab_基本平面刚架程序matlab.doc

% 平面刚架MATLAB程序

% 语言:MATLAB 2003.9.16 2008.4.1 2009.10.10

%*************************************************

% 变量说明

% NPOIN NELEM NVFIX NFPOIN NFPRES

% 总结点数,单元数,约束数, 力结点数,非结点力数

% COORD LNODS YOUNG

% 结构节点坐标数组, 单元定义数组,弹性模量

% FPOIN FPRES FORCE FIXED

% 结点力数组,非结点力数组,总体荷载向量, 约束信息数组

% HK DISP

% 总体刚度矩阵,结点位移向量

%**************************************************

format short e %设定输出类型

clearFP1=fopen('6-6.txt','rt') %打开数据文件

%

NELEM=fscanf(FP1,'%d',1); %单元数NPOIN=fscanf(FP1,'%d',1); %结点数NVFIX=fscanf(FP1,'%d',1); %约束数NFPOIN=fscanf(FP1,'%d',1); %结点荷载数NFPRES=fscanf(FP1,'%d',1); %非结点荷载数YOUNG=fscanf(FP1,'%f',1); %弹性模量

% 读取结构信息

LNODS=fscanf(FP1,'%f',[4,NELEM])'

% 单元定义: 左、右结点号,面积,惯性矩(共计 NELEM组)

COORD=fscanf(FP1,'%f',[2,NPOIN])'

% 坐标: x,y坐标(共计 NPOIN 组)

FPOIN=fscanf(FP1,'%f',[4,NFPOIN])'

% 节点力(共计 NFPOIN 组):结点号、X方向力(向右正),

% Y方向力(向上正),M力偶(逆时针正)

FPRES=fscanf(FP1,'%f',[4,NFPRES])' % 均布力(共计

% NFPRES 组):单元号、荷载类型、荷载大小、距离左端长度

FIXED=fscanf(FP1,'%f',NVFIX)'

% 约束信息:约束对应的位移编码(共计 NVFIX 组)

%---------------------------------------------------------HK=zeros(3*NPOIN,3*NPOIN); % 张成总刚矩阵并清零

FORCE=zeros(3*NPOIN,1); % 张成总荷载向量并清零

%总刚

for i=1:NELEM % 对单元个数循环

% 生成局部单刚(局部坐标) 右手坐标系

EK=ele_EK(i,LNODS,COORD,YOUNG);

T=zbzh(i,LNODS,COORD); % 坐标转换矩阵

EKT=T’*EK*T% 生成整体单刚(整体坐标系)

% 组成总刚 按3*3子块加入总刚中(共计4块)

for j=1:2 %对行进行循环---按结点号循环

N1=LNODS(i,j)*3; % j结点第3个位移的整体编码

for k=1:2 %对列进行循环---按结点号循环

N2=LNODS(i,k)*3; % k结点第3个位移的整体编码

HK((N1-2):N1,(N2-2):N2)=HK((N1-2):N1,(N2-2):N2)...

+EKT(j*3-2:j*3,k*3-2:k*3);

end

end

end

% 由结点力与非结点力生成总荷载向量列阵

for i=1:NFPOIN % 对结点荷载个数进行循环

N1=FPOIN(i,1); % 作用荷载的结点号

N1=N1*3-3; % 该结点号对应第一个位移编码 - 1

for j=1:3

FORCE(N1+j)=FORCE(N1+j)+FPOIN(i,j+1);%取结点荷载

end

end

% 计算由非结点荷载引起的等效结点荷载

for i=1:NFPRES % 对非结点荷载个数进行循环

F0=ele_FPRES(i,FPRES,LNODS,COORD); %计算单元固端力

% 对

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值