一种基于蒙特卡洛法的张拉整体结构找形方法
【技术领域】
[0001 ] 本发明属于张拉整体结构静力学分析领域,涉及一种张拉整体结构的找形方法。
【背景技术】
[0002] 张拉整体结构是由连续拉索和独立压杆组成的自应力索网结构,其概念最早由Fuller提出,由于具有优美的外形,并充分利用了材料的特性,可以减轻重量并节约材料, 在近些年得到了广泛关注和迅速发展,并在土木工程、飞行器可展开机构、生物细胞工程和 材料学等许多领域取得了广泛的应用。
[0003]当一个张拉整体结构的拓扑结构及单元长度被指定之后,需要确定其自平衡结 构,即称为找形。找形关系到结构能否正常工作,对于张拉整体结构的研究十分重要。研 究者们对张拉整体结构的找形方法进行了大量的研究,对于具有高度对称性的简单张拉整 体结构可以使用解析法进行找形。然而对于更加一般的结构,需要使用数值方法。力密度 法、动力松弛法、进化算法、遗传算法等均见诸报道。尽管如此,仍然缺乏更灵活、更强大的, 可以用来对较大尺寸或几何结构不规则和不对称的张拉整体结构形式进行找形的方法。为 此,研究者们提出了将蒙特卡洛法引入张拉整体结构的找形。
[0004] 但这些研究并没有利用具体程序对其进行实现的方法,因此难以在工程实际计算 中得到应用并指导技术问题的解决。同时,方法仍然具有较低的计算速度,同时缺乏一些基 本概念的定义和对计算过程中特殊情况的处理方法。
【发明内容】
[0005]针对缺乏相对应的程序,计算速度较低且缺乏对于基本概念的定义和特殊情况的 处理方法的问题,本发明提出了一种基于蒙特卡洛法的张拉整体结构找形方法,对张拉整 体结构进行找形计算,从而得到工程中自平衡结构。
[0006]本发明的目的是通过以下技术方案实现的:
[0007]-种基于蒙特卡洛法的张拉整体结构找形方法,包括如下步骤:
[0008] 步骤一、设定初始条件:
[0009]在程序中对张拉整体结构的几何构型和材料属性进行设定,对单元的刚度进行计 算,同时提出连接矩阵的概念并对单元连接顺序进行规定;
[0010] 步骤二、随机生成初始构型:
[0011] 利用程序随机生成初始构型,得到各单元的坐标矢量矩阵,再计算构型的能量,并 设定节点随机位移半径;
[0012] 步骤三、随机生成新构型并判断是否接受:
[0013]将第一个节点或最后一个节点固定,从而提高效率且不影响找形结果。再随机选 定一个节点,以选定的节点为球心,r为半径的球内随机设定该节点的新位置,从而生成新 构型。在此过程中不断判断是否有拉索出现松弛并对其作出处理,若无拉索松弛则进行新 构型能量的计算,若有拉索松弛则重新固定节点进行下一轮计算。
[0014] 计算新构型的能量,若小于上一步构型的能量则接受新构型,并用新构型替换原 来的构型,若大于上一步的能量则不进行替换,进行下一轮计算。
[0015] 当迭代次数达到了 100的整数倍时,则计算这100步中接受新构型的比例,若比例 较低,则缩小半径。
[0016] 步骤四、校验系统是否平衡:
[0017] 系统的平衡通过节点是否平衡来判断,如果满足各单元的内力为0则系统平衡。 实际上由于误差想要达到完全平衡就需要更多的迭代次数,而随着迭代次数的增加节点位 移半径逐渐减小,更多的迭代次数就没有太大的实际意义。因此可以根据误差设定误差限, 设定近似平衡条件。
[0018] 步骤五、得到找形结果:
[0019] 输出找形结果,即各节点坐标,并根据坐标绘制张拉整体结构自平衡构型。
[0020] 本发明具有以下优点:
[0021 ] 1、对于张拉整体结构的找形计算中的特殊情况和技术问题进行了解决,从而加快 了找形计算的速度;
[0022] 2、利用MATLAB编程实现了蒙特卡洛法对张拉整体结构的找形计算过程,可以快 速准确得到其自平衡构型,效果显著。
【附图说明】
[0023] 图1是蒙特卡洛法找形计算的流程图;
[0024] 图2是T棱柱找形计算过程能量变化曲线图;
[0025] 图3是T棱柱找形计算过程中生成的初始构型;
[0026] 图4是T棱柱找形计算过程中经过10000步计算后得到的构型;
[0027] 图5是T棱柱找形计算过程中经过30000步计算后得到的构型;
[0028] 图6是T棱柱找形计算得到的满足近似平衡条件设定的最终构型。
【具体实施方式】
[0029] 下面结合附图对本发明的技术方案作进一步的说明,但并不局限于此,凡是对本 发明技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖 在本发明的保护范围中。
【具体实施方式】 [0030] 一:本实施方式提供了一种基于蒙特卡洛法的张拉整体结构找形方 法的参数定义及设定方法,如图1所示,具体包括如下步骤:
[0031] 步骤一、设定初始条件,可以分为以下几步进行:
[0032] 1. 1、记单元总数为m,节点数为n,压杆数为eb,拉索数为es,其中eb+es=m。
[0033] 1. 2、材料属性:需要设定的材料属性包括单元的截面积A(压杆和拉索分别记为 Ab、As)和单元的弹性模量E(Eb、Es,一般同类单元的材料均相同)以及单元的原长LJU、 ,若各个单元的长度不同则分别按行输入单元的原长矩阵LJ。
[0034] 1. 3、计算单元的刚度S:第k个单元的刚度按照式Sk=Ek ·Ak/I^计算。
[0035] 1. 4、单元的连接矩阵C:对于起点和终点可以按照由下到上,逆时针的方式规定 单元的连接顺序,起点为1,终点为-1。
[0036] 步骤二、随机生成初始构型,可以分为以下几步进行:
[0037] 2. 1、随机生成初始构型P:p为个节点的坐标矩阵,维度为nX3,那么各单元的坐 标矢量矩阵g为g=Cp。
[0038] 2. 2、计算构型的能量E 计算,其中,Sk,lk,1。及 别代表第k个单元刚度,长度和原长。
[0039] 2. 3、设定节点随机位移半径r:选定为结构中最长单元的一半。
[0040] 步骤三、随机生成新构型并判断是否接受,可以分为以下几步进行:
[0041] 3. 1、固定一个节点(如第一个节点或最后一个节点)以提高计算效率且不影响找 形结果。
[0042] 3. 2、随机选定某一节点,以选定的节点为球心,r为半径的球内随机设定该节点的 新位置,从而生成新构型P'。
[0043] 3. 3、判断是否有拉索出现松弛,若有则重复步骤3. 1,若无拉索松弛则进行3. 4。
[0044]3. 4、计算新构型P'的能量E',若E' <E则接受新构型,并用新构型替换原来的构 型即P= P',E =E';若E'彡E则不进行替换,且重复步骤3.1。
[0045] 3. 5、若迭代次数达到了 100的整数倍,则计算这100步中接受新构型的比例,若比 例低于50%,则缩小半径令r= 0. 95r,若比例不低于50%,则半径不变。
[0046] 步骤四、校验系统是否平衡。
[0047] 系统的平衡通过节点是否平衡来判断,各单元的内力为fk=Sk(lk-U,则力密
则系统平衡。根据连通矩阵C可以把平衡方程改写为 CTdiag(q)CP= 0〇
[0048] 根据材料尺寸和性质在10~100N范围内设定一个较小且数值合适的误差限ε 得到近似平衡条件,可以通过限定平衡方程等式左侧计算结果中不平衡力矩阵的最大值 1^_来判断系统是否平衡,若?_<ε则进行步骤五,gF_>ε则进行步骤三。
[0049] 步骤五、得到找形结果。
[0050] 输出各节点坐标,根据坐标绘制张拉整体结构自平衡构型,得到最终的自平衡构 型,并得到计算过程中其他的过程变量的变化情况。
【具体实施方式】 [0051] 二:本实施方式提供了一种基于蒙特卡洛法的Τ棱柱张拉整体结构 找形方法的MATLAB编程实现,包括如下步