隧洞衬砌静力计算通用程序(ALGOL语言TQ—16机)

合集下载

(六)圆形有压隧洞的衬砌计算

(六)圆形有压隧洞的衬砌计算

有压隧洞多采用圆形断面,内水压力常是控制衬砌断面的主要荷载。

为了充分利用围岩的弹性抗力,围岩厚度应超过三倍开挖洞径,并使衬砌与围岩紧密贴结。

欲求衬砌在某种荷载组合下的内力,只需分别计算出各种荷载单独存在时衬砌的内力,然后进行叠加。

1、均匀内水压力作用下的内力计算当围岩厚度大于3倍开挖洞径时,应考虑围岩的弹性抗力,将衬砌视为无限弹性介质中的厚壁圆管,根据衬砌和围岩接触面的径向变位相容条件,求出以内水压力p 所表示的弹性抗力P 0,而后按轴对称受力的弹性理论厚壁管公式计算衬砌的内力。

如图1所示,在内水压力p 和弹性抗力p 0作用下,按弹性理论平面变形情况,求得厚壁管管壁任意半径r 处的径向变位u 为⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡--+--+-+=0222221)21()(1)()21()1(p t t r r p t r r E r u e e μμμ (1) 取r=r e ,得衬砌外缘的径向变位u e 为 ⎥⎦⎤⎢⎣⎡--+--+-+=02221)21(111)21()1(p t t p t Er u e e μμμ (2) 式中 E ——衬砌材料的弹性模量;μ——衬砌材料的泊松比;t ——衬砌外半径与内半径之比,t=r e /r i 。

图1 衬砌在均匀内水压力作用下的应力计算图当开挖的洞壁作用有p 0时,按文克尔假定,洞壁的径向变位y=p 0/K=p 0r e /100K 0,此处,K 为岩石的弹性抗力系数,K 0为单位弹性抗力系数。

根据变形相容条件,y=u e ,整理后可得围岩的弹性抗力为p At Ap --=201 (3))21)(1()1(00μμμ-+++-=K E K E A (4)A 为弹性特征因素,式中的E 、K 0分别的kPa 和kN/m 3计;若以kg/cm 2和kg/cm 3为单位,则需将式中的E 改为0.01E 。

按弹性理论的解答,厚壁管在均匀内水压力p 和弹性抗力p 0作用下,管壁厚度内任意半径r 处的切向正应力σt 为0222221)(1)(1p t r r t p t r r e e t -+--+=σ (5) 分别令r =r i 及r =r e ,即可得到单层衬砌在均匀内水压力p 作用下内边缘切向拉应力σi和外边缘切向拉应力σe 为p At A t i -+=22σ (6)p At Ae -+=21σ (7) 因为t >1,显然σi >σe 。

压力隧洞衬砌计算方法

压力隧洞衬砌计算方法

压力隧洞衬砌计算方法李青麒 何其诚(武汉水利电力大学水电学院 武汉 430072)提 要本文介绍一种压力隧洞的衬砌计算方法,并利用该方法对某水电站压力斜井进行了计算分析。

该方法根据工程区域实测地应力资料回归拟合初始应力场,在此基础上模拟隧洞开挖、衬砌及衬砌与围岩间的初始缝隙,考虑在内水压力作用下衬砌与围岩联合作用,计算衬砌裂缝的分布,裂缝开展宽度及相应的配筋率等。

关键词 压力管道 钢衬钢筋混凝土结构 不衬砌隧洞 水力劈裂 围岩本文于1998年3月2日收到。

一、前 言通常引水式水电站在隧洞或调压室后面均接一压力管直达发电厂房,当此压力管道布置在地下时,则成为埋藏式钢衬钢筋混凝土结构。

在挪威、英、美等国,根据具体地质条件,有不少压力管道采用不作钢衬或完全不衬砌的压力隧洞结构形式。

设计中多采用从工程实践中所总结出来的经验公式,如挪威的经验公式、澳大利亚的雪山公式。

其理论依据主要是:对于地质条件好或较好的情况,当岩体中存在足够的初始应力,可以防止在内水压力作用下围岩发生水力劈裂,则可以单独由围岩承担内水压力作用。

我国曾有过一些隧洞和洞段根据工程经验和类比采用了不衬砌隧洞形式;近年来国外不衬砌压力隧洞的成功经验在国内引起了广泛的重视,并在几个地质条件相对优越的水电站中根据上述经验公式成功地设计了不衬砌高压隧洞,如广州抽水蓄能电站、天荒坪抽水蓄能电站等。

在地质条件好或比较好的情况下,采用不衬砌压力隧洞,可以节省压力管道投资、简化施工程序、缩短工期,无疑是比较先进的,会有广泛的前景。

但设计所依据的经验公式则有其局限性:首先,严格说来,防止内压下围岩劈裂的是隧洞开挖后的二次应力,在隧洞断面尺寸不大时,用初始应力代替尚可,而以上覆岩体厚度作为判据则是粗略的,主要在于经验公式无法反映地质条件的影响和围岩各主应力间的差异。

其次笼统地认为内水压力作用下,隧洞钢筋混凝土一旦开裂后,则衬砌成为完全的渗水结构,并丧失承载能力,仅起减糙作用也较粗略;工程实践证明,当衬砌裂缝开展宽度不大时(012~013mm 以下),将不会影响结构正常使用,不能等同于无衬砌隧洞。

隧洞衬砌计算

隧洞衬砌计算
★ 固结灌浆 均匀分布于整个隧洞断面周围。
一、荷载及荷载组合
(六)温度压力 产生的原因:衬砌之外的围岩阻碍衬砌自由胀缩,所以在衬 砌内部产生温度应力。
施工期:混凝土的水化热和干缩。 运用期:水温的变化,气温的变化对洞的影响小。 升温时产生压应力,降温时产生拉应力。混凝土耐压不耐 拉,故温降为控制情况,隧洞衬砌混凝土能承受的降温度只有 7~10℃,超过则产生裂缝。 减小温度应力的工程设施: 施工期:选择适宜的水泥(低热),控制水灰比,加强养 护,缩短浇筑的长度(洞线轴向),配置适量的温度钢筋。 如何考虑,如何计算? 非寒冷地区,影响较小,一般不考虑。
一、荷载及荷载组合
普氏推导出坍落拱的形状为抛物线,坍落拱高度h按下
式计算: 两侧无滑动面时:
A
O
h
B
A‘ O B’
CA
垂直山 岩压力
BDh
h
B 2 fk
H
H
两侧有滑动面时: B
45o –φ/2
B
L
h L
B2H tg(45o 2 )
2 fk
2 fk
一、荷载及荷载组合
①没有侧向山岩压力作用岩体中的隧洞 A)隧洞顶是平的,洞顶受到山岩压力的压强量q:

计算步骤:指各种荷载单独作用下,求出衬砌中的弯

矩和轴力,然后根据荷载组合进行迭加。 本书介绍的方法:弹性特征因素法——根据弹力厚壁
石颗粒间的真实摩擦系数:
fk
tg
c
式中,τ—岩石抗剪强度,φ—岩石内摩擦角,
σ—正应力, c—粘结力
一、荷载及荷载组合
实际工程中:
fk
A
Rc 100
Rc—岩石单轴抗压强度 A—小于1的修正系数

某工程A隧洞5类围岩衬砌及配筋计算书

某工程A隧洞5类围岩衬砌及配筋计算书

某工程A隧洞5类围岩衬砌及配筋计算书某工程A隧洞5类(桩号干0+156.00~干1+111.00)衬砌内力和配筋计算书 2014年5月16日目录1 基本资料 (3)1.1 等别 (3)1.2 断面尺寸 (3)1.3 荷载 (3)1.4 计算工况和荷载组合 (3)2 计算方法 (4)2.1 参数取值 (4)2.2 计算简图 (6)3 理正计算结果 (6)4 衬砌配筋计算 (9)4.1 计算情况 (9)4.2 偏心受压计算 (10)4.2.1 取值 (10)4.2.2 配筋计算 (11)4.3 受弯计算 (13)4.4 计算结果 (13)5 抗裂验算 (14)5.1 计算公式 (14)5.2 计算情况 (15)5.3 偏心受压计算 (15)5.4 受弯计算 (15)6 斜截面抗剪验算 (16)6.1 计算公式 (16)6.2 计算情况 (16)6.3 偏心受压计算 (17)6.4 受弯计算 (17)7 配筋结果 (17)1 基本资料1.1 等别根据SL252—2000《水利水电工程等级划分及洪水标准》和GB50288—99《灌溉与排水工程设计规范》的规定,该工程属Ⅲ等(中型)工程。

渠系建筑物按5级设计。

渠系建筑物设计洪水重现期为10年(P=10 %)1.2 断面尺寸净断面尺寸2.0m ×2.4m (宽×高),底板、侧墙及顶拱衬砌厚度均为0.3m 。

1.3 荷载按5级建筑物设计,安全级别为Ⅲ级。

结构重要性系数9.00=γ,设计状况系数0.1=持久ψ、95.0=短暂ψ、85.0=偶然ψ,永久荷载分项系数05.1=G γ(0.95),可变荷载分项系数20.1=Q γ,偶然作用分项系数0.1=A γ,结构系数2.1=d γ。

按承载能力极限状态计算时荷载分项系数:衬砌自重作用分项系数1.05(有利)、0.95(不利)围岩压力作用分项系数1.0 外水压力作用分项系数1.0 灌浆压力作用分项系数1.31.4 计算工况和荷载组合检修期:围岩压力+衬砌自重+外水压力施工期:围岩压力+衬砌自重+外水压力+灌浆压力注:以检修期作为控制工况,施工期灌浆时采取必要的支护措施。

水工隧洞设计规范(试行SD134-84)修订说明

水工隧洞设计规范(试行SD134-84)修订说明

前言第一章总则第二章基本资料第三章隧洞布置第四章横断面形状及尺寸第五章水力设计第六章混凝土和钢筋混凝土衬砌第七章不衬砌与喷锚隧洞第八章灌浆、防渗和排水第九章观测、运行和维修附录隧洞衬砌静力计算通用程序(ALGOL语言TQ-16机)附加说明打印刷新水工隧洞设计规范(试行)SD134—84修订说明前言水利电力部规划设计院(79)水电规水字第7号文下达水利电力部成都勘测设计院主持进行《水工隧洞设计规范》的修订工作。

根据国家建委(80)建发设字第8号文颁发的《工程建设标准规范的管理办法》中的有关规定,并参照1974年水利电力部东北勘测设计院等单位编写的“对1966年部颁《水工隧洞设计暂行规范》的审议意见”,通过反复的研究和与有关单位协商,组成了由水利电力部成都勘测设计院、西北勘测设计院、天津勘测设计院、东北勘测设计院、贵阳勘测设计院、陕西省水电勘测设计院、水利水电科学研究院、清华大学水利系及陕西机械学院水利系等单位参加的修订组,并于1980年12月召开了第一次修订工作协调会议。

会议中对修订规范的一些问题进行了详细的讨论。

一致认为六十年代以来,由于大型水电站和地下工程的建设,岩石力学的发展和电子计算机的普及,水工隧洞设计理论及计算方法都得到较大的改进和提高,积累了不少的宝贵经验,故对原来颁发的规范加以修订和补充是十分必要的。

但讨论中也认识到目前水工隧洞的设计理论和计算方法还不够完善,有些问题尚有待在实践的过程中,不断总结归纳,逐步地完善。

因此,明确这次编修工作的原则就是在已有经验的基础上对行之有效的成功经验加以总结提高,凡尚不够成熟的理论和方法,暂不纳入规范。

根据以上意见,决定这次修订工作,以1966年水利电力部(66)水电技字第39号文颁发的《水工隧洞设计暂行规范》为依据(以下简称“66部颁暂行规范”),在总结运用该规范的基础上进行修订。

1981年全面开展了调查研究和资料收集工作。

对于规范的修订原则、围岩分类、工程布置,水力学计算、混凝土及钢筋混凝土衬砌和喷锚衬砌等进行了调研,对于“66部颁暂行规范”使用情况也进行了调查,走访了西南、中南、华东等地区,并对全国各省市有关单位进行了函调,了解了大多数设计单位的意见和国内外的一些情况,于12月召开了第二次修订工作协调会议。

第六章_隧道衬砌计算 ppt课件

第六章_隧道衬砌计算  ppt课件

ppt课件
28
利用式(4-3),参照图4-5容易求得下列变位:
ppt课件
29
4.3.3拱脚位移计算
(1)单位力矩作用时
单位力矩作用在拱脚围岩上时,拱脚截面绕 中心点a转过一个角度 1 ,如图4-6所示, 拱脚截面仍保持为平面,其内(外)缘处 围岩的最大应力 1 和拱脚内(外)缘的最 大沉陷为 1
ppt课件
3
ppt课件
4
在十九世纪末,混凝土已经是广泛使用的建筑材 料,它具有整体性好,可以在现场根据需要进行 模注等特点。这时,隧道衬砌结构是作为超静定 弹性拱计算的,但仅考虑作用在衬砌上的围岩压 力,而未将围岩的弹性抗力计算在内,忽视了围 岩对衬砌的约束作用。其计算原理和地面结构一 样。 由于把衬砌视为自由变形的弹性结构,因而, 通过计算得到的衬砌结构厚度很大,过于安全。
a22 22 u2 fu1 f 2 f 2 1
a12 a21 12 2 f1 21 u1 f1
a10

1p

0 ap
a20

2p

f
0 ap
ppt课件
2
隧道建筑虽然是一种古老的建筑结构,但其结构计算理论 的形成却较晚。从现有资料看,最初的计算理论形成于十 九世纪 。最初的隧道衬砌使用砖石材料,其结构型式通
常为拱形。采用的截面厚度常常很大,所以结构变形很小, 可以忽略不计。因为构件的刚度很大,故将其视为刚性体, 计算时按静力学原理确定其承载时压力线位置,检算结构 强度。
同时为正。采用力法计算时,将拱圈在拱顶处切开,取基本结构如图
4-4b所示。固端无铰拱为三次超静定,有三个多余未知力,即弯矩X1, 轴向力X2和剪力X3。结构对称和荷载对称时X3=0,变成二次超静定 结构。按拱顶切开处的截面相对变位为零的条件,可建立如下正则方

隧道衬砌计算

隧道衬砌计算

第五章隧道衬砌结构检算5.1结构检算一般规定为了保证隧道衬砌结构的安全,需对衬砌进行检算。

隧道结构应按破损阶段法对构件截面强度进行验算。

结构抗裂有要求时,对混凝土应进行抗裂验算。

5.2 隧道结构计算方法本隧道结构计算采用荷载结构法。

其基本原理为:隧道开挖后地层的作用主要是对衬砌结构产生荷载,衬砌结构应能安全可靠地承受地层压力等荷载的作用。

计算时先按地层分类法或由实用公式确定地层压力,然后按照弹性地基上结构物的计算方法计算衬砌结构的内力,并进行结构截面设计。

5.3 隧道结构计算模型本隧道衬砌结构验算采用荷载—结构法进行验算,计算软件为ANSYS10.0。

取单位长度(1m)的隧道结构进行分析,建模时进行了如下简化处理或假定:①衬砌结构简化为二维弹性梁单元(beam3),梁的轴线为二次衬砌厚度中线位置。

②围岩的约束采用弹簧单元(COMBIN14),弹簧单元以铰接的方式支撑在衬砌梁单元之间的节点上,该单元不能承受弯矩,只有在受压时承受轴力,受拉时失效。

计算时通过多次迭代,逐步杀死受拉的COMBIN14单元,只保留受压的COMBIN14单元。

图5-1 受拉弹簧单元的迭代处理过程③衬砌结构上的荷载通过等效换算,以竖直和水平集中力的模式直接施加到梁单元节点上。

④衬砌结构自重通过施加加速度来实现,不再单独施加节点力。

⑤衬砌结构材料采用理想线弹性材料。

⑥衬砌结构单元划分长度小于0.5m。

隧道结构计算模型及荷载施加后如图5-2所示。

5.4 结构检算及配筋本隧道主要验算明洞段、Ⅴ级围岩段和Ⅳ级围岩段衬砌结构。

根据隧道规范深、浅埋判定方法可知,Ⅴ级围岩段分为超浅埋段、浅埋段和深埋段。

Ⅳ级围岩段为深埋段。

根据所给的材料基本参数和修改后的程序,得出各工况下的结构变形图、轴力图、建立图和弯矩图。

从得出的结果可知,Ⅴ级围岩深埋段,所受内力均较大,故对此工况进行结构检算。

5.4.1 材料基本参数 (1)Ⅴ级围岩围岩重度318.5/kN m γ=,弹性抗力系数300/k MPa m =,计算摩擦角045ϕ=,泊松比u=0.4。

隧道设计衬砌计算范例(结构力学方法)

隧道设计衬砌计算范例(结构力学方法)

1.1工程概况川藏公路二郎山隧道位于四川省雅安天全县与甘孜泸定县交界的二郎山地段, 东距成都约260km , 西至康定约97 km , 这里山势险峻雄伟, 地质条件复杂, 气候环境恶劣, 自然灾害频繁, 原有公路坡陡弯急, 交通事故不断, 使其成为千里川藏线上的第一个咽喉险道, 严重影响了川藏线的运输能力, 制约了川藏少数民族地区的经济发展。

二郎山隧道工程自天全县龙胆溪川藏公路K2734+ 560 (K256+ 560)处回头, 沿龙胆溪两侧缓坡展线进洞, 穿越二郎山北支山脉——干海子山, 于泸定县别托村和平沟左岸出洞, 跨和平沟经别托村展线至K2768+ 600 (K265+ 216) 与原川藏公路相接, 总长8166km , 其中二郎山隧道长4176 m , 别托隧道长104 m ,改建后可缩短运营里程2514 km , 使该路段公路达到三级公路标准, 满足了川藏线二郎山段的全天候行车。

1.2工程地质条件1.2.1 地形地貌二郎山段山高坡陡,地形险要,在地貌上位于四川盆地向青藏高原过渡的盆地边缘山区分水岭地带,隶属于龙门山深切割高中地区。

隧道中部地势较高。

隧址区地形地貌与地层岩性及构造条件密切相关。

由于区内地层为软硬相间的层状地层,构造为西倾的单斜构造,故地形呈现东陡西缓的单面山特征。

隧道轴线穿越部位,山体浑厚,东西两侧发育的沟谷多受构造裂隙展布方向的控制。

主沟龙胆溪、和平沟与支沟构成羽状或树枝状,横断面呈对称状和非对称状的“v ”型沟谷,纵坡顺直比降大,局部受岩性构造影响,形成陡崖跌水。

1.2.2 水文气象二郎山位于四川盆地亚热带季风湿润气候区与青藏高原大陆性干冷气候区的交接地带。

由于山系屏障,二郎山东西两侧气候有显著差异。

东坡潮湿多雨,西坡干燥多风,故有“康风雅雨”之称。

全年分早季和雨季。

夏、秋两季受东进的太平洋季风和南来的印度洋季风的控制,降雨量特别集中;冬春季节,则受青藏高原寒冷气候影响,多风少雨,气候严寒。

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

第一节使用说明1.数据的填写与穿孔(1)数据表(见附表1):原始数据标识符含义:NO——题号,可用任意的不大于8位的整数表示;A——断面型号,按程序安排的代号填写;L d——底板半宽,m;H——侧墙高度,m;R1——底拱半径,m;R24——侧拱或底圆角半径,m;R4——顶拱半径,m;F i1——底拱半中心角,°;F i2——侧拱中心角,°;F i——顶拱半中心角,°;D1——底板或底拱厚度,m;D2——侧拱厚度,m;D3——侧墙厚度,m;D4B——顶拱拱脚厚度,m;D4——顶拱拱顶厚度,m;D5——顶板厚度,m;H0——水头,由底板中线算起,内压为正,外压为负,外压应为折减后的有效水头,m;Q n——顶部垂直山岩压力强度,向下为正,t/m;E1——水平山岩压力顶部强度,指向衬砌为正,t/m;E2——水平山岩压力底部强度,指向衬砌为正,t/m;Q d——底部山岩压力强度,向上为正,t/m;K1、K2、K3、K4、K5——底板、侧拱、侧墙、顶拱、顶板等部位,围岩弹性抗力系数,t/m3;M1——衬砌材料容重,t/m3;E——衬砌材料弹性模量,t/m2;B——无底板断面侧墙墙底约束情况(B=1铰支端;B=2固定端;B=3弹性固端)。

(2)数据填写按衬砌结构图形,在附表1中选用。

原始数据的个数与排列顺序,不可随意增减或倒置。

当无某项荷载时,可在相应的位置填零;不计衬砌自重时,材料容重填零;局部部位围岩破碎,不计弹性抗力时,该部位弹性抗力系数可填零。

附表1数据表TQ—16机用(3)数据穿孔使用ALGOL程序(TQ—16)机,数据用‘N’格式分两段穿孔,也可用机器允许的简化格式穿孔。

使用FORTRAN程序(FELIX机),数据用卡片穿孔,前两个数据穿一张卡片,其余每8个穿一张卡片,每个数据后穿一逗点。

2.上机操作按机器要求的操作命令,先输入源程序,待编译结束,进行标准变量赋值(当需要时),再输入算题数据,机器开始算题。

最后输出计算成果,计算结束。

本程序在TQ—16机安排标准变量赋值功能为:H00000=1多组数据自动输入,若H00000不赋1或H00000≠l,则无此功能。

H00001=q,q为衬砌组成构件(半跨顶拱、边墙、底板等)的等分计算段数,可取10或30,40,50等分段。

为提高计算精度,大断面隧洞可取较多的计算段数。

当H000001不赋值,或所赋值不等于10或30,40,50时,程序自动按等分20段执行。

H00002=1水头按均匀水头计算。

“本程序的FORTRAN程序,已有多组数据自动输入功能,分段数q值的改变,可用调换q值赋值语句卡片来实现。

等水头计算功能,可用改变编译卡,使程序中的注解成为计算语句来实现。

”3.计算成果程序列表输出各计算点的内力和位移,格式为:单位及符号:M——弯矩,以衬砌内壁受拉为正,t·m。

N——轴向力,拉为正,t。

Q——剪力,逆时针转动为正,t。

V——法向位移,以向外法线方向位移为正,m。

U——切向位移,顺外法线向右为正,m。

W——转角位移,逆时针为正,弧度。

输出是由衬砌顶部的中点开始,以半跨顶拱(或顶板)、边墙、侧拱(或底圆角)、半跨底板(或底拱)为序,每段按等分10小段11点输出结果。

4.算例圆拱直墙形无压隧洞,受顶部垂直山岩压力7t/m,齐墙顶内水压力及衬砌自重等荷载,断面尺寸如附图1。

并已知:围岩弹性抗力系数K=5×104t/m3;混凝土弹性模量E=23×102t/m2;混凝土容重W l=2.4t/m3;题号NO=198306(任选);断面型号A=4。

附图1采用TQ—16机ALGOL程序原始数据:6*6*198306,4;∧∧……∧6*6*6*6*3,6,60,0.6,0.6,0.6,0.6,6,7,0,0,0,2.4,5410,5410,5410,23510;∧∧……∧6*6*输出成果;原始数据NO:198306A=43.00 6.0060.000.600.600.60 6.00 6.007.000.000.000.00 2.405000050000500002300000计算结果由计算成果正理绘制衬砌内力及抗力分布图,见附图2。

附图2算例内力及抗力分布图第二节源程序6*6*beginreal r1,r24,r4,fi1,fi2,fi,d1,d2,d3,d4,d5,d4b,e,ml,k1,k2,k3,k4,k5,h3,h,ld,ho,qn,e1,e2,qd,fo2,fn2,go3,gn3,eo4,en4,ds1,ds2,ds3,ds4,ds5,ab,ab3,ab4,hf,hf3,hf4,sf2,cf4,ho3,ho4,ho5,en2,eo2;in teger m1,m2,m3,m4,m5,m,a,b,no,q,t,s;switch sw1:=la1,la2,la3,la4,la5,la6,la7,la8,la9,la10,la11;m24:#read(0,‘N‘,no,a);#print(0,‘80s-,2/,28X,4Hyuan,4X,3Hshi,4X,3Hshu,4X,2H u,/,28X,24s*,2/,28X,3Hno=,I8,9X,2Ha=,I2,/‘,no,a,);m1∶=m2∶=m3∶=m4∶=m5∶=0;m∶=0.01745329;q∶=20;for s:10,20,30,40,50doif H00001=s then q∶=H00001;goto sw1[a];la1:#read(0,‘N‘,r24,d2,ho,qn,e1,e2,qd,mL,k2,k4,e);#print(0,‘8F10.2,3I10‘,r24,d2,ho,qn,e1,e2,qd,ml,k2,k4,e);d4b∶=d4∶=d2;r4∶=r24;fi∶=fi2∶=90;fn2∶=e2;en4∶=fo2∶=(e1+e2)/2;ab∶=#abs(ho);ho4∶=if ab>r24then#sign(ho)*(ab﹣r24)else0;goto Loo;la2:#read(o,‘N‘,ld,fi,d4,d4b,ho,qn,e1,e2,ml,k4,e);#print(0,‘9F10.2,2I10‘,ld,fi,d4,d4b,ho,qn,e1,e2,ml,k4,e);en4∶=e2;ho4∶=ho;r4∶=Ld/#sin(fi*m);goto Loola3:#read(0,‘N‘,b,ld,h,fi,d3,d4b,d4,ho,qn,e1,e2,ml,k3,k4,e);#print(0,‘I10,11F10.2,3I10‘,b,ld,h,fi,d3,d4b,d4,ho,qn,e1,e2,ml,k3,k4,e);m3∶=q;ds3:=h/m3;h3:=h;la31:r4:=ld/#sin(fi*m);ho3:=ho;gn3:=e2;ab3:=#abs(ho3);hf3:=#sign(ho3);ab:=#abs(ho);en4:=go3:=e2-(e2-e1)/(h+r4*(1-#cφs(fi*m)))*h;ho4:=if ab>h then#sign(ho)*(ab-h)else o;goto Loo;la4:#read(0,‘N’,ld,h,fi,d1,d3,d4b,d4,ho,qn,e1,e2,qd,ml,k1,k3,k4,e);#print(0,‘13F10.2,4I10‘,ld,h,fi,d1,d3,d4b,d4,ho,qn,e1,e2,qd,ml,k1,k3,k4,e);goto La31;la5:#read(0,‘N‘,ld,h,fi,r24,d1,d3,d4b,d4,ho,qn,e1,e2,qd,ml,k1,k3,k4,e);#print(o,‘14F10.2,4I10‘,ld,h,fi,r24,d1,d3,d4b,d4,ho,qn,e1,e2,qd,ml,k1,k3,k4,e);d2:=(d1+d3)/2;k2:=(k1+k3)/2;r4:=(ld+r24)/#sin(fi*m);en4:=go3:=e2-(e2-e1)/(r24+h+r4*(1-#cφs(fi*m)))*(r24+h);gn3:=fo2:=e2-(e2-e1)/(r24+h+r4*(1-#cφs(fi*m)))*r24;fn2:=e2;ab:=#abs(ho);hf:=#sign(ho);fi2:=90;ho3:=if ab>r24then hf*(ab-r24)else o;ho4:=if ab>h+r24then hf*(ab-h-r24)else o;goto Loo;la6:#read(0,‘N‘,r24,fi2,r4,fi,d1,d2,d4,ho,qn,e1,e2,qd,ml,k1,k2,k4,e);#print(0,‘13F10.2,4I10‘,r24,fi2,r4,fi,d1,d2,d4,ho,qn,e1,e2,qd,ml,k1,k2,k4,e);m1:=q;d4b:=(d2+d4)/2;ld:=r4*(1﹣#cφs(fi*m))﹣r24*(1﹣#cφs(fi2*m));ds1:=ld/m1;fi1:=o;la61:cf4:=#cφs(fi*m);sf2:=#sin(fi2*m);en4:=fo2:=e2﹣(e2﹣e1)/(r24*sf2+r4*(1﹣cf4)*r24*sf2;fn2:=e2;la62∶ab:=#abs(ho);ho4∶=if ab>r24*sf2then#sign(ho)*(ab﹣r24*sf2)else0;goto Loo;la7:#read(0,‘N‘,r1,fi1,r24,fi2,r4,fi,d1,d2,d4,ho,qn,e1,e2,qd,ml,k1,k2,k4,e);#print(0,‘15F10.2,4I10‘r1,fi1,r24,fi2,r4,fi,d1,d2,d4,ho,qn,e1,e2,qd,ml,k1,k2,k4,e);m1∶=q;fi1:=fi1*m;d4b:=(d2+d4)/2;ds1:=r1*fi1/*m1;goto La61;La8:#read(0,‘N‘,b,r24,fi2,r4,fi,d2,d4b,d4,ho,qn,e1,e2,ml,k2,k4,e);#print(0,‘I10,12F10.2,3I10‘,b,r24,fi2,r4,fi2,d2,d4b,d4,ho,qn,e1,e2,ml,k2,k4,e);if a=8then goto la61;sf2:=#sin(fi2*m);en4:=eo2:=e2﹣(e2﹣e1)/((r24﹣r4)*sf2+r4)*r24*sf2;en2:=e2;goto la62;la10:#read(0,‘N‘,ld,r24,h,d1,d3,d5,ho,qn,e1,e2,qd,ml,k1,k3,k5,e);#print(0,‘12F10.2,4I10‘,lb,r24,h,d1,d3,d5,ho,qn,e1,e2,qd,nl,k1,k3,k5,e);m1:=m3:=m5:=q;d2:=(d1+d3)/2;d4b:=d3;d4:=d5;r4:=r24;fi:=fi2:=90;ds1:=ds5:=ld/m5;h3:=h;ds3:=h/m3;k2:=(k1+k3)/2;k4:=(k3+k5)/2;if ld=0then m1:=m5:=0;if h=0then m3:0,en4:=go3:=e1+(e2﹣e1)/(h+2*r24)*r24;fn2:=e2;gn3:=fo2:=e2﹣(e2﹣e1)/(h+2*r24)*r24;ab:=#abs(ho);hf:=#sign(ho);ho3:=if ab>r24then hf*(ab﹣r24)else0;ho4:=if ab>h+r24then hf(ab﹣r24﹣h)else0;ho5:=if ab>h+2*r24then hf(ab﹣h﹣2*r24)else0;ab3:=#abs(ho3);hf3:=#sign(ho3);goto Loo;la11:#read(0,‘N‘,ld,h,d1,d3,d5,ho,qn,e1,e2,qd,ml,k1,k3,k5,e);#print(0,‘11F10.2,4I10‘,lb,h,d1,d3,d5,ho,qn,e1,e2,qd,ml,k1,k3,k5,e);ab:=#abs(ho);m5:=q;ds5:=ld/m5;go3:=e1,gn3:=e2;ho3:=ho;ho5:=if ab>h then#sign(ho)*(ab﹣h)else0;loo:if a≤10thenbegin m4:=q;fi:=fi*m;ds4:=fi*r4/m4;eo4:=e1;cf4:=#cφs(fi);ab4:=#abs(ho4);hf4:=#sign(ho4);ena;if a=1∨(a≥5∧a≤10)thenbegin m2:=q;fi2:=fi2*m;ds2:=fi2*r24/m2;sf2:=#sin(fi2);ab:=#abs(ho);hf:=#sign(ho);end;if a=4∨a=5∨a=11thenbegin m1:=m3:=q;ds1:=ld/m1;ds3:=h/m3;h3:=h;ab3:=#abs(ho3);hf3:=#sign(ho3);end;if a=10∧r24=0then m2:=m4:=0;m:=m1+m2+m3+m4+m5;beginreal s,so,ke,w,we,eps;integer i,j,k,mx;array c,d[1∶3,1∶6];bt,a1,dl[1∶4],c1,c2,c3,co,cl,g,gi,ae,an,aa,de[1∶6,1∶6],xo,fe,p,cp,h,hi,b1,b2[1∶6]w1,wo[1∶251],x[1∶1506],y[1∶330];procedu re mat1(a,b,c);array a,b,c;begin integer i,j,k;for i:=1step1until6dofor k:=1step1until6dobegin c[i,k]:=0;for j:=1step1until6doc[i,k]:=c[i,k]+a[i,j]*b[j,k];end;end mat1;procedure mat2(a,f,h,d,b);v alue d;real d;array a,f,h,b;begin integer i,j;for i:=1step1until6dobegin b[i]:=0;for j:=1step1until6dob[i]:=b[i]+a[i,j]*f[j];b[i]:=b[i]+h[i]*d;end;end mat2;procedure gg4(x,y);array x,y;begin integer i,j;for i:=1step1until6dofor j:=1step1until6doy[i,j]:=x[i,j];end gg4;procedure gg5(x,y);array x,y;begin integer i;for i:=1step1until6doy[i]:=x[i];end gg5;procedure gnhn;begin integer i,j,l;s:=so;for i:=1step1until6dofor j:=1step1until6dobeging[i,j]:=if i=j then1else0;gi[i,j]:=hi[i]:=h[i]:=0;end;for j:=1step1until4dobegin so:=s+dl[j];begin real gx,gy,d,b1,b2,bo,hm,cf;switch sw2:=lm1,lm2,lm3,lm4,lm5;goto sw2[mx];lm1:d:=d1;p[1]:=0;p[2]:=qd﹣ho﹣d*ml;goto ll;lm2:if a≠9thenbegin d:=d2;bo:=fi2﹣so/r24;b1:=#sin(bo);b2:=#cφs(bo);gx:=qd﹣d*ml/(if bo=0then10﹣4else b1);gy:=fo2+b1*(fn2﹣fo2)/sf2;cf:=r24*(sf2﹣b1);hm:=if ab>cf then hf*(ab﹣cf)else0;lm21:if H00002=1then hm:=ho:p[1]:=(gy﹣gx)*b2*b1;p[2]:=gy*b2*b2+gx*b1*b1﹣hm;goto ll;and;bo:=so/r24;b1:=#sin(bo);b2:=#cφs(bo);d:=d4b+(fi2﹣bo)/fi2)↑2*(d2﹣d4b);gx:=eo2+(sf2﹣b1)/sf2*(en2﹣eo2);gy:=qn+d*ml/(if bo=0then10﹣4else b1);cf:=r24*b1;hm:=if ab>cf then hf*(ab﹣cf)else0;if H00002=1then hm:=ho:p[1]:=(gy﹣gx)*b1*b2;p[2]:=gy*b1*b1+gx*b2*b2﹣hm;goto ll;lm3:d:=d3;hm:=if ab3>so then hf3*(ab3﹣so)else0;if H00002=1then hm:=ho;p[1]:=d*ml;p[2]:=(h3﹣so)/h3*(gn3﹣go3)+go3﹣hm;goto ll;lm4:bo:=fi﹣so/r4;b1:=#sin(ho);b2:=cφs(bo);d:=d4+(bo/fi)↑2*(d4b﹣d4);gx:=eo4+(1﹣b2)*(en4﹣eo4)/(1﹣cf4);gy:=qn+d*ml/(if bo>1.57then10﹣4else b2);cf:=r4*(b2﹣cf4);hm:=if ab4>cf then hf4*(ab4﹣cf)else0;goto lm21;lm5:d:=d5;p[1]:=0;if H00002=1then ho5:=ho;p[2]:=qn+d*ml﹣ho5;ll:an[2,5]:=if so=s then w*ke else we*ke;an[4,1]:=1/d;an[6,3]:=12/d↑3;end;for i:=1step1until6dofor l:=1step1until6dobegingi[i,l]:=if i=l then1+a1[j]*gi[i,l]else a1[j]*gi[i,l];ae[i,l]:=dl[4]*an[i,l];end;for i:=1step1until6dohi[i]:=a1[j]*hi[i];mat1(ae,gi,cl);gg4(cl,gi);mat2(ae,hi,p,1,cp);gg5(cp,hi);for i:=1step1until6dobegin h[i]:=h[i]+bt[j]*hi[i];for l:=1step1until6dog[i,l]:=g[i,l],+bt[j]*gi[i,l];end;end;end gnhn;procedure gj(n,a,b,ep,c1,c2);value n,ep;real n,ep;arrag a,b,c1,c2;begininteger i,j,k,io,jo;real c,t;for i:=1step1until n doc1[i]:=i;for k:=1step1until n dobegin c:=0;for i:=k step1until n dofor j:=k step1until n doif#abs(a[i,j])>#abs(c)thenbegin c:=a[i,j];io:=i;jo:=jend;if#abs(c)≤ep thenbegin#print(0,‘10‘,c);stopend;if jo≠k thenbeginfor i:=1step1until n dobegin t:=a[i,jo];a[i,jo]:=a[i,k];a[i,k]:=tend;j:=c1[k];c1[k]:=c1[jo];c1[jo]:=jend;if io≠k thenbeginfor j:=k step1until n dobegin t:=a[io,j];a[io,j]:=a[k,j];a[k,j]:=t end;t:=b[io];b[io]:=b[k];b[k]:=tend:c:=1/c;for j:=k+1step1until n doa[k,j];=a[k,j]*c;b[k]:=b[k]*c;for i:=k+1step1until n dobeginfor j:=k+1step1until n doa[i,j]:=a[i,j]﹣a[i,k]*a[k,j];b[i]:=b[i]﹣a[i,k]*b[k]end;end;for i:=n﹣1step﹣1until1dofor j:=i+1step1until n dob[i]:=b[i]﹣a[i,j]*b[j];for k:=1step1until n doc2[c1[k]]:=b[k];for k:=1step1until n dob[k]:=c2[k];end gj;a1[1]:=a1[2]:=a1[3]:=0.5;a1[4]:=1;bt[1]:=bt[4]:=1/6;bt[2]:=bt[3]:=1/3;for j:=1step1until6dobegin p[j]:=0;for j:=1step1until3doc[i.j]:=d[i.j]:=0;for i:=1step1until6doc1[i,j]:=c2[i,j]:=c3[i,j]:=an[i,j]:=0;end;if a=2thenbegin c[1,1]:=c[2,3]:=c[3,5]:=1;c[1,4]:=﹣k4/e*d4b;c[2,6]:=c[1,4]*d4b↑2/12;goto r;and;if a=3∨a=8∨a=9thenbeginif b=1then c[1,3]:=c[2,4]:=c[3,5]:=1;if b=2then c[1,4]:=c[2,5]:=c[3,6]:=1;if b=3thenbegin c[1,1]:=c[2,3]:=c[3,5]:=1;c[1,4]:=﹣1.2*(if a=3then k3/e*d3else k2/e*d2);c[2,6]:=c[1,4]*(if a=3then d3eles d2)↑2/12;end;end else c[1,2]:=c[2,4]:=c[3,6]=1;r:d[1,2]:=d[2,4]:=d[3,6]:=1;c1[1,2]:=c1[4,5]:=﹣1;c1[2,1]:=c1[3,3]:=c1[5,4]:=c1[6,6]:=1;if a≤2∨a≥9then goto l01;c2[1,1]:=c2[2,2]:=c2[4,4]:=c2[5,5]:=#sin(fi);c2[1,2]:=c2[4,5]:=﹣#cφs(fi);c2[2,1]:=c2[5,4]:=#cφs(fi);c2[3,3]:=c2[6,6]:=1;if a=6∨a=7thenbegin c3[1,1]:=c3[2,2]:=c3[4,4]:=c3[5,5]:=#sin(fi2+fi1);c3[1,2]:=c3[4,5]:=﹣#cφs(fi1+fi2);c3[2,1]:=c3[5,4]:=#cφs(fi1+fi2);c3[3,3]:=c3[6,6]:=1;end;lo1:an[3,2]:=﹣1;an[5,6]:=1;for i:=1step1until m+1dowo[i]:=1;b:=0;llo:s:=0;b:=b+1;for i:=1step1until6dobegin fe[i]:=0;for j:=1step1until6dode[i,j]:=if i=j then1etse0;end;if m1≠0then goto lo else goto l1;lo:so=0;dl[1]:=0;dl[4]:=ds1;dl[2]:=dl[3]:=dl[4]/2;ke:=k1/e;mx:=1;if a=7thenbegin an[2,1]:=an[5,4]:=1/r1;an[1,2]:=an[4,5]:=﹣1/r1;end;l1:for i:=1step1until m dobegin w:=wo[i];we:=wo[i+1];if i=m1+1∧m2≠0then goto l2;if i=m1+m2+1∧m3≠0then goto l3;if i=m1+m2+m3+1∧m4≠0then goto l4;if i=m1+m2+m3+m4+1∧m5≠0then goto l5;l11:gnhn;mat1(g,de,cl);gg4(cl,de);mat2(g,fe,h,dl[4],cp);gg5(cp,fe);goto l6;l2:so:=0;dl[1]:=0;dl[4]:=ds2;ke:=k2/e;dl[2]:=dl[3]:=dl[4]/2;an[2,1]:=an[5,4]:=1/r24;an[1,2]:=an[4,5]:=﹣1/r24;mx:=2;if a<6∨a>7then goto l11;gnhn;mat1(g,c3,cl);mat1(cl,de,co);gg4(co,de);mat2(cl,fe,h,dl[4],cp);gg5(cp,fe);goto l6;l3:so:=0;dl[1]:=0;dl[4]:=ds3;mx:=3;dl[2]:=dl[3]:=dl[4]/2;ke:=k3/e;an[2,1]:=an[5,4]:=an[1,2]:=an[4,5]:=0;if m2=0∧m1≠0thenbeginl31:gnhn;mat1(g,c1,cl);mat1(cl,de,co);gg4(co,de):mat2(cl,fe,h,dl[4],cp);gg5(cp,fe);goto l6;end else goto l11;l4:so:=0;dl[4]:=ds4;dl[2]:=dl[3]:=dl[4]/2;dl[1]:=0,ke:=k4/e;mx:=4;an[2,1]:=an[5,4]:=1/r4;an[1,2]:=an[4,5]:=﹣1/r4;if a≤2∨a≥9then goto l11;gnhn;mat1(g,c2,cl);mat1(cl,de,co);gg4(co,de);mat2(cl,fe,h,dl[4],cp);gg5(cp,fe);goto l6;l5:so:=0;dl[4]:=ds5;dl[2]:=dl[3]:=dl[4]/2;ke:=k5/e;mx:=5;an[1,2]:=an[2,1]:=an[4,5]:=an[5,4]:=0;if m4=0then goto l31else goto l11;l6:end;for i:=1step1until3dobegin xo[i]:=xo[i+3]:=0;for k:=1step1until6dobegin aa[i,k]:=c[i,k];aa[i+3,k]:=0;xo[i+3]:=xo[i+3]﹣d[i,k]*fe[k];for j:=1step1until6doaa[i+3,k]:=aa[i+3,k]+d[i,j]*de[j,k];end;end;gj(6,aa,xo,10﹣5,b1,b2);for i:=1step1until6dox[i]:=xo[i];w1[1]:=if xo[5]>0then1else0;if m1≠0then goto l7else goto l8;l7:so:=0;dl[4]:=ds1;dl[2]:=dl[3]:=dl[4]/2;ke:=k1/e;an[1,2]:=an[2,1]:=an[4,5]:=an[5,4]:=0;if a=7thenbegin an[2,1]:=an[5,4]:=1/r1;an[1,2]:=an[4,5]:=﹣1/r1;end;mx:=1;l8:for i:=1step1until m dobegin w:=wo[i];we:=wo[i+1];if i=m1+1∧m2≠0then goto l12;if i=m1+m2+1∧m3≠0then goto l13;if i=m1+m2+m3+1∧m4≠0then goto l14;if i=m1+m2+m3+m4+1∧m5≠0then goto l15;l111:gnhn;mat2(g,xo,h,dl[4],cp);for j:=1step1until6dox[6*i+j]:=xo[j]:=cp[j];goto l16;l12:so:=0;dl[4]:=ds2;dl[2]:=dl[3]:=dl[4]/2;an[2,1]:=an[5,4]:=1/r24;ke:=k2/e;an[1,2]:=an[4,5]:=﹣1/r24;mx:=2;if a<6∨a>7then goto l111;gnhn;mat1(g,c3,cl);goto l132;l13:so:=0;dl[1]:=0;dl[4]:=ds3;dl[2]:=dl[3]:=dl[4]/2,ke:=k3/e;mx:=3;an[1,2]:=an[2,1]:=an[4,5]:=an[5,4]:=0;if m2=0∧bm1≠0thenbeginl131:gnhn;mat1(g,c1,cl)l132:mat2(cl,xo,h,dl[4],cp);for j:=1step1until6dox[6*i+j]:=xo[j]:=cp[j];gotol16;end else goto l111;l14:so=0;dl[4]:=ds4;dl[2]:=dl[3]:=dl[4]/2;ke:=k4/e;mx:=4;an[2,1]:=an[5,4]:=1/r4;an[1,2]:=an[4,5]:=﹣1/r4;if a≤2∨a≥9then goto l111;gnhn;mat1(g,c2,cl);mat2(cl,xo,h,dl[4],cp);for j:=1step1until6dox[6*i+j]:=xo[j]:=cp[j];goto l16;l15:so:=0;dl[4]:=ds5;dl[2]:=dl[3]:=dl[4]/2;an[1,2]:=an[2,1]:=an[4,5]:=an[5,4]:=0;ke:=k5/e;mx:=5;if m4=0hen goto l131elsegoto l111;l16:w1[i+1]:=if xo[5]>0then1else0;end;eps:=0;for j:=1step1until m+1doeps:=eps+(w1[i]﹣wo[i])↑2;if eps≥2then goto l9else goto l10;l9:for i:=1step1until m+1dowo[i]:=w1[i];an[1,2]:=an[2,1],an[4,5]:=an[5,4]:=0;goto ll0;l10:for i:=0step1until m dofor j:=4step1until6dox[6*i+j]:=x[6*i+j]/e;k:=q;t:=q/10;mx:=0;for i:=0step1until m dobeginfor j:=1step1until6dobegin mx:=mx+1;y[mx]:=x[6*i+j];end;if i=k∧i≠m thenbegin k:=k+q;if i=m1∧m2≠0∧(a=6∨a=7)thenbegin gg4(c3,co);goto ll;end;if i=m1+m2∧m3≠0∧(a=4∨a=11)thenlc1:begin gg4(c1,co);goto ll;end;if i=m1+m2+m3∧m4≠0∧a≥3∧a≤8thenbegin gg4(c2,co);goto ll;end;if i=m1+m2+m3+m4∧m5≠0∧a=11thengoto lc1;for s:=1step1until6dofor j:=1step1until6doco[s,j]:=if s=j then1else0;ll:for j:=1step1until6doxo[j]:=x[6*i+j];mat2(co,xo,b1,0,b2);for j:=1step1until6dobegin mx:=mx+1;y[mx]:=b2[j];end;end;end;#print(0,‘2/,28X,2Hji,4X,4Hsuan;4X,3Hjie,3X,4Hgua0,/,28X,24s*,2/,2X,2Hmx,9X,Hm,11X,Hn,11X,Hq,11X,Hv,11X,Hu,11X,Hw,/‘);begin array x1,x2[1∶3];k:=0;q=10;for i:=mx/6step﹣1until1dobegin t:=6*(i﹣1);x1[1]:=y[t+3];x1[2]:=y[t+1];x1[3]:=y[t+2];x2[1]:=y[t+5];x2[2]:=y[t+4];x2[3]:=y[t+6];#print(0,‘I4,F12.3,2X,F12.7‘.k,x1,x2);if k=q thenbegin q:=q+10;#print(0,‘/‘);goto lpp;end;k:=k+1;lpp:end;end;#print(0,‘I6‘,b);#print(0,‘2/,80s﹣‘);end;if H00000=1then goto m24;end∧∧……∧6*6*。

相关文档
最新文档