- 0
- 0
- 约7.42千字
- 约 17页
- 2025-05-13 发布于广西
- 举报
程序框图:
S
Sub--lsc单元长及角度
Sub--elv单元定位向量
Sub--esm单刚矩阵
Sub--lsc单元长及角度
Sub--elv单元定位向量
Sub--eff单元固端力
Sub--lsc单元长及角度
Sub--elv单元定位向量
Sub--esm单刚矩阵
Sub--eff单元固端力
开始
调用input输入数据
tsm形成结构刚度矩阵
jlp形成结点荷载列阵
gauss解方程组
mvn计算和输出杆端力
结束
输出output数据文件
程序特点:
问题类型:可用于计算结构力学的平面刚架问题
单元类型:直接利用杆单元
载荷类型:节点载荷及非节点载荷,其中非节点载荷包括均布荷载和垂直于杆件的集中荷载
材料性质:所有杆单元几何性质相同,且由相同的均匀材料组成
方程求解:结构刚度矩阵采用满阵存放,Gauss消元过程采用《数值分析》中的列主元素消去法
输入文件:按先处理法的要求,由手工生成输入数据文件
1.主要变量:
ne:单元个数
nj:结点个数
n:自由度
e:弹性模量〔单位:KN/m2〕
a:杆截面积
zi:惯性矩
np:结点荷载个数
nf:非结点荷载个数
x(nj):存放结点的x轴坐标
y(nj):存放结点的y轴坐标
ij(ne,2):存放单元结点编号,其中ij(nj,1)存放起始结点编号,ij(nj,2)存放终止结点编号
jn(nj,3):存放结点位移编号,以组成单元定位数组
pj(np,3):存放结点荷载信息,其中pj(np,1)存放结点荷载作用结点号,pj(np,2)存放荷载方向代码(1—x方向;2—y方向;3—转角),pj(np,3)存放荷载大小
pf(ne,4):存放非结点荷载信息,其中pf(ne,1)存放荷载作用单元号,pf(ne,2)存放荷载代码(1—均布荷载,2—垂直集中荷载),pf(ne,3)存放荷载大小,pf(ne,4)荷载作用距离〔均布荷载,集中荷载均以单元起始结点为计算起始位置〕。
2.子例行子程序哑元信息:
第一局部:根本局部
I.subroutinelsc(LengthSinCos):
输入哑元:m(单元号),nj,ne,x,y,ij
输出哑元:bl(杆件长度),si(正弦值),co(余弦值)
II.subroutineelv(ElementLocationVector):
输入哑元:m,ne,nj,ij,jn
输出哑元:lv(单元定位数组)
III.subroutineesm(ElementStiffnessMatrix):
输入哑元:e,a,zi,bl,si,co
输出哑元:ek(整体坐标系下的单刚矩阵)
IV.subroutineeff(ElementFixed-endForces)
输入哑元:i,pf,nf,bl
输出哑元:fo(局部坐标系下单元固端力)
第二局部:主程序直接调用局部
I.subroutinetsm(TotalStiffnessMatrix计算总刚矩阵)
输入哑元:ne,nj,n,e,x,y,ij,a,zi,jn
输出哑元:tk
II.subroutinejlp(JointLoadVector计算结点荷载)
输入哑元:ne,nj,n,np,nf,x,y,ij,jn,pj,pf
输出哑元:p(结点荷载列矩阵)
III.subroutinegauss(带列主元素消去的高斯法)
输入(输出)哑元:tk,p,n;(注意,算出位移后,直接存储到结点荷载列矩阵)
IV.subroutinemvn(Member-endforcesofelements计算各单元的杆端力)
输入哑元:ne,nj,n,nf,e,x,y,ij,a,zi,jn,pf,p
3.文件管理:
源程序文件:pff.for
程序需读入的数据文件:input.txt
程序输出的数据文件:output
4.数据文件格式:
【输入文件格式】:
栏目
格式说明
实际需输入的数据
根本模型数据
第1行,每两个数之间用“,”号隔开
单元个数,结点个数,总自由度,弹性模量,杆截面积,惯性矩,结点荷载个数,非结点荷载个数
结点位置信息
第2行,每两个数之间用“,”号隔开
依次输入各结点的坐标〔x,y〕
单元结点信息
每输入一个单元换行〔回车〕,两个数之间用“,”号隔开
依次输入各单元的起点结点号和终点结点号
结点约束信息
每输入一个结点换行〔回车〕,两个数之间用“,”号隔开
按先处理法要求,输入各结点编号
结点荷载信息
每个结点荷载成一行,
原创力文档

文档评论(0)