结构矩阵分析与程序设计钢架vb代码.docx
- 文档编号:2424819
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:16
- 大小:17.45KB
结构矩阵分析与程序设计钢架vb代码.docx
《结构矩阵分析与程序设计钢架vb代码.docx》由会员分享,可在线阅读,更多相关《结构矩阵分析与程序设计钢架vb代码.docx(16页珍藏版)》请在冰豆网上搜索。
结构矩阵分析与程序设计钢架vb代码
'========================================
'StructuralAnalysisProgramForPlaneFrame
'========================================
OptionExplicit
PublicnnAsInteger,neAsInteger,ndAsInteger,ndfAsInteger
PublicnfAsInteger,npjAsInteger,npeAsInteger,nAsInteger
Publical(50)AsDouble,t(6,6)AsDouble,x(40)AsDouble,y(40)AsDouble
Publicjl(50)AsInteger,jr(50)AsInteger,ea(50)AsDouble,ei(50)AsDouble
Publicc(6,6)AsDouble,r(120,120)AsDouble,p(120)AsDouble,pe(120)AsDouble
Publicibd(20)AsInteger,ii(6)AsInteger,bd(20)AsDouble,ff(6)AsDouble
Publicmj(20)AsInteger,qj(20,3)AsDouble,f(6)AsDouble,dis(6)AsDouble
Publicmf(30)AsInteger,ind(30)AsDouble,aq(30)AsDouble,bq(30)AsDouble
Publicq1(30)AsDouble,q2(30)AsDouble
'===========
'mainprogram
'===========
Subframe()
Open"H:
\juzheng\钢架\tr3.2.11.txt"ForInputAs#1
Open"H:
\juzheng\钢架\tw3.2.11.txt"ForOutputAs#2
Callinput1
Callwstiff
Callload
Callbound
Callgauss
Callnqm
Close1
Close2
EndSub
'===============================
'SUB-1ReadAndPrintIntialData
'==============================
Subinput1()
DimintiAsInteger,intjAsInteger,iAsInteger,jAsInteger,kAsInteger
Dimdx,dyAsDouble
Print#2,"PlaneFramestructuralAnalysis"
Print#2,"*******************************"
Print#2,"inputdata"
Print#2,"====="
Print#2,
Print#2,"structuralcontroldata"
Print#2,"---------------------"
Print#2,"nn";Spc(3);"ne";Spc(3);"nf";Spc(3);"nd";Spc(3);"ndf";Spc
(2);"npj";Spc
(2);"npe";Spc(3);"n"
Input#1,nn,ne,nf,nd,ndf,npj,npe
n=3*(nn-nf)
Print#2,nn;Spc
(2);ne;Spc
(2);nf;Spc
(2);nd;Spc
(2);ndf;Spc
(2);npj;Spc
(2);npe;Spc
(2);n
Print#2,
Print#2,"Nodalcoordinates"
Print#2,"---------------------"
Print#2,"Node";Spc
(2);"x";Spc(5);"y"
i=nn
Forinti=1Toi
Input#1,inti,x(inti),y(inti)
Print#2,inti;Spc
(2);x(inti);Spc(3);y(inti)
Nextinti
Print#2,
Print#2,"ElementInformation"
Print#2,"---------------------"
Print#2,"Ele.No.";Spc(4);;"jl";Spc(4);"jr";Spc(6);"ea";Spc(6);"ei";Spc(6);"al"
i=ne
Forinti=1Toi
Input#1,inti,jl(inti),jr(inti),ea(inti),ei(inti)
Nextinti
Forinti=1Toi
Ifjl(inti)>=jr(inti)ThenStop
Nextinti
Forinti=1Toi
j=jl(inti)
k=jr(inti)
dx=x(k)-x(j)
dy=y(k)-y(j)
al(inti)=Sqr(dx*dx+dy*dy)
Print#2,Spc(3);inti;Spc(4);jl(inti);Spc(3);jr(inti);Spc
(2);ea(inti);Spc
(2);ei(inti);Spc
(2);al(inti)
Nextinti
Print#2,
k=npj
Ifk<>0Then
Print#2,"NodalLoad"
Print#2,"---------------------"
Print#2,"i";Spc(13);"mj";Spc(3);"xd";Spc
(2);"yd";Spc
(2);"md"
Forinti=1Tok
Input#1,inti,mj(inti),qj(inti,1),qj(inti,2),qj(inti,3)
Print#2,inti;Spc
(1),mj(inti);Spc
(1);qj(inti,1);Spc
(1);qj(inti,2);Spc
(1);qj(inti,3)
Nextinti
EndIf
Print#2,
i=npe
Ifi<>0Then
Print#2,"Elementloads"
Print#2,"---------------------"
Print#2,"i";Spc(5);"mf";Spc(3);"ind";Spc(3);"aq";Spc(3);"bq";Spc(3);"q1";Spc(4);"q2"
Forinti=1Toi
Input#1,inti,mf(inti),ind(inti),aq(inti),bq(inti),q1(inti),q2(inti)
Print#2,inti;Spc
(2);mf(inti);Spc(3);ind(inti);Spc
(2);aq(inti);Spc
(2);bq(inti);Spc
(2);q1(inti);Spc(3);q2(inti)
Nextinti
EndIf
Print#2,
j=ndf
Ifj<>0Then
Print#2,"Bonundaryconditions"
Print#2,"---------------------"
Print#2,"i";Spc(5);"ibd";Spc(3);"bd"
Forinti=1Toj
Input#1,inti,ibd(inti),bd(inti)
Print#2,inti;Spc(3);ibd(inti);Spc(3);bd(inti)
Nextinti
EndIf
EndSub
'========================================================
'sub-2AssemnbleStructuralStiffnessMatrix{R}
'========================================================
Subwstiff()
DimiAsInteger,jAsInteger,ieAsInteger,k1AsInteger,k2AsInteger
Fori=1Ton
Forj=1Ton
r(i,j)=0
Nextj
Nexti
ie=1
DoWhileie<=ne
Callstiff(ie)
Calllocat(ie)
Fork1=1To6
i=ii(k1)
Ifi<=nThen
Fork2=k1To6
j=ii(k2)
Ifj<=nThen
r(i,j)=r(i,j)+c(k1,k2)
EndIf
Nextk2
EndIf
Nextk1
ie=ie+1
Loop
Fori=2Ton
Forj=1To(i-1)
r(i,j)=r(j,i)
Nextj
Nexti
EndSub
'========================================================
'sub-3setupStiffnessMatrix[c]
'========================================================
Substiff(ie)
DimiAsInteger,jAsInteger
DimcxAsDouble,cyAsDouble,b1AsDouble,b2AsDouble,b3AsDouble,b4AsDouble
Dims1AsDouble,s2AsDouble,s3AsDouble,s4AsDouble,s5AsDouble,s6AsDouble
i=jl(ie)
j=jr(ie)
cx=(x(j)-x(i))/al(ie)
cy=(y(j)-y(i))/al(ie)
b1=ea(ie)/al(ie)
b2=12#*ei(ie)/al(ie)^3
b3=6#*ei(ie)/al(ie)^2
b4=2#*ei(ie)/al(ie)
s1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 结构 矩阵 分析 程序设计 钢架 vb 代码