六跨连续梁内力计算程序程序

合集下载

连续梁内力计算程序设计报告书

连续梁内力计算程序设计报告书

连续梁内力计算程序设计报告书院系:土木工程班级:1233116班姓名:侯新明学号:1123310627一、程序功能1.计算多种荷载作用下连续梁指定截面的弯矩和剪力。

2.计算指定截面的弯矩影响线。

3.计算指定截面的剪力影响线。

4.计算指定支座的反力影响线。

二、使用说明首先在程序所在文件夹建立初始数据文件,文本格式,文件名任意(如data1),随后按照以下顺序输入数据第1组数据----基本参数共五个数据,依次为单元个数,支承类型编号,结点荷载个数,非结点荷载个数,弹性模量。

对支承类型编号作如下规定:梁两侧若是铰支,支承类型编号为1;左端固定端,右侧铰支编号为2;左侧铰支,右侧固定编号为3,两端均为固定编号为4。

弹性模量的数值任意,因为内力与刚度大小无关,仅与各杆刚度比值有关。

第2组数据----单元数据每个单元由两个数据描述,单元长度和截面惯性矩。

以从左到右次序建立各单元数据,n个单元有2n个数据。

第3组数据----结点荷载数据每个结点荷载两个数据描述,荷载大小(逆时针为正)和荷载作用的结点号。

m个结点荷载,有2m个数据。

若无结点荷载,此组数据无需建立。

第4组数据----非结点荷载数据每个非结点荷载用四个数据描述,荷载大小(方向向下为正),荷载在单元上的位置,荷载所在的单元编号,荷载类型。

共有四种荷载类型,集中力、均布力、集中力偶和三角形分布力。

均布力编号为1,均布力是从单元左端开始,结束位置为荷载位置。

集中力类型编号为2,荷载位置指荷载作用点到单元左端的距离。

集中力偶编号为3,荷载位置指荷载作用点到单元左端的距离。

三角形分布力编号为4若无非结点荷载此组数据无需建立。

注意:以上数据均无单位,故所有数据的单位要统一,如长度用m,力用kN,力矩用kN.m,截面惯性矩用m4。

结果则为kN.m。

然后运行“连续梁内力计算程序.exe”,输入初始文件名称,根据说明按数字键后回车进行指定类型计算运行结果输出在“连续梁内力计算结果.txt”中,“ZB.TXT”表示已连续梁为横轴,坐断为起点的横坐标。

连续梁计算

连续梁计算

连续梁计算一、几何数据及计算参数构件编号: LL-1混凝土: C25 主筋: HRB335 箍筋: HPB235保护层厚度as(mm): 25.00 指定主筋强度:无跨中弯矩调整系数: 1.00 支座弯矩调整系数: 1.00(说明:弯矩调整系数只影响配筋)自动计算梁自重:是恒载系数: 1.20 活载系数: 1.40二、荷载数据荷载工况1 (恒载):三、内力及配筋1. 弯矩图2. 剪力图3. 截面内力及配筋0支座: 正弯矩 0.00 kN*m,负弯矩 0.00 kN*m,剪力 0.00 kN,上钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2下钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm21跨中: 正弯矩 0.00 kN*m,负弯矩 15.48 kN*m,剪力-70.03 kN,挠度1.13mm(↓),位置:左端裂缝 0.00mm上钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2下钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2箍筋: d6@180, 实际面积: 314.16 mm2/m, 计算面积: 283.33 mm2/m 1支座: 正弯矩 0.00 kN*m, 位置: 0.00m负弯矩 35.02 kN*m, 位置: 0.00m剪力左 -70.03 kN, 位置: 1.00m剪力右 211.09 kN, 位置: 0.00m上钢筋: 3D12, 实际面积: 339.29 mm2, 计算面积: 300.00 mm2下钢筋: 3D12, 实际面积: 339.29 mm2, 计算面积: 300.00 mm22跨中: 正弯矩 272.01 kN*m, 位置: 2.91m负弯矩 0.00 kN*m, 位置: 0.00m剪力-333.13 kN, 位置: 7.50m挠度6.65mm(↓),位置:跨中裂缝 0.31mm上钢筋: 4D14, 实际面积: 615.75 mm2, 计算面积: 567.04 mm2下钢筋: 5D22, 实际面积: 1900.66 mm2, 计算面积: 1890.13 mm2箍筋: d6@30, 实际面积: 1884.96 mm2/m, 计算面积: 1452.83 mm2/m 2支座: 正弯矩 0.00 kN*m,负弯矩 492.70 kN*m,剪力左 -333.13 kN,剪力右 333.13 kN,上钢筋: 3D40, 实际面积: 3769.91 mm2, 计算面积: 3727.31 mm2下钢筋: 5D18, 实际面积: 1272.35 mm2, 计算面积: 1118.19 mm23跨中: 正弯矩 272.01 kN*m,负弯矩 0.00 kN*m,剪力333.13 kN,挠度6.65mm(↓),位置:跨中裂缝 0.31mm上钢筋: 4D14, 实际面积: 615.75 mm2, 计算面积: 567.04 mm2下钢筋: 5D22, 实际面积: 1900.66 mm2, 计算面积: 1890.13 mm2箍筋: d6@30, 实际面积: 1884.96 mm2/m, 计算面积: 1452.83 mm2/m 3支座: 正弯矩 0.00 kN*m, 位置: 0.00m负弯矩 35.02 kN*m, 位置: 0.00m剪力左 -211.09 kN, 位置: 7.50m剪力右 70.03 kN, 位置: 0.00m上钢筋: 2D18, 实际面积: 508.94 mm2, 计算面积: 463.89 mm2下钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm24跨中: 正弯矩 0.00 kN*m, 位置: 0.00m负弯矩 15.56 kN*m, 位置: 0.33m剪力70.03 kN, 位置: 0.00m挠度1.12mm(↓),位置:右端裂缝 0.00mm上钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2下钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2箍筋: d6@180, 实际面积: 314.16 mm2/m, 计算面积: 283.33 mm2/m 4支座: 正弯矩 0.00 kN*m,负弯矩 0.00 kN*m,剪力 0.00 kN,上钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2下钢筋: 2D12, 实际面积: 226.19 mm2, 计算面积: 150.00 mm2。

2020水运工程结构CAD集成软件易工 V3.0用户手册

2020水运工程结构CAD集成软件易工 V3.0用户手册
工具箱
船舶系缆力、船舶挤靠力、船舶靠岸撞击力、船舶靠岸撞击力(英国标准)、系泊船舶横浪作用下撞击力
任意断面上波浪力、单桩上波浪力、波浪力上托力、波浪下砸力
Autodesk Robot、ANYSY输出
可以将结构模型输入到Autodesk Robot程序中转化为Autodesk Robot计算文件,也直接生成AYSYS命令流文件,可以直接比对或校验本系统计算结果
《水运工程混凝土施工规范》(JTS 202-2011)
《水运工程地基规范》(JTS147-2017)
三、基本功能模块介绍
3.1 高桩板梁式码头CAD软件
软件主要依据《码头结构设计软件》JTS167-2018中3、4、5章节及其他配套规范编制的,是针对高桩板梁式结构分析的专用结构设计软件。它包括荷载计算、结构内力计算、结构配筋计算,此外该系统提供直观的3D视图方式,显示码头实体模型、荷载、作用效应等,并且为用户提供完整的WORD格式报告书,提供AutodeskRobot计算模型输出便于用户校核计算结构正确性。
1、顶面水平式;2、顶面斜坡式
3
桩入土段模型
1、假想嵌固点法;2、M法
4
桩截面及桩基类型
截面形式(实心圆桩、空心圆桩、实心方桩、空心方桩、钢管混凝土混合桩);桩基形式(等截面、变截面)
5
包含荷载
自重
自动计算结构自重
浮力
自动计算浮力
均载
自动计算不利效应
轨道荷载
包含规范上各种轨道类型机械荷载数据库
波浪力
图 3.6-1
图 3.1-1
排架计算部分
编号
模块
内容
1
结构类型
1、现浇横梁式结构;2、桩帽节点式结构

多跨连续梁课程设计

多跨连续梁课程设计

多跨连续梁课程设计一、课程目标知识目标:1. 学生能理解多跨连续梁的基本结构特点,掌握其受力分析原理。

2. 学生能掌握多跨连续梁的内力计算方法,包括弯矩、剪力和轴力的计算。

3. 学生能了解多跨连续梁在不同工况下的荷载组合及设计原则。

技能目标:1. 学生能够运用所学知识,对实际工程中的多跨连续梁进行受力分析和内力计算。

2. 学生能够根据计算结果,提出合理的设计方案,并运用相关软件进行模拟分析。

3. 学生能够通过团队合作,解决多跨连续梁设计中的实际问题。

情感态度价值观目标:1. 培养学生对结构工程的兴趣,激发他们热爱科学、探索未知的热情。

2. 培养学生的创新意识和实践能力,使他们具备解决实际问题的信心和勇气。

3. 培养学生的团队协作精神,提高沟通与交流能力,使他们能够在工作中与他人合作,共同完成任务。

本课程针对高年级土木工程专业学生,结合课程性质、学生特点和教学要求,将目标分解为具体的学习成果。

通过本课程的学习,学生将能够掌握多跨连续梁的相关知识,具备实际工程设计能力,并在情感态度价值观方面得到全面提升。

为确保教学效果,课程设计将注重理论与实践相结合,充分调动学生的主动性和积极性。

二、教学内容1. 多跨连续梁结构概述- 结构特点及分类- 工程应用案例介绍2. 多跨连续梁受力分析- 弯矩、剪力、轴力的产生及计算方法- 支座反力的计算与分配- 应力分布与变形特点3. 多跨连续梁内力计算- 弯矩分配法- 超静定结构影响线法- 计算机辅助分析软件应用4. 多跨连续梁设计原则与方法- 荷载组合与设计准则- 材料选择与截面设计- 抗震设计要求5. 实践教学环节- 实际工程案例分析与讨论- 团队合作设计多跨连续梁- 设计计算书及图纸绘制教学内容根据课程目标,结合教材相关章节,进行科学、系统地组织。

教学大纲明确各部分内容的安排和进度,确保学生在掌握理论知识的基础上,能够应用到实际工程设计中。

通过本章节的学习,学生将全面了解多跨连续梁的结构特点、受力分析、内力计算和设计方法,为今后从事相关领域工作奠定基础。

任务三十一多跨连续梁的内力包络图

任务三十一多跨连续梁的内力包络图


R左/a=280/6<(Pk+R右)/b=560/6 (Pk+R左)/a= 560/6>R右/b=280/6

三、影响线的应用
2.


确定荷载最不利位置
由计算结果可见,P2是临界荷载。
(3) 计算MCmax P1、P2、P3作用点处所对应的MC影响线上的竖标见图31.9(c)。


MCmax=P1y1+P2y2+P3y3 =280×(0.6+3+2.28)kN· m =1646.4 kN· m
二、单跨静定梁的影响线


RA影响线:
仍取A点为原点,P=1至A的距离为变量x。根据力矩平衡条件 ∑MB=0,有


RAl-(l-x)=0
RA=(l-x)/l 由 x=0时,RA=1 x=l时,RA=0 可以绘出RA的影响线如图31.1(c)所示。
二、单跨静定梁的影响线



二、单跨静定梁的影响线


当x=0时,RB=0
当x=l时,RB=1 RB的影响线如图31.1(b)所示。

由RB影响线的绘制过程可知,作影响线的一般步骤是:
① 选择坐标系,定坐标原点,并用变量x标记单位移动荷载P=1 的作用位置; ② 利用静力平衡条件确定所求量值影响线的方程,并注明变量x
取值范围; ③ 根据影响线方程绘出影响线。

四、简支梁的内力包络图和绝对最大弯矩
2.

简支梁的绝对最大弯矩
P1、P2、P3、P4作用点处所对应的MC影响线上的竖标见图
31.13(b)。

MCmax=P1y1+P2y2+P3y3+P4y4=574kN· m

不等跨等截面连续梁内力计算

不等跨等截面连续梁内力计算

2跨等截面连续梁计算
B1= 300.8526 A2= 441.4234 N1= 4453.656
续梁计算
31.12421
B1=
0
Mb=
0
B1=
0
Mb=
0
23.34316
A2=
0
Mc=
0
A2=
0
Mc=
0
23.34316
B2=
0
Md=
0
B2=
0
Md=
0
31.12421
A3=
0
Me=
0
A3=
0
Me=
0
B3=
0
N4=
0
恒载标准值Pg1=
恒载标准值Pg2=
恒载标准值Pg3=
恒载标准值Pg4=
活载标准值Pq1=
活载标准值Pq2=
活载标准值Pq3=
活载标准值Pq4= 活载不利布置
支座弯矩调整系 数a=
跨度L1= 跨度L2= 跨度L3= 跨度L4=
a1= a2= a3=
71.4
71.4
71.4
71.4
330
330
B3= 2037.42
B3=
A4= 2037.42
A4=
0
A4=
N1= 12224.52
N1= 12224.52
N1=
N2= 12224.52
N2= 12224.52
N2=
N3= 24449.04
N3= 12224.52
N3=
0
B1=
0
Mb=
0
B1=
0
Mb=
0
0
A2=0Mc=来自0A2=0

多跨连续梁计算程序

多跨连续梁计算程序

多跨连续梁计算程序V2.0用户使用手册上海易工工程技术服务有限公司目 次一、功能简介 (3)1.1 基本功能 (3)1.2 运行环境 (3)1.3 计算依据 (3)1.4 参数输入约定 (3)1.4.1 坐标系约定 (3)1.4.2 作用效应值的正负号约定 (3)1.4.3 参数采用的量纲 (3)1.5 计算原理 (3)1.5.1 内力计算 (3)1.5.2 效应组合 (4)1.5.3 配筋计算 (4)二、程序说明 (5)2.1 程序功能 (5)2.2 程序界面 (5)三、参数输入 (6)3.1基本参数输入 (6)3.2 地基系数 (6)3.3 截面参数 (6)3.4 连续梁参数 (8)3.5 节点支撑、连接方式 (9)3.6 荷载定义 (10)3.7 荷载输入 (11)3.8 组合参数输入 (13)四、结果查询、显示和输出 (15)4.1 计算结果查询 (15)4.2 计算结果图形显示 (15)4.3 计算结果报告书输出 (15)五、计算算例 (17)5.1、算例1刚性支座 (17)5.2 算例2弹性支座 (21)5.3 算例3弹性地基梁 (23)六、附录 (27)6.1 分项系数设置 (27)6.2 材料设置 (27)6.3 支撑方式设置 (27)6.4 背景颜色设置 (28)一、功能简介1.1 基本功能多跨连续梁计算系统是依据港口工程最新技术规范开发的工程辅助设计软件,该系统考虑多种支撑方式(弹性支撑、刚性支撑、自定义支撑)、多种单元模式(普通梁单元、弹性地基梁单元)、多种连接方式(节点铰接、节点固结)、多种荷载(集中力、均布力、滚动力),并且考虑叠合构件问题,此外该系统提供直观的3D视图方式显示连续梁实体模型、荷载、作用效应等,并且为用户提供完整的WORD格式报告书。

1.2 运行环境项 目最 低推 荐处理器Pentium II 350Pentium III450内 存128MB256MB可用硬盘50MB100MB显示分辨率800*6001024*768打印机Windows支持的图形打印机激光打印机操作系统Windows 98Windows 2000/xp1.3 计算依据使用规范《港口工程荷载规范》 (JTS 144-1-2010)《港口工程混凝土结构设计规范》(JTJ 267)1.4 参数输入约定1.4.1 坐标系约定X方向为沿连续梁方向,X零点为连续梁左侧。

连续梁桥—内力计算

连续梁桥—内力计算

5.根据规范构造、施工要求,将估算的预 应力筋进行横、立、平面布置; 6.根据钢筋布置结果,考虑钢筋对主梁截 面几何特性的影响,重新模拟施工过程,进行 主梁真实作用效应计算,再次进行相应作用效
应组合即第二次效应组合;
7.据第二次效应组合值,进行规定状况下
极限状态的截面强度、应力、裂缝、变形等验
算;
5.例
有一联 30+45+30m 的预应力砼变截面连续梁桥,
按一次落架施工法,单元离散图如下:
(三)简支转连续施工
先架设预制主梁形成简支梁,再主梁在 墩顶连成整体形成连续梁体系。以4跨连续梁 桥为例,施工过程如下:
1.阶段1:架设主梁
2.阶段2:边跨合龙
3.阶段3:中跨合龙
4.阶段4:体系转换
1. 在桥梁一端搭设的台座上逐段预制、
逐段向桥另一端推进。结构体系经历悬臂梁、
简支梁、双跨连续梁、多跨连续梁直到成桥 连续梁体系。 2. 在顶推过程中,结构体系、梁体内力 不断发生变化,施工过程中的主梁各截面自 重内力比使用状态下自重内力更不利。
3. 主梁配筋由施工过程内力包络图和使
用阶段内力包络图共同决定。
(二)满堂支架施工
1.适用:桥墩不高、桥下地面适宜搭设支架中
小跨径连续梁桥。
2.该施工法无体系转换,一期、期恒载都按一
次落架方式作用在连续梁上,叠加两个施工阶段的
内力即为结构重力作用的内力;
3.结构自重内力可用力法、位移法、影响线法、 有限单元法计算; 4.采用有限单元法时,将各单元自重简化为均 布荷载,横隔板简化为集中力作用在横隔板中心线
主要步骤如下: 1.细化结构尺寸、确定材料类型; 2.模拟实际施工阶段,计算相关作用内力 3.将各作用内力进行持久状况承载能力和 正常使用极限状态效应组合即第一次效应组合

连续梁结构内力和线形的变化分析

连续梁结构内力和线形的变化分析

拱 度的设置 也正是 因为这个变化而显得 比较复杂 , 以清晰的分析这种 变化规律对连续梁 的设计 和施工都显得 所 尤其重 要。本文 以某 工程为背景 , 建立 一座虚拟的连续梁结 构 , 利用 A ss ny 软件 , 全面 分析 了连续 梁结构在施工
过程 中的 内力和线形 的变化规律 , 并且在该分析的基础上 , 提出了预拱度设 置的思路和具体 的计算方法 。
自 重按均布荷载考虑 : = 0 k / q 10 N M; 截面: A=1 (I)X1 I) 弹 性模 量 : 2 l (l ; 1 1 E=
21 0 0k 0 0 N/M
跨 中墩 顶 临 时 锚 固 支 座 纵 向 间 距 : d=0 5 .m
( 图 1 见 )

Hale Waihona Puke /,tJ  ̄ b

施工机械的影响。 计算模型没有考虑引发结构非
1 ・ 4
维普资讯
20 年第 2 08 期
杨建亚
连续梁结构 内力和线形 的变化分析

— —
总第 10 3 期
工况1安 装初 始粱 段
工 况2 吊 装 2 梁 . 号
M 十 ,、
1 q, 十M
工 况3连 接2 . 号梁
工况4 吊装3 号桨

工况5连 接3 . 号
工 况 6边 跨 合 拢 .
工 况7改换 支座
工 况8 吊装 中跨 。

M、
工 况9. 合 拢 中跨
1 2 3 4 5 6 7
图 2 连续梁施工过程计算 工况划分图

形。
2 2 边 跨梁 体合 拢 阶段后 内力和 线形 .

连续梁桥计算

连续梁桥计算
n
M0
M1
M2
M3
M4
M5
M6
M7
M8
M9
M10
1
0
-1
2
0
0.250000
-1
3
0
-0.066667
0.266667
-1
4
0
0.017857
-0.071429
0.267857
-1
5
0
-0.004785
0.019139
-0.071771
0.267943
-1
6
0
0.001282
-0.005128
0.019231
阶段图式1在主墩上悬臂浇注砼2边跨合龙3中跨合龙4拆除合龙段挂篮5上二期恒载图11采用悬臂浇筑法施工时连续梁自重内力计算图式四阶段4拆除合龙段的挂篮此时全桥已经形成整体结构超静定结构拆除合龙段挂篮后原先由挂篮承担的合龙段自重转而作用于整体结构上
第一章 混凝土悬臂体系和连续体系梁桥的计算
第一节 结构恒载内力计算
阶段
图 式
1
在主墩上悬臂浇注砼
2
边跨合龙
3
中跨合龙
4
拆除合龙段挂篮
5





图1-1采用悬臂浇筑法施工时连续梁自重内力计算图式
(四)阶段4 拆除合龙段的挂篮
此时全桥已经形成整体结构(超静定结构),拆除合龙段挂篮后,原先由挂篮承担的合龙段自重转而作用于整体结构上。
(五)阶段5 上二期恒载
在桥面均布二期恒载 的作用下,可得到三跨连续梁桥的相应弯矩图。
顶推连续梁的内力呈动态型的,其内力值与主梁和导梁二者的自重比,跨长比和刚度比等因素有关,很难用某个公式来确定图1-2b中最大正弯矩截面的所在位置,因此,只能借助有限元计算程序和通过试算来确定。但在初步设计中,可以近似地按图1-4的三跨连续梁计算图式估算。其理由是距顶推连续梁端部0.4 截面处的正弯矩影响线面积之和相对最大,虽然在导梁的覆盖区也有负弯矩影响线面积,但导梁自重轻,故影响较小。

不等跨等截面连续梁内力计算

不等跨等截面连续梁内力计算

B3= 0
B3= 3674.16
A4= 6708.24
A4=
0
N1= 62294.4
N1= 22044.96
N2= 22045
N2= 44089.92
N3= 40249.4
N3= 22044.96
Mb= 2407.132 Mc= 837.6338 Md= 2407.132
连续梁计算
198.9765 1206.5355 1206.5355
Mb= 1689.119 Mc= 53.59437 Md= 2607.659
B1= 6708.24
A2=
0
B2=
0
A3= 3674.16
B3= 3674.16
A4=
0
N1= 40249.44
N2= 22044.96
N3= 22044.96
Mb= 1582.826 Mc= 418.8169 Md= 824.3062
B1= A2= B2= A3= B3= A4= B4= A5= N1= N2= N3= N4=
4跨等截面连续梁计算
(KN) (KN)
活载不利布置 支座弯矩调整系数
a= 跨度L1= 跨度L2= 跨度L3= 跨度L4=
k1= k2= k3= k4= k5= k6= a1= a2= a3= a4= a5= a6= 跨中弯矩M1= 支座负弯矩Mb= 跨中弯矩M2= 支座负弯矩Mc= 跨中弯矩M3= 支座负弯矩Md= 跨中弯矩M4=
B1= 7640.94
Mb= 2611.4
B1=
0
Mb=
Mc= 1617.681
A2= 7640.94
Mc= 470.05
A2= 7640.942

第三章 连续梁桥内力次内力计算

第三章 连续梁桥内力次内力计算

• 实体截面:用于小跨度的桥梁(现浇)
• 空心板截面:常用于1530m的连续梁桥 (现浇)
• 肋式截面:常用跨度在1530m范围内, 常采用预制架设施工,并在梁段安装完 成之后,经体系转换形成连续梁。鱼腹 式
• 特点:构造简单,施工方便,适用于中、 小跨度的连续梁桥。
9
第三章 连续梁桥 第一节 概述
7
第三章 连续梁桥 第一节 概述
混凝土连续梁桥概述-布置
(2)梁高的选择
等高度连续梁
变高度连续梁
等截面连续梁
VS
变截面连续梁
➢梁高不变。具有构造、制造和施 工简便的特点。适用于中等跨度 (4060m左右)的、较长的桥梁。 可按等跨或不等跨布置。长桥多采
用等跨布置,以简化构造,统一模
式,便于施工。
➢更能适应结构的内力分布规律。受 力状态与其施工时的内力状态基本吻 合。梁高变化规律可以是斜(直)线、 圆弧线或二次抛物线。箱型截面的底 板、腹板和顶板可作成变厚度,以适 应梁内各截面的不同受力要求。
箱内外,配以横隔板、转向块等构
特点-减小截
造,对梁体施加预应力。
面尺寸;提高混
凝土浇筑质量;
无须预留孔道,
减少孔道压浆等
工序;施工方便
迅速,钢束便于
更换;钢束线形
容易调整,减小
预应力损失;但
其对力筋防护和
结构构造等的要
求较高,抗腐蚀、
耐疲劳性能有待
提高。
在桥梁工程中
有所应用(新桥
设计和既有桥梁
加固)。
37
第三章 连续梁桥 第一节 概述
混凝土连续梁桥概述-设计实例
38
第三章 连续梁桥 第一节 概述
混凝土连续梁桥概述-设计实例

连续梁桥—内力计算

连续梁桥—内力计算
6.施工过程中,主梁最大自重弯矩发生 在鼻梁刚过前方支点。
7.主梁最小自重负弯矩发生在鼻梁刚过 前方支点或鼻梁刚接近前方支点时。
(六)悬臂施工
1.悬臂施工的连续梁桥最终结构自重内 力与合龙次序、预应力、砼收缩徐变有关。
2.例:一3跨预应力砼连续梁桥,上部结 构采用挂篮对称平衡悬臂法施工,分为 5个施 工阶段,合龙次序为先边跨后中跨。
(4)阶段4:中跨合龙 现浇合龙段自重与挂篮施工机具重力之 和R0施加单悬臂的悬臂端, R0产生的内力如e (5)阶段5:拆除合龙段挂篮 跨中合龙段砼凝固与两边单悬臂梁形成
(5)阶段5:拆除合龙段挂篮 跨中合龙段砼凝固与两边单悬臂梁形成 连续梁后,拆除施工机具,相当于对连续梁 施加一对反向力 R0,跨中合龙段自重则作用 与连续梁上,内力如f 以上为每个阶段的内力分析,某个阶段 的累计内力为该阶段内力与前几个阶段内力 叠加值。
5.根据规范构造、施工要求,将估算的预 应力筋进行横、立、平面布置;
6.根据钢筋布置结果,考虑钢筋对主梁截 面几何特性的影响,重新模拟施工过程,进行 主梁真实作用效应计算,再次进行相应作用效 应组合即第二次效应组合;
7.据第二次效应组合值,进行规定状况下 极限状态的截面强度、应力、裂缝、变形等验 算;
该施工法无体系转换一期期恒载都按一次落架方式作用在连续梁上叠加两个施工阶段的内力即为结构重力作用的内力
普通高等学校土木工程专业精编力计算
连续梁桥内力计算
本节内容
一、桥梁设计步骤 二、结构重力计算
3
一、桥梁设计步骤
桥梁设计一般分 总体设计(初步设计) 、 结构设计(施工图设计) 两步。前者工作: 选定桥位、桥型方案;确定桥长、跨径、桥 宽、主梁截面形式、梁高等关键要素。后者 工作:细化构造、明确作用(汽车荷载、人 群、温度、基础变位等)、确定材料、施工 方法、完成内力计算、配筋设计、验算,最 终形成施工图。

60+100+60变截面连续梁桥(施工图)

60+100+60变截面连续梁桥(施工图)

60+100+60变截面连续梁桥(施工图)总说明一、概述东苕溪为四级航道,通航净宽55m,净高7m,水面正宽178m,通航最高水位2。

62m(85高程)。

路线跨越处河道规整,浆砌片石护岸,河堤上均有汽车通道,河道与路线交角为90°。

该桥服从路线总体走向要求,位于R=5500m的右偏圆曲线上。

桥址区地层上部为亚粘土及淤泥质亚粘土,底层为强风化、中风化砂岩或花岗岩。

二、设计采用的标准及规范1、采用规范⑴ 《公路工程技术标准》(JTJ001-97)⑵ 《公路桥涵设计通用规范》(JTJ021-89)⑶ 《公路钢筋混凝土及预应力混凝土桥涵设计规范》(JTJ023—85)⑷ 《公路桥涵钢结构及木结构设计规范》(JTJ025—86)⑸ 《公路桥涵地基与基础技术规范》(JTJ024—85)⑹ 《公路工程抗震设计规范》(JTJ004-89)⑺ 《公路桥涵施工技术规范》(JTJ041—2000)⑻ 《高速公路交通安全设施设计与施工技术规范》(JTJ074—94)⑼ 《公路桥位勘测设计规范》(JTJ062—91)⑽ 《交通行业标准公路桥梁板式橡胶支座》(JT/T4—93)2、参考规范⑴ 《英国标准学会British Standard BS5400》⑵ 《Standard Specifications for Highway Bridges》U.S.A,1996。

⑶ 《日本高等级公路设计规范》第二册,1990.⑷ 《公路桥梁抗风设计指南》三、设计技术标准计算行车速度:100km/h桥梁宽度: 2×(0。

5m(护栏)+净-15.5m(行车道)+1.0m(护栏))桥面横坡: 2 %桥梁最大纵坡: -2。

55%和尚塘航道等级:四级(通航净宽55m,净高7m)和尚塘航道设计最高通航水位:2。

620m(国家黄海85高程,下同)设计荷载:汽车-超20级,挂车—120地震烈度:地震基本烈度Ⅵ度,按Ⅶ度设防桥面铺装: 10cm厚沥青混凝土铺装船舶撞击力: Fv=400KN,Fh=550KN四、本桥沿线自然地理概况1、地形、地貌桥址区地貌类型属杭嘉湖平原,地势平坦开阔,水网发达,河流沟渠密布。

工学连续梁桥的设计与计算

工学连续梁桥的设计与计算

2)一次落架时
两跨连续梁
根据施工 情况确定
3)各跨龄期不同时
4)多跨连续梁
五、结构因混凝土收缩引起的次内力计算
1、收缩变化规律
– 假设混凝土收缩规律与徐变相同
收缩终极值
2、微分平衡法(Dinshinger法)
– 位移微分公式
收缩产生的弹 性应变增量
收缩产生的应力状态的 徐变增量,初始应力为0
二、自应力计算
温差应变 平截面假定 温差自应变 温差自应力
T(y)=T(y) a(y)=0+y (y)=T(y)-a(y)=T(y)-(0+y) s0(y)=E(y)=E{T(y)-(0+y)}
截面内水平力平衡 截面内力矩平衡 求解得
三、温度次应力计算
力法方程
11x1T+1T=0
温度次力矩 温差次应力
一、温度变化对结构的影响
– 产生的原因:常年温差、日照、砼水化热 – 常年温差:构件的伸长、缩短;
连续梁——设伸缩缝 拱桥、刚构桥——结构次内力 – 日照温差:构件弯曲——结构次内力; 线性温度场——次内力 非线性温度场——次内力、自应力
线性温度梯度对结构的影响 非线性温度梯度对结构的影响
温度梯度场
瞬时沉降弹性 及徐变变形
沉降徐变 增量变形
三、力法方程
沉降弹性 增量变形
后期沉降 自身变形
• 墩台基础沉降规律与徐变变化规律相似时 • 墩台基础沉降瞬时完成时 • 徐变使墩台基础沉降的次内力减小
• 连续梁内力调整措施
– 最好的办法是在成桥后压重 – 通过支承反力的调整将被徐变释放
第七节 温度应力计算
主梁预制
主梁吊装——梁重116吨
后期预应力钢筋张拉

连续梁、板按塑性法内力计算

连续梁、板按塑性法内力计算
.使用阶段不允许出现裂缝,或对裂缝开展有较高 要求的结构。 2 .重要部位的结构和可靠度要求较高的结构。 3 .直接承受动力荷载和疲劳荷载作用的结构。 4 .处于侵蚀性环境中的结构。
的情况下,减少了支座截面的配筋,既方便了施工,又
节省了材料,也更符合构件的实际工作情况。
2)塑性内力重分布的基本规律
根据上节课所讲内容可得出钢筋砼连续梁塑性内力
重分布的基本规律如下:
①钢筋砼连续梁达到承载力极限状态的标志,不是 某个截面达到极限弯距,而是必须出现足够的塑性铰, 使整个结构形成可变体系。 ②塑性铰出现以前,连续梁的弯矩服从弹性的内力
4)等跨连续板、梁的内力值
对于均布荷载作用下,等跨连续板、次梁考虑塑性
内力重分布的弯矩和剪力值,可按下列公式计算: 控制截面的弯矩 : M =α(g + q)l2 式中 α— 弯矩系数,板和次梁按表7.1.3数据采用。
5)塑性内力重分布计算方法的适用范围 对下列结构不能采用塑性内力重分布方法,而应按
b
弹性理论计算法是按活荷载的最不利位置时的内
力包络图来配筋的,但各跨中和各支座截面的最大内力实 际上并不能同时出现。 c 由于超静定结构具有多余约束,某一支座进入破
坏阶段时,只是少一个多余联系,整个结构并未破坏。
d 按弹性理论计算法计算时,支座弯矩总是远大于跨 中弯矩,支座配筋拥挤,构造复杂,施工不便。
但这时梁的工作简图己有所改变,内力不再按原来的
规律分布,支座弯矩向跨中进行了转移,即出现了塑性内 力重分布。
值得指出的是,如按弯矩包络图配筋,支座的最大 负弯矩与跨中的最大正弯距并不是在同一组荷载作用下
产生的,所以当下调支座负弯矩时,在这一组荷载作用
下增大后的跨中正弯矩,实际上并不大于包络图上外包 线的正弯矩,因此跨中截面并不会因此而增加配筋。 由此可见,采用塑性内力重分布方法设计,可调整 连续梁的支座弯矩和跨中变矩,在不增加跨中截面配筋

六跨连续梁内力计算程序程序

六跨连续梁内力计算程序程序

六跨连续梁内力计算程序说明文档一.程序适用范围本程序用来解决六跨连续梁在荷载作用下的弯矩计算。

荷载可以是集中力Fp(作用于跨中)、分布荷载q(分布全垮)、集中力偶m(作用于结点)的任意组合情况。

端部支承可为铰支或固支。

二.程序编辑方法使用Turbo C按矩阵位移法的思路进行编辑,用Turbo C中的数组来完成矩阵的实现,关键的求解K⊿=P的步骤用高斯消元法。

三.程序使用方法运行程序后,按照提示,依次输入结点编号,单元编号,单元长度,抗弯刚度(EI的倍数),集中力,均部荷载,集中力偶,各个数据间用空格隔开,每一项输入完毕后按回车键,所有数据输入完毕后按任意键输出结果。

输出结果中包括输入的数据(以便校核),角位移的值(以1/EI为单位)以及每个单元的左右两端弯矩值。

四.程序试算1.算例1算力图示:输入数据:结点:1 2 3 4 5 6 0;单元:1 2 3 4 5 6;长度:4 6 6 8 4 6; EI:1 1.5 1 2 1 1.5;Fp:0 12 8 0 6 0;q:8 0 0 4 0 6;m:0 0 -8 0 10 0 0运行程序如下:结果为: 角位移为:1(11.383738,-1.434142,-8.980504,14.053733,-10.192107,10.048027,0)EI单元编号 1 2 3 4 5 6 左端弯矩 0.00000 -14.92439 -7.30243 -12.37565 -8.16809 -7.95197 右端弯矩 14.92439-0.6975712.3756518.168097.9519723.024012. 算例2 算例图示:6EI 8kN/m 4m 3m 2m 8m kN/m 12365474kN/m3m 3m3m 2m 6m12kN 8kN8kN.m6kN10kN.mEI EI EI 1.5EI1.52EI输入数据:结点:0 1 2 3 4 5 6; 单元:1 2 3 4 5 6; 长度:4 6 6 8 4 6; EI :1 1.5 1 2 1 1.5;Fp :0 12 8 0 6 0; q :8 0 0 4 0 6;m :0 0 -8 0 10 0 0运行程序如下:结果为: 角位移为:1(0,1.686721,-10.080218,14.871010,-12.183221,17.195206,-26.597603)EI单元编号 1 2 3 4 5 6 左端弯矩 -9.82331 -12.35339 -7.76314 -12.55393 -6.58562 -14.10360 右端弯矩 12.35339-0.2368612.5539316.5856214.103600.00000弯矩图如下:3. 算例3 算例图示:6EI8kN/m 4m 3m 2m 8m kN/m1236544kN/m3m 3m3m 2m 6m12kN 8kN8kN.m6kN 10kN.mEI1.5EI EI EI 2EI 1.5输入数据:结点:0 1 2 3 4 5 0;单元:1 2 3 4 5 6;长度:4 6 6 8 4 6; EI:1 1.5 1 2 1 1.5;Fp:0 12 8 0 6 0;q:8 0 0 4 0 6;m:0 0 -8 0 10 0 0运行程序如下:结果为:角位移为:1(0,1.653925,-9.949034,14.264283,-10.248253,10.062063,0) EI单元编号123456左端弯矩-9.83978-12.32059-7.87793-12.19318-8.21722-7.93794右端弯矩12.32059-0.1220712.1931818.217227.9379423.03103弯矩图如下:4.算例4算例图示:6EI 8kN/m 4m 3m 2m 8m kN/m 12365474kN/m3m 3m3m 2m 6m12kN 8kN8kN.m 6kN10kN.mEI EI EI 1.5EI1.52EI输入数据:结点:1 2 3 4 5 6 7; 单元:1 2 3 4 5 6; 长度:4 6 6 8 4 6; EI :1 1.5 1 2 1 1.5;Fp :0 12 8 0 6 0; q :8 0 0 4 0 6; m :0 0 -8 0 10 0 0 运行程序如下:结果为: 角位移为:1(11.364772,-1.396211,-9.113262,14.660626,-12.126579,17.179023,-26.589511)EI单元编号 1 2 3 4 5 6 左端弯矩 -0.00000 -14.25984 -7.18863 -12.73600 -6.53707 -14.11573 右端弯矩 14.95284-0.8113712.7360016.5370714.115730.00000弯矩图如下:五.源程序#include<stdio.h>#include<conio.h>定义变量int joint[7]; 结点编号int unit[6]; 单元编号float length[6];长度float EI[6]; 抗弯刚度float P[6]; 集中力float q[6]; 均部荷载float m[7]; 集中力偶double I[6]; 线刚度int number=7,i,j;double K[7][7]={0}; 整体刚度矩阵double k[6][2][2]; 单元刚度矩阵doubleMP[6][2],Mq[6][2],Mlast[6][2],M[7]={0},tatleM[7],mm[7],Mqueue[7]={0},antiM[7]= {0};依次为:集中力、均布荷载引起的固端弯矩,最终杆端弯矩,全部荷载引起的弯矩,总的结点荷载,按结点编号排列的结点集中力偶,按结点编号排列的固端弯矩,等效结点弯矩double angle[7]={0}; 角位移void input(); 输入函数void solve(); 求解函数void output(); 输出函数void Gauss(); 高斯消元法void main(){input();solve();output();}void input(){clrscr();printf("Please input data.\n\nThe joint number:");for(i=0;i<7;i++)scanf("%d",&joint[i]);printf("\nThe unit number:");for(i=0;i<6;i++)scanf("%d",&unit[i]);printf("\nThe length:");for(i=0;i<6;i++)scanf("%f",&length[i]);printf("\nThe EI:");for(i=0;i<6;i++)scanf("%f",&EI[i]);printf("\nThe Fp:");for(i=0;i<6;i++)scanf("%f",&P[i]);printf("\nThe q:");for(i=0;i<6;i++)scanf("%f",&q[i]);printf("\nThe m:");for(i=0;i<6;i++)scanf("%f",&m[i]);}void solve(){for(i=0;i<7;i++){if(joint[i]==0) number-=1;}for(i=0;i<6;i++){MP[i][0]=-P[i]*length[i]/8;MP[i][1]=P[i]*length[i]/8;}for(i=0;i<6;i++){Mq[i][0]=-q[i]*length[i]*length[i]/12;Mq[i][1]=q[i]*length[i]*length[i]/12; }for(i=1;i<6;i++){M[i]=MP[i-1][1]+MP[i][0]+Mq[i-1][1]+Mq[i][0];}M[0]=MP[0][0]+Mq[0][0];M[6]=MP[5][1]+Mq[5][1];if(joint[0]==0)j=1;else j=0;for(i=j;i<7&&joint[i]>=1;i++){Mqueue[joint[i]-1]=M[i];mm[joint[i]-1]=m[i];}for(i=0;i<7;i++)antiM[i]=-Mqueue[i];for(i=0;i<7;i++)tatleM[i]=antiM[i]+mm[i];for(i=0;i<6;i++)I[i]=(EI[i]/length[i]);if(joint[0]==0) K[joint[1]-1][joint[1]-1]+=4*I[0];if(joint[6]==0) K[joint[5]-1][joint[5]-1]+=4*I[5];for(i=0;i<6;i++){k[i][0][0]=4*I[i],k[i][0][1]=2*I[i],k[i][1][0]=2*I[i],k[i][1][1]=4*I[i]; }for(i=j;joint[i]>=1&&joint[i+1]>=1&&i<6;i++){K[joint[i]-1][joint[i]-1]+=k[i][0][0];K[joint[i]-1][joint[i+1]-1]+=k[i][0][1];K[joint[i+1]-1][joint[i]-1]+=k[i][1][0];K[joint[i+1]-1][joint[i+1]-1]+=k[i][1][1];}getch();}void output(){clrscr();printf("The data you put in:\n\tjoint :");for(i=0;i<7;i++){printf("\t");printf("%d",joint[i]);}printf("\n\n\tunit :");for(i=0;i<6;i++){printf("\t");printf("%d",unit[i]);}printf("\n\n\tlength :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",length[i]); }printf("\n\n\tEI :");for(i=0;i<6;i++){printf("\t");printf("%1.1f",EI[i]);}printf("\n\n\tFp :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",P[i]);}printf("\n\n\tq :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",q[i]);}printf("\n\n\tm :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",m[i]);}Gauss();for(i=0;i<6;i++){Mlast[i][0]=k[i][0][0]*angle[joint[i]-1]+k[i][0][1]*angle[joint[i+1]-1]+MP[i][0 ]+Mq[i][0];Mlast[i][1]=k[i][1][0]*angle[joint[i]-1]+k[i][1][1]*angle[joint[i+1]-1]+MP[i][1 ]+Mq[i][1];}printf("\n--------------------------------------------------------------------------------");printf("\nThe angle(1/EI):\n\n");for(i=0;i<number;i++){printf("%12.6f",angle[i]);}printf("\n--------------------------------------------------------------------------------");printf("\nunit number");for(i=0;i<6;i++){printf("%6d ",unit[i]);}printf("\n\nleft M \t");for(i=0;i<6;i++) printf("%12.5f",Mlast[i][0]);printf("\n\nright M\t");for(i=0;i<6;i++) printf("%12.5f",Mlast[i][1]);getch();}void Gauss(){int l,m;double box;double BOX[7]={0};for(j=0;j<(number-1);j++){for(i=j;i<number;i++){if(K[i][j]!=0){for(m=0;m<number;m++){BOX[m]=K[i][m];K[i][m]=K[j][m];K[j][m]=BOX[m]; }box=tatleM[i];tatleM[i]=tatleM[j];tatleM[j]=box; break;}}for(m=j+1;m<number;m++){K[j][m]/=K[j][j];}tatleM[j]/=K[j][j];K[j][j]=1;for(l=j+1;l<number;l++){tatleM[l]+=-tatleM[j]*K[l][j];for(m=number-1;m>=j;m--){K[l][m]+=-K[j][m]*K[l][j];}}}tatleM[number-1]/=K[number-1][number-1];K[number-1][number-1]=1;for(i=0;i<number;i++)angle[i]=tatleM[i];for(i=number-2;i>=0;i--){for(j=number-1;j>i;j--)angle[i]=angle[i]-K[i][j]*angle[j];}}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

六跨连续梁内力计算程序说明文档一.程序适用范围本程序用来解决六跨连续梁在荷载作用下的弯矩计算。

荷载可以是集中力Fp(作用于跨中)、分布荷载q(分布全垮)、集中力偶m(作用于结点)的任意组合情况。

端部支承可为铰支或固支。

二.程序编辑方法使用Turbo C按矩阵位移法的思路进行编辑,用Turbo C中的数组来完成矩阵的实现,关键的求解K⊿=P的步骤用高斯消元法。

三.程序使用方法运行程序后,按照提示,依次输入结点编号,单元编号,单元长度,抗弯刚度(EI的倍数),集中力,均部荷载,集中力偶,各个数据间用空格隔开,每一项输入完毕后按回车键,所有数据输入完毕后按任意键输出结果。

输出结果中包括输入的数据(以便校核),角位移的值(以1/EI为单位)以及每个单元的左右两端弯矩值。

四.程序试算1.算例1算力图示:输入数据:结点:1 2 3 4 5 6 0;单元:1 2 3 4 5 6;长度:4 6 6 8 4 6;EI:1 1.5 1 2 1 1.5;Fp:0 12 8 0 6 0;q:8 0 0 4 0 6;m:0 0 -8 0 10 0 0运行程序如下:结果为: 角位移为:1(11.383738,-1.434142,-8.980504,14.053733,-10.192107,10.048027,0)EI单元编号 1 2 3 4 5 6 左端弯矩 0.00000 -14.92439 -7.30243 -12.37565 -8.16809 -7.95197 右端弯矩 14.92439-0.6975712.3756518.168097.9519723.024012. 算例2 算例图示:6EI 8kN/m 4m 3m 2m 8m kN/m 12365474kN/m3m 3m3m 2m 6m12kN 8kN8kN.m6kN10kN.mEI EI EI 1.5EI1.52EI输入数据:结点:0 1 2 3 4 5 6; 单元:1 2 3 4 5 6; 长度:4 6 6 8 4 6; EI :1 1.5 1 2 1 1.5;Fp :0 12 8 0 6 0; q :8 0 0 4 0 6;m :0 0 -8 0 10 0 0运行程序如下:结果为: 角位移为:1(0,1.686721,-10.080218,14.871010,-12.183221,17.195206,-26.597603)EI单元编号 1 2 3 4 5 6 左端弯矩 -9.82331 -12.35339 -7.76314 -12.55393 -6.58562 -14.10360 右端弯矩 12.35339-0.2368612.5539316.5856214.103600.000003. 算例3 算例图示:6EI8kN/m 4m 3m 2m 8m kN/m1236544kN/m3m 3m3m 2m 6m12kN 8kN8kN.m6kN 10kN.mEI1.5EI EI EI 2EI 1.5输入数据:结点:0 1 2 3 4 5 0; 单元:1 2 3 4 5 6;长度:4 6 6 8 4 6;EI :1 1.5 1 2 1 1.5;Fp :0 12 8 0 6 0; q :8 0 0 4 0 6; m :0 0 -8 0 10 0 0运行程序如下:结果为: 角位移为:1(0,1.653925,-9.949034,14.264283,-10.248253,10.062063,0)EI单元编号 1 2 3 4 5 6 左端弯矩 -9.83978 -12.32059 -7.87793 -12.19318 -8.21722 -7.93794 右端弯矩 12.32059-0.1220712.1931818.217227.9379423.031034. 算例4 算例图示:6EI 8kN/m 4m 3m 2m 8m kN/m 12365474kN/m3m 3m3m 2m 6m12kN 8kN8kN.m 6kN10kN.mEI EI EI 1.5EI1.52EI输入数据:结点:1 2 3 4 5 6 7;单元:1 2 3 4 5 6;长度:4 6 6 8 4 6;EI:1 1.5 1 2 1 1.5;Fp:0 12 8 0 6 0;q:8 0 0 4 0 6;m:0 0 -8 0 10 0 0运行程序如下:结果为:角位移为:1(11.364772,-1.396211,-9.113262,14.660626,-12.126579,17.179023,-26.589511) EI单元编号123456左端弯矩-0.00000-14.25984-7.18863-12.73600-6.53707-14.11573右端弯矩14.95284-0.8113712.7360016.5370714.115730.00000五.源程序#include<stdio.h>#include<conio.h>定义变量int joint[7]; 结点编号int unit[6]; 单元编号float length[6]; 长度float EI[6]; 抗弯刚度float P[6]; 集中力float q[6]; 均部荷载float m[7]; 集中力偶double I[6]; 线刚度int number=7,i,j;double K[7][7]={0}; 整体刚度矩阵double k[6][2][2]; 单元刚度矩阵double MP[6][2],Mq[6][2],Mlast[6][2],M[7]={0},tatleM[7],mm[7],Mqueue[7]={0},antiM[7]={0};依次为:集中力、均布荷载引起的固端弯矩,最终杆端弯矩,全部荷载引起的弯矩,总的结点荷载,按结点编号排列的结点集中力偶,按结点编号排列的固端弯矩,等效结点弯矩double angle[7]={0}; 角位移void input(); 输入函数void solve(); 求解函数void output(); 输出函数void Gauss(); 高斯消元法void main(){input();solve();output();}void input(){clrscr();printf("Please input data.\n\nThe joint number:");for(i=0;i<7;i++)scanf("%d",&joint[i]);printf("\nThe unit number:");for(i=0;i<6;i++)scanf("%d",&unit[i]);printf("\nThe length:");for(i=0;i<6;i++)scanf("%f",&length[i]);printf("\nThe EI:");for(i=0;i<6;i++)scanf("%f",&EI[i]);printf("\nThe Fp:");for(i=0;i<6;i++)scanf("%f",&P[i]);printf("\nThe q:");for(i=0;i<6;i++)scanf("%f",&q[i]);printf("\nThe m:");for(i=0;i<6;i++)scanf("%f",&m[i]);}void solve(){for(i=0;i<7;i++){if(joint[i]==0) number-=1;}for(i=0;i<6;i++){MP[i][0]=-P[i]*length[i]/8;MP[i][1]=P[i]*length[i]/8;}for(i=0;i<6;i++){Mq[i][0]=-q[i]*length[i]*length[i]/12;Mq[i][1]=q[i]*length[i]*length[i]/12;}for(i=1;i<6;i++){M[i]=MP[i-1][1]+MP[i][0]+Mq[i-1][1]+Mq[i][0];}M[0]=MP[0][0]+Mq[0][0];M[6]=MP[5][1]+Mq[5][1];if(joint[0]==0)j=1;else j=0;for(i=j;i<7&&joint[i]>=1;i++){Mqueue[joint[i]-1]=M[i];mm[joint[i]-1]=m[i];}for(i=0;i<7;i++)antiM[i]=-Mqueue[i];for(i=0;i<7;i++)tatleM[i]=antiM[i]+mm[i];for(i=0;i<6;i++)I[i]=(EI[i]/length[i]);if(joint[0]==0) K[joint[1]-1][joint[1]-1]+=4*I[0];if(joint[6]==0) K[joint[5]-1][joint[5]-1]+=4*I[5];for(i=0;i<6;i++){k[i][0][0]=4*I[i],k[i][0][1]=2*I[i],k[i][1][0]=2*I[i],k[i][1][1]=4*I[i];}for(i=j;joint[i]>=1&&joint[i+1]>=1&&i<6;i++) {K[joint[i]-1][joint[i]-1]+=k[i][0][0];K[joint[i]-1][joint[i+1]-1]+=k[i][0][1];K[joint[i+1]-1][joint[i]-1]+=k[i][1][0];K[joint[i+1]-1][joint[i+1]-1]+=k[i][1][1];}getch();}void output(){clrscr();printf("The data you put in:\n\tjoint :");for(i=0;i<7;i++){printf("\t");printf("%d",joint[i]);}printf("\n\n\tunit :");for(i=0;i<6;i++){printf("\t");printf("%d",unit[i]);}printf("\n\n\tlength :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",length[i]);}printf("\n\n\tEI :");for(i=0;i<6;i++){printf("\t");printf("%1.1f",EI[i]);}printf("\n\n\tFp :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",P[i]);}printf("\n\n\tq :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",q[i]);}printf("\n\n\tm :");for(i=0;i<6;i++){printf("\t");printf("%1.0f",m[i]);}Gauss();for(i=0;i<6;i++){Mlast[i][0]=k[i][0][0]*angle[joint[i]-1]+k[i][0][1]*angle[joint[i+1]-1]+MP[i][0]+Mq[i][0];Mlast[i][1]=k[i][1][0]*angle[joint[i]-1]+k[i][1][1]*angle[joint[i+1]-1]+MP[i][1]+Mq[i][1];}printf("\n--------------------------------------------------------------------------------");printf("\nThe angle(1/EI):\n\n");for(i=0;i<number;i++){printf("%12.6f",angle[i]);}printf("\n--------------------------------------------------------------------------------");printf("\nunit number");for(i=0;i<6;i++){printf("%6d ",unit[i]);}printf("\n\nleft M \t");for(i=0;i<6;i++) printf("%12.5f",Mlast[i][0]);printf("\n\nright M\t");for(i=0;i<6;i++) printf("%12.5f",Mlast[i][1]);getch();}.void Gauss(){int l,m;double box;double BOX[7]={0};for(j=0;j<(number-1);j++){for(i=j;i<number;i++){if(K[i][j]!=0){for(m=0;m<number;m++){BOX[m]=K[i][m];K[i][m]=K[j][m];K[j][m]=BOX[m];}box=tatleM[i];tatleM[i]=tatleM[j];tatleM[j]=box;break;}}for(m=j+1;m<number;m++){K[j][m]/=K[j][j];}tatleM[j]/=K[j][j];K[j][j]=1;for(l=j+1;l<number;l++){tatleM[l]+=-tatleM[j]*K[l][j];for(m=number-1;m>=j;m--){K[l][m]+=-K[j][m]*K[l][j];}}}tatleM[number-1]/=K[number-1][number-1];K[number-1][number-1]=1;for(i=0;i<number;i++)angle[i]=tatleM[i];for(i=number-2;i>=0;i--){for(j=number-1;j>i;j--)angle[i]=angle[i]-K[i][j]*angle[j];}}整理文档。

相关文档
最新文档