ImageVerifierCode 换一换
格式:DOC , 页数:43 ,大小:1.09MB ,
资源ID:4879604      下载积分:12 金币
验证码下载
登录下载
邮箱/手机:
图形码:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4879604.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(几何非线性大作业荷载增量法和弧长法程序设计.doc)为本站上传会员【天****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

几何非线性大作业荷载增量法和弧长法程序设计.doc

1、几何非线性大作业荷载增量法 和弧长法程序设计 系(所):建筑工程系 学 号:1432055 姓 名:焦 联 洪 培养层次:专业硕士 指导老师:吴 明 儿 2015年6月19日 一、 几何非线性大作业( Newton-Raphson法) 用荷载增量法(Newton-Raphson法)编写几何非线性程序: (1)用平面梁单元,可分析平面杆系 (2)算例:悬臂端作用弯矩。悬臂梁最终变形形成周长为悬臂梁长度的圆。 1.1

2、Newton-Raphson算法基本思想 图1.1 Newton-Raphson算法基本思想 1.2 悬臂梁参数 基本参数:L=2m, D=0.03m, A=7.069E-4m2, I=3.976E-08m4 ,E=2.0E11N/m2 图1.2 悬臂梁单元信息 将悬臂梁分成10个单元,如图1.2所示 2.1 MATLAB输入信息 材料信息 单元信息 约束信息(0为约束,1为放松) 荷载信息(FX,FY,M)

3、 节点信息 2.2 求解过程 梁弯成圆形:理论弯矩M=EIY"=24981.944N.m ,直径为0.642m 运用ABAQUS和MATLAB进行求解对比: 图1.3 加载图 图1.4 ABAQUS变形图 图1.5 MATLAB变形曲线 ABAQUS和MATLAB变形对比,最终在理论荷载作用下都弯成了一个圆,其直径为0.64716m,与理论值相对比值为:(0.64716-0.642)/0.642=0.00804.非常接近。 2.3 加载点荷载位移曲线 图1.5 加载点Y方向的荷载位移曲线 加

4、载点的最大竖向位移分别为1.4525m和1.45246m,相对比值(1.4525-1.45246)/1.45246=2.75395E-05。完全相同,说明MATLAB的计算结果很好。 二、 几何非线性大作业( 弧长法) 用弧长法编写几何非线性程序,分析荷载位移全过程曲线: 1) 用平面梁单元,可分析平面杆系结构 2) 算例 (1)受集中荷载的拱:考察拱的矢跨比、荷载位置对荷载位移曲线的影响。 (2)其他有复杂平衡路径

5、的结构 3) 将结果与相关文献进行对比 1.1 弧长法基本思想 图2.1 弧长法基本思想 1.2 拱基本参数 拱参数:L=100m, A=0.32m2 ,I=1m4 ,E=1.0e7N/m2,F=-5000N,拱曲线 y=5×sin(3.1415926*x/L) 将拱结构分成25个单元,如图2所示 图2.2 拱单元信息 2.1 MATLAB输入信息 材料信息 单元信息 约束信息(0为约束,1为放松) 荷载信息(FX,FY,M) 节点信息

6、 2.2 运用ANSYS和MATLAB进行求解对比(两端铰接) ANSYS中模型: 图2.3 ANSYS模型 图2.4 MATLAB和ANSYS变形图 2.3 加载点荷载位移曲线 图2.5 加载点荷载位移曲线 ANSYS求得的极限承载力3042.53,对应位移3.00142 MATLAB求得的极限承载力3043.8, 对应位移3.0768 相对误差分别为0.0417%,2.45%,模拟效果比较好。 2.4 拱的矢跨比a对拱荷载位移曲线的影响 不同矢跨比(1/20,3/40,1/10,3/20)下加载点的荷载位移曲线

7、1)MATLAB中计算拱的矢跨比a对拱荷载位移曲线的影响 图2.6 荷载位移曲线 图2.7 荷载位移曲线 表1 各矢跨比下拱结构的极限荷载 参数 矢高 极值点 F(N) 位移(m) 最低点 F(N) 位移(m) 5mm 3043.8 3.0768 1765.2 7.0816 7.5mm 7623.3 4.0335 -595.82 11.21 10mm 14974 5.4026 -6408.1 14.886 20mm 39791 9.4831 -63049 30.5

8、13 从表中可以初步得出:在一定随着矢跨比的增加,拱仍然呈现跳跃失稳的形式,拱结构的极限承载能力有大幅度的提高;在最低处的承载力呈现出反向,相当于有一个拉力在阻止拱结构发生跳跃失稳,矢跨比越大,拱越不容易发生跳跃失稳。当拱的矢跨比超过一定范围后,拱将发生复杂的不同于跳跃失稳的失稳形式。 2)MATLAB与ANSYS计算结果对比 图2.8 ANSYS和MATLAB对比荷载位移曲线 表2 各矢跨比下拱结构的极限荷载对比 参数 矢高 F(N)MAT 位移(m) F(N)ANA 位移(m) 误差(%) 误差(%) 5mm 3043.8 3

9、0768 3042.53 3.00142 0.04 2.45 7.5mm 7623.3 4.0335 7624.91 3.96303 -0.02 1.75 10mm 14974 5.4026 14974.3 5.3157 0.00 1.61 20mm 39791 9.4831 39695.7 9.59955 0.24 -1.23 从图中可以看出:矢跨比在一定范围内,MATLAB与ANSYS计算的荷载位移曲线非常吻合,验证了MATLAB程序的可行性。当矢跨比为0.15时,ANSYS中将跟踪不到失稳后复杂的平衡路径。 从表中可以得出:MA

10、TLAB与ANSYS计算中拱的极限荷载和极限荷载时所对应的位移非常接近,加载点均为顶点26。具体为:矢高5mm,荷载误差为0.04,位移误差为2.45;矢高7.5mm,荷载误差为-0.02,位移误差为1.75;矢高10mm,荷载误差为0,位移误差为-1.61;矢高20mm,荷载误差为0.24,位移误差为-1.23。实际误差相差很小,在工程允许的范围内是可以接受的。 2.5 荷载位置对拱荷载位移曲线的影响 图2.9 ANSYS模型简图 1)MATLAB中计算荷载位置对拱荷载位移曲线的影响 图2.10 各加载点荷载位移曲线 表3 改变加载点拱结构的极限荷载

11、参数 加载点 极值点 F(N) 位移(m) 最低点 F(N) 位移(m) 26 3043.8 3.0768 1765.2 7.0816 16 3570 3.1891 2258.8 6.116 11 4728 2.88 3220.5 4.7959 4 14317 1.2826 10569 1.7829 误差=100*(MATLAB-ANSYS)/ANSYS 从表中可以初步得出:随着加载点位置越靠近支座处,拱结构的极限承载能力有大幅度的提高;在最低处的承载力也大幅度提高。当加载点位置靠近支座时,拱的承载

12、力增加幅度最大,拱的稳定性很强,不容易发生失稳。 2)MATLAB与ANSYS计算结果对比 图2.11 ANSYS和MATLAB对比荷载位移曲线 表4 各加载点拱结构的极限荷载 参数 矢高 F(N)MAT 位移(m) F(N)ANA 位移(m) 误差(%) 误差(%) 26 3043.8 3.0768 3042.53 3.00142 0.04 2.45 16 3570 3.1891 3569.73 3.24865 0.01 -1.87 11 4728 2.88 4728.71 2.91862 -0.02

13、 -1.34 4 14317 1.2826 14324.8 1.29764 -0.05 -1.17 误差=100*(MATLAB-ANSYS)/ANSYS 从图中可以看出:MATLAB与ANSYS计算的荷载位移曲线非常吻合,验证了MATLAB程序的可行性。从表中可以得出:MATLAB与ANSYS计算中拱的极限荷载和极限荷载时所对应的位移非常接近。具体为:26加载点,荷载误差为0.04,位移误差为2.45;16加载点,荷载误差为0.01,位移误差为-1.87;11加载点,荷载误差为-0.02,位移误差为-1.34;4加载点,荷载误差为-0.05,位移误差为-1.17。实际误差

14、相差很小,在工程允许的范围内是可以接受的。 2.6 两端铰接和固接对拱荷载位移曲线的影响 矢高为5mm时,拱两端为固接和铰接时的荷载位移曲线如下: 图2.12 ANSYS和MATLAB固接和铰接的荷载位移曲线 从图中可以看出:拱的边界条件对其的失稳形式有很大影响。两端固接拱的稳定性明显优于两端铰接拱,承载能力也大幅度提高。固接拱不会发生跳跃失稳的形式,刚度在初始阶段会减小,待到达一定程度后刚度又会增加。而两端铰接拱会发生跳跃失稳的形式。 2.7 参数m对拱失稳形式的影响 文献中给出:m是一个由拱截面在竖向平面内的回转半径r 和拱的初始矢高h无确定的无量纲参

15、数。 当m>=1 时,扁拱不会出现跳跃屈曲, 当0=1 时,扁拱不会出现跳跃屈曲,当0

16、受集中荷载。这个结构是研究分歧问题的经典题目。将半跨结构划分为8个单元, 得到图4b的基本路径和分歧路径, 并与JChreseielewski 和Rsehmiot的结果进行了比较。本文对此结构也进行了缺陷分析。 拱的基本参数:L=254cm,R=381cm,I=41.62cm4,A=6.45cm2,E=6898kN/cm2。 文献中的计算结果。 采用MATLAB和ANSYS对其进行求解,得到其荷载位移曲线: 图2.15 ABAQUS模型 图2.16 ABAQUS变形图 图2.17 ANSYS、MATLAB、ABAQUS加载点荷载位移曲线 从M

17、ATLAB、ANSYS、ABAQUS计算的荷载位移曲线可以看出:两者的荷载位移曲线基本吻合。MATLAB的计算结果可以看出在后期其承载能力会有较大提高,与文献中的荷载位移曲线趋势相同,所以验证出程序的可靠性。ABAQUS不能模拟出后续段曲线也许是单元划分过少。 图2.18 MATLAB加载点荷载位移曲线 第二次极值点会超过第一次极值点所对应的荷载,与文献一致,荷载点也接近。 加入初始缺陷:L/1000, L/2000初始缺陷后观察加载点的荷载位移曲线变化趋势。 图2.19 ANSYS加入初始缺陷后的加载点荷载位移曲线 2.20 初始缺陷为0.0001时的荷载位移

18、曲线 加入初始缺陷后,拱的极限承载能力明显降低。且失稳形式也发生了变化,初始缺陷的大小对其荷载位移曲线有明显影响。所以在工程设计中应考虑结构或构件的初始缺陷,使结构的设计更加合理,安全。 为了研究初始缺陷对拱失稳路径的影响,应用ABAQUS和ANSYS以及MATLAB中加水平力模拟拱结构初始缺陷下的荷载位移曲线。 为了探究ABAQUS和ANSYS计算结果,取其前三阶模态进行对比分析: 2.21 一阶屈曲模态 ABAQUS和MATLAB中的一阶屈曲系数为0.55884和0.564512,

19、对应的屈曲荷载为74325.72N 和75080.096N。 2.22 二阶屈曲模态 ABAQUS和MATLAB中的二阶屈曲系数为1.2259和1.253,对应的屈曲163044.7N 和 166649N。 2.23 三阶屈曲模态 ABAQUS和MATLAB中的三阶屈曲系数为2.166和2.255,对应的屈曲299915N 和 288078N。 从屈曲模态中可以看出,两种软件的前二阶模态趋势吻合,屈曲系数和极限荷载也是吻合的较好。第三阶模态出现不一样的变形趋势,屈曲系数和极限荷载也是也相差比较大,但计算时只引入一阶屈曲模态。 图2.2

20、4 ANSYS、ABAQUS、MATLAB加载点荷载位移曲线 从图中可以看出:ANSYS对缺陷的模拟效果比较好,与文献中的比较接近ABAQUS模拟的极限荷载稍低于ANSYS,而MATLAB模拟的极限荷载远低于ANSYS,但是曲线最终都在位移为300多mm时交于一点。还是有一定规律性。 图2.25 ANSYS和ABAQUS引入初始缺陷加载点荷载位移曲线 始缺陷并一定都会降低承载力,也会有对结构的承载能力有益的初始缺陷。ANSYS的计算结果可以看出,当初始缺陷为1/2000和-1/2000时,其承载能力不变。由于为对称结构,所以缺陷的正负影响不大。 图2.26 ANSYS和

21、ABAQUS引入初始缺陷加载点荷载位移曲线 表6 对比ANNSYS和ABAQUS的极限荷载值和其对应位移值 参数 矢高 F(N)ANS 位移(m) F(N)ABA 位移(m) 误差(%) 误差(%) 1/1000 58444.7 68.9799 55795.628 79.9318 4.53261 -15.8769 1/2000 60579.9 70.1384 57924.958 65.4542 4.38255 6.67851 误差=100*(ABAQUS-ANSYS)/ABAQUS 表中可以得出:ABAQUS求解出的机线荷载小于

22、ANSYS,单对应的位移大于ANSYS对应的值。这可能与单元划分的个数,求解精度有关,但在工程允许的范围内,还是可以接受的。 ABAQUS中迭代步的跳跃很快,位移增加速度很快,其路径不是很准确,可能是由于其单元划分比较少。 体会: 1)注意坐标系的转化和力、位移更新时所对应的状态(C1--C2) 2) 拱是否发生跳跃失稳与矢跨比、矢高与截面旋转半径有关。矢跨比太大不会发生跳跃失稳;m大于1时不能发生跳跃失稳。 3)有些拱在ANSYS中不能得出下降段,可见ANSYS中对拱的跨度矢高、截面参数的比值有一定要求。内部计算和程序中有一些差别。

23、 附录 子程序一:刚度组装矩阵 function K_G=Assemble(K_Element,Element,N_Node) K_G=zeros(N_Node*3,N_Node*3); for i=1:2 n1=Element(1,i); for j=1:2 n2=Element(1,j); K_G(3*n1-2:3*n1,3*n2-2:3*n2)=K_Element(3*i-2:3*i,3*j-2:3*j); end end end 子程序二:整体坐标刚

24、度矩阵 function K=beam2d_stiffness530(E,A,I,L,cs,Ele_F1); F=Ele_F1(1,4); M1=Ele_F1(1,3); M2=Ele_F1(1,6); T=[cs(1,1),cs(1,2),0,0,0,0; -cs(1,2),cs(1,1),0,0,0,0; 0,0,1,0,0,0; 0,0,0,cs(1,1),cs(1,2),0; 0,0,0,-cs(1,2),cs(1,1),0; 0,0,0,0,0,1]; KE=[ E*A/L,0,0,-E*A/L,0,0; 0,12*E*I/L^3

25、6*E*I/L^2,0,-12*E*I/L^3,6*E*I/L^2; 0,6*E*I/L^2, 4*E*I/L, 0, -6*E*I/L^2, 2*E*I/L; -E*A/L,0,0,E*A/L,0,0; 0,-12*E*I/L^3,-6*E*I/L^2,0,12*E*I/L^3,-6*E*I/L^2; 0,6*E*I/L^2,2*E*I/L,0,-6*E*I/L^2,4*E*I/L]; KG=[ F/L,0,-M1/L,-F/L,0,-M2/L; 0,12*F*I/A/L^3+6*F/5/L, 6*F*I/A/L^2+F/10, 0,-(12*F*I/A/L^3

26、6*F/5/L), 6*F*I/A/L^2+F/10; -M1/L, 6*F*I/A/L^2+F/10, 4*F*I/A/L+2*F*L/15, M1/L, -(6*F*I/A/L^2+F/10), 2*F*I/A/L-F*L/30; -F/L,0, M1/L,F/L,0,M2/L; 0,-12*F*I/A/L^3-6*F/5/L,-6*F*I/A/L^2-F/10,0,12*F*I/A/L^3+6*F/5/L,-6*F*I/A/L^2-F/10; -M2/L, 6*F*I/A/L^2+F/10, 2*F*I/A/L-F*L/30, M2/L, -(6*F*I/A/L^2+F/10)

27、 4*F*I/A/L+2*F*L/15]; K=T'*(KE+KG)*T; end 子程序三:局部坐标刚度矩阵 function K=beam2d_stiffness520(E,A,I,L,cs,Ele_F1); F=Ele_F1(1,4); M1=Ele_F1(1,3); M2=Ele_F1(1,6); KE=[ E*A/L,0,0,-E*A/L,0,0; 0,12*E*I/L^3,6*E*I/L^2,0,-12*E*I/L^3,6*E*I/L^2; 0,6*E*I/L^2, 4*E*I/L, 0, -6*E*I/L^2, 2*E*I/L; -E*A/L,0,0,E

28、A/L,0,0; 0,-12*E*I/L^3,-6*E*I/L^2,0,12*E*I/L^3,-6*E*I/L^2; 0,6*E*I/L^2,2*E*I/L,0,-6*E*I/L^2,4*E*I/L]; KG=[ F/L,0,-M1/L,-F/L,0,-M2/L; 0,12*F*I/A/L^3+6*F/5/L, 6*F*I/A/L^2+F/10, 0,-(12*F*I/A/L^3+6*F/5/L), 6*F*I/A/L^2+F/10; -M1/L, 6*F*I/A/L^2+F/10, 4*F*I/A/L+2*F*L/15, M1/L, -(6*F*I/A/L^2+F

29、/10), 2*F*I/A/L-F*L/30; -F/L,0, M1/L,F/L,0,M2/L; 0,-12*F*I/A/L^3-6*F/5/L,-6*F*I/A/L^2-F/10,0,12*F*I/A/L^3+6*F/5/L,-6*F*I/A/L^2-F/10; -M2/L, 6*F*I/A/L^2+F/10, 2*F*I/A/L-F*L/30, M2/L, -(6*F*I/A/L^2+F/10), 4*F*I/A/L+2*F*L/15]; K=(KE+KG); End 主程序一:Newton-Raphson法 clc clear Node=xlsread('Data.xl

30、s','Node'); Element=xlsread('Data.xls','Element'); Boundary=xlsread('Data.xls','Boundary'); Section=xlsread('Data.xls','Section'); Force=xlsread('Data.xls','Force'); %读取相关数据 Allstep=1000; %迭代步数 N_Node=size(Node,1); %节点个数 N_Element=size(Element,1); %单元个数 N_Force=size(Force,1); %节点力个

31、数 N_Boundary=size(Boundary,1); %约束节点个数 Displacement=zeros(N_Node,3); %位移向量(a0) %初始位移及转角为0 All_Disp=zeros(N_Node,3); %初始位移和转角为零(迭代后的节点位移) All_F=zeros(N_Node*3,1); %初始荷载向量为零 (存放节点荷载向量) Internal_F=zeros(N_Node*3,1); %节点内力向量 ForceMatrix=zeros(N_Node*3,1); %总荷载向量 C=zeros(N_Element,

32、2); L=zeros(N_Element,1); for i=1:N_Force ForceMatrix(Force(i,1)*3-2:Force(i,1)*3,1)=Force(i,2:4)'; %把节点荷载向量读入一个矩阵中,形成列向量=总的自由度个数 end del=[]; for i=1:N_Boundary; if Boundary(i,2)==0; m=3*Boundary(i,1)-2; del=[del,[m]]; %受约束节点位移为0时所对应的指标数值1 end if Boundar

33、y(i,3)==0; m=3*Boundary(i,1)-1; del=[del,[m]]; %受约束节点位移为0时所对应的指标数值2 end if Boundary(i,4)==0; m=3*Boundary(i,1); del=[del,[m]]; %受约束节点位移为0时所对应的指标数值3 end end %求出约束节点的标号,便于刚度、荷载矩阵归0 Update_Node=Node+Displacement(:,1:2); %更新后的节点坐标向量(x,y坐标) Ele_

34、F=zeros(N_Element,6); %单元节点荷载向量 ELEDISP=zeros(N_Element,6); %单元节点位移向量 Ele_F1=zeros(N_Element,6); %单元节点荷载刚度矩阵中向量 Ele1_F=zeros(1,6); ELEDISP1=zeros(1,6); qq(1,1)=0; pp(1,1)=0; for n=0:Allstep-1 n=n+1 K_Global=zeros(N_Node*3,N_Node*3); %总刚矩阵 for i=1:N_Element

35、 N1=Element(i,1); %i节点编号 N2=Element(i,2); %j节点编号 N_Section=Element(i,3); %截面的形状控制参数 C(i,:)=Update_Node(N2,:)-Update_Node(N1,:); %a0下坐标向量增量 L(i)=norm(C(i,:)); %变形后的长度 cs=C(i,:)/L(i); %杆件的cos和sin值 E=Section(N_Section,1); A

36、Section(N_Section,2); I=Section(N_Section,3); K_Element=beam2d_stiffness530(E,A,I,L(i),cs,Ele_F1(i,:)); K_Global=K_Global+Assemble(K_Element,Element(i,:),N_Node); %形成总刚K0 end%整体刚度矩阵 Delta_Force=ForceMatrix/Allstep;%初始荷载

37、向量(Q0) Equation=[K_Global,Delta_Force]; %方程组 Disp_Transefer=ones(N_Node*3,1); %建立调节位移矩阵的位移向量 Disp_Transefer(del,:)=0; %将约束节点的位移值定为0,其他的定位1 Equation(del,:)=[];%把方程中约束节点所对应的行和列去掉 Equation(:,del)=[]; %引入约束条件修改方程组 n1=size(Equation,2); % 方程组中列数 dis1=(Equat

38、ion(:,1:n1-1))\Equation(:,n1); % 刚度矩阵求逆后乘以荷载向量, Equation(:,n1)荷载向量,得到节点的位移(da0) %求解方程组 zz=1; %识别约束 for i=1:N_Node*3; if Disp_Transefer(i,1)==1; Disp_Transefer(i,1)=dis1(zz,1); %总的位移向量 zz=zz+1; end end for i=1:N_Node

39、Displacement(i,:)=Disp_Transefer(i*3-2:i*3,1); % 位移增量,形成n*3的位移向量(da0) end All_Disp=All_Disp+Displacement %位移向量更新得到a1(总的位移增量) All_F=All_F+Delta_Force; %外荷载向量更新Q1 Internal_F1=zeros(N_Node*3,1); %节点内力向量 Update_Node1=Update_Node; %C1状态 Update_

40、Node=Node+All_Disp(:,1:2); %C2状态坐标位置更新(改)(迭代后的位置 for i=1:N_Element F_Global=zeros(N_Node*3,1); %全局的荷载向量 for j=1:2 ELEDISP1(j*3-2:j*3)=Displacement(Element(i,j),:); %整体 取出当前单元节点位移向量 end N1=Element(i,1); %i节点编号 N2=Element(

41、i,2); %j节点编号 C1(i,:)=Update_Node1(N2,:)-Update_Node1(N1,:); %a0下坐标向量增量 L1(i)=norm(C1(i,:)); %变形后的长度 cs1=C1(i,:)/L1(i); %杆件的cos和sin值 T1=[cs1(1,1),cs1(1,2),0,0,0,0; -cs1(1,2),cs1(1,1),0,0,0,0; 0,0,1,0,0,0;

42、 0,0,0,cs1(1,1),cs1(1,2),0; 0,0,0,-cs1(1,2),cs1(1,1),0; 0,0,0,0,0,1]; ELEDISP(i,:)=T1* ELEDISP1(:); X1=L1(i)+ ELEDISP(i,4)- ELEDISP(i,1); Z1= ELEDISP(i,5)-ELEDISP(i,2); LN=(X1^2+Z1^2)^0.5;

43、 sin1=Z1/LN; cos1=X1/LN; Citaloca=atan2(sin1,cos1); Ub=LN-L1(i); THRA=ELEDISP(i,3)-Citaloca; THRB=ELEDISP(i,6)-Citaloca; ELEDISP(i,:)=[0,0,THRA,Ub,0,THRB]; K_Element=beam2d_stiffness520(E,A,I,L1(i),cs1,Ele

44、F1(i,:)); %L(i)为a0对应下的 Ele_F(i,:)=K_Element*ELEDISP(i,:)'; %局部坐标系下荷载(Q0)作用下的节点力 Ele_F1(i,:)= Ele_F1(i,:)+ Ele_F(i,:); C2(i,:)=Update_Node(N2,:)-Update_Node(N1,:); %a0下坐标向量增量 L2(i)=norm(C2(i,:)); %变形后的长度 cs2=C2(i,:)/L2(i);

45、杆件的cos和sin值 T2=[cs2(1,1),cs2(1,2),0,0,0,0; -cs2(1,2),cs2(1,1),0,0,0,0; 0,0,1,0,0,0; 0,0,0,cs2(1,1),cs2(1,2),0; 0,0,0,-cs2(1,2),cs2(1,1),0; 0,0,0,0,0,1]; Ele1_F(:)=T2'*Ele_F1(i,:)';

46、行向量 N1=Element(i,1); N2=Element(i,2); F_Global(3*N1-2:3*N1,1)=Ele1_F(1:3); %i节点荷载 F_Global(3*N2-2:3*N2,1)=Ele1_F(4:6); %j节点荷载 Internal_F1=Internal_F1+F_Global; %a1对应下的P1 end Val=Internal_F1-All_F

47、 %求出上次迭代完成时的残余应力Q1-P1 Correc_dis=zeros(N_Node,3); %构造新的节点位移向量,每次更新 Correc_dis1=zeros(N_Node,3); %构造新的节点位移向量,叠加位移增量 N_dis=size(dis1,1); %未受约束的节点位移数目,不为零的节点位移数目 dis3=zeros(N_dis,1); %构造一个向量 k=0; %修改位移矩阵形式 while norm(Val)>1e-7 & k<

48、500 %在一个荷载增量步下进行的对此迭代 k=k+1; K_Global=zeros(N_Node*3,N_Node*3); for i=1:N_Element N1=Element(i,1); N2=Element(i,2); N_Section=Element(i,3); C(i,:)=Update_Node(N2,:)-Update_Node(N1,:); %a1下坐标向量增量 L(i)=norm

49、C(i,:)); %变形后的长度 cs=C(i,:)/L(i); E=Section(N_Section,1); A=Section(N_Section,2); I=Section(N_Section,3); K_Element=beam2d_stiffness530(E,A,I,L(i),cs,Ele_F1(i,:)); K_Global=K_Global+Assemble(K_Element,Element(i,:),N_Node); %

50、形成总刚k1 end Equation=[K_Global,Val]; %在残余应力下的位移求解 Disp_Transefer=ones(N_Node*3,1); Disp_Transefer(del,:)=0; Equation(del,:)=[]; Equation(:,del)=[]; n1=size(Equation,2); Dis2=-(Equation(:,1:n1-1))\Equation(:,n1) %荷位移增量da1

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服