发明名称 颗粒流与有限差分法耦合计算方法
摘要 本发明涉及一种基于颗粒物质力学和有限差分法的耦合计算方法,属于计算岩土力学技术领域。针对现有离散介质与连续介质计算模拟方法的局限性,采用颗粒流/有限差分网格表面任意位置耦合方法实现两种不同介质边界相互作用力的传递,并以牛顿第二定律为基础,分别对颗粒流和有限差分网格进行计算,建立了考虑离散介质-连续介质完全耦合的岩土材料计算模型。本发明能够有效地实现离散介质和连续介质边界耦合计算,可以多尺度分析岩土体的受力特性,同时有力推动了颗粒流和有限差分法在岩土工程技术领域的应用。
申请公布号 CN104091009A 申请公布日期 2014.10.08
申请号 CN201410310306.7 申请日期 2014.07.01
申请人 东南大学 发明人 赵学亮
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 南京苏高专利商标事务所(普通合伙) 32204 代理人 李晓
主权项 颗粒流与有限差分法耦合计算方法,其特征在于具体步骤如下:(1),模型信息输入及边界节点信息的传输首先确定问题域,并将问题域划分为离散介质区域和连续介质区域,对于离散介质区域采用颗粒流法建立计算模型,对于连续介质区域采用有限差分法建立计算模型,输入计算问题域的标识、模型参数以及外力信息,并确定离散介质与连续介质的接触边界,将处于接触边界上的有限差分网格节点的坐标、速度初始化并传输到颗粒流计算模块,以此进行接触边界网格划分;(2),接触边界网格函数形式采用自然坐标映射法,运用形函数和节点坐标作为参数表示边界网格,边界网格的空间形态为多参数曲面:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msubsup><mi>x</mi><mi>i</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msubsup><mo>=</mo><msub><mi>N</mi><mi>j</mi></msub><mo>&times;</mo><msubsup><mi>x</mi><mi>i</mi><mi>j</mi></msubsup></mrow>]]></math><img file="FDA0000530934950000011.GIF" wi="245" he="72" /></maths><maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><msub><mi>N</mi><mn>1</mn></msub><mo>=</mo><mfrac><mn>1</mn><mn>4</mn></mfrac><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&xi;</mi><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&eta;</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000012.GIF" wi="347" he="103" /></maths><maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>N</mi><mn>2</mn></msub><mo>=</mo><mfrac><mn>1</mn><mn>4</mn></mfrac><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>&xi;</mi><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&eta;</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000013.GIF" wi="1027" he="108" /></maths><maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>N</mi><mn>3</mn></msub><mo>=</mo><mfrac><mn>1</mn><mn>4</mn></mfrac><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>&xi;</mi><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>&eta;</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000014.GIF" wi="349" he="106" /></maths><maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msub><mi>N</mi><mn>4</mn></msub><mo>=</mo><mfrac><mn>1</mn><mn>4</mn></mfrac><mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>&xi;</mi><mo>)</mo></mrow><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>&eta;</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000015.GIF" wi="351" he="106" /></maths>其中,<img file="FDA0000530934950000016.GIF" wi="80" he="83" />为边界网格上任意一点坐标,<img file="FDA0000530934950000017.GIF" wi="46" he="75" />为接触界面网格节点坐标,N<sub>j</sub>为接触界面形函数,j=1~4,ξ、η为映射自然坐标;(3),接触边界邻近颗粒全域搜索采用改进空间网格法进行全域搜索,搜索在可能与接触边界接触的所有邻近颗粒;首先对颗粒流模型空间区域进行空间网格划分,经验最佳空间网格尺寸为每个空间网格包罗颗粒数目为4~20个,然后根据空间网网格的空间顺序,依次确定各个空间网格所包罗的颗粒,并确定包罗各个有限差分单元接触面的空间网格集合,从而得到每个接触边界网格所有可能与其接触的邻近颗粒;(4),接触边界邻近颗粒的区域搜索首先对全域搜索过程得到的潜在接触颗粒与边界网格进行空间几何运算,剔除不符合空间接触条件的颗粒,然后采用牛顿迭代法计算颗粒中心到边界网格的投影点自然坐标,从而得到颗粒中心到边界网格的最小距离,并将其与颗粒半径进行比较,若其最小距离小于颗粒半径,则判定颗粒与边界网格接触;<img file="FDA0000530934950000021.GIF" wi="1114" he="299" /><maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>d</mi><mo>=</mo><mo>|</mo><msup><mi>x</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msup><mo>-</mo><msup><mi>x</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msup><mo>|</mo><mo>=</mo><msqrt><mrow><mo>(</mo><msup><mi>x</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msup><mo>-</mo><msup><mi>x</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msup><mo>)</mo></mrow><mrow><mo>(</mo><msup><mi>x</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msup><mo>-</mo><msup><mi>x</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msup><mo>)</mo></mrow></msqrt><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000022.GIF" wi="1289" he="124" /></maths>其中,<img file="FDA0000530934950000023.GIF" wi="66" he="66" />为原点到颗粒球心的向量,<img file="FDA0000530934950000024.GIF" wi="64" he="64" />为原点到接触界面上颗粒球心投影点C的向量,d为颗粒球心D到边界网格的投影点C的距离,x<sup>[D]</sup>为颗粒球心的坐标,x<sup>[C]</sup>为球心D到边界网格的投影点C的坐标;(5),颗粒与边界网格的法向接触力颗粒采用线弹性接触模型,计算颗粒与边界网格法向接触力,首先通过颗粒半径减去球心到边界的最小距离求得颗粒与边界法线方向上的最大重叠量,并求出法向单位向量n,根据颗粒的法向刚度求得颗粒所受到的法向接触力的各向分力;法向单位向量<img file="FDA0000530934950000025.GIF" wi="1169" he="117" />法向接触力各方向分力:F<sub>i</sub><sup>n</sup>=k<sub>n</sub>U<sup>n</sup>n<sub>i</sub>                          (5)其中,n为颗粒与边界接触平面的法向单位向量,x<sup>[D]</sup>、y<sup>[D]</sup>、z<sup>[D]</sup>为颗粒球心在坐标各轴的分量,x<sup>[C]</sup>、y<sup>[C]</sup>、z<sup>[C]</sup>为颗粒与边界接触点C在坐标各轴的分量,<img file="FDA00005309349500000211.GIF" wi="166" he="67" />为沿坐标各轴方向的单位向量,<img file="FDA00005309349500000212.GIF" wi="82" he="60" />为法向接触力各方向分力,k<sub>n</sub>为颗粒法向接触刚度,U<sup>n</sup>为颗粒与接触边界重叠量,n<sub>i</sub>为法向单位向量各方向分量;(6),颗粒与边界网格的切向接触力切向接触力采用增量叠加的方式计算,在单个时间步内,增量值采用颗粒与边界接触点垂直于法线平面的相对位移与颗粒切向刚度相乘计算,切向接触力方向的改变主要通过新旧两个接触平面的公共线方向、新接触平面的法向方向,两个方面来实现;边界接触点速度:<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><msubsup><mover><mi>x</mi><mo>.</mo></mover><mi>i</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msubsup><mo>=</mo><mi>&Sigma;</mi><msub><mi>N</mi><mi>j</mi></msub><msubsup><mover><mi>x</mi><mo>.</mo></mover><mi>i</mi><mi>j</mi></msubsup><mo>,</mo><mrow><mo>(</mo><mi>j</mi><mo>=</mo><mn>1,2,3,4</mn><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000027.GIF" wi="1027" he="78" /></maths>相对速度:<maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><msub><mi>V</mi><mi>i</mi></msub><mo>=</mo><msubsup><mover><mi>x</mi><mo>.</mo></mover><mi>i</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msubsup><mo>-</mo><msubsup><mover><mi>x</mi><mo>.</mo></mover><mi>k</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msubsup><mo>+</mo><msub><mi>e</mi><mi>ijk</mi></msub><msubsup><mi>&omega;</mi><mi>j</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msubsup><mrow><mo>(</mo><msubsup><mi>x</mi><mi>k</mi><mrow><mo>[</mo><mi>C</mi><mo>]</mo></mrow></msubsup><mo>-</mo><msubsup><mi>x</mi><mi>k</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msubsup><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000028.GIF" wi="1113" he="73" /></maths>切向相对速度:V<sub>i</sub><sup>s</sup>=V<sub>i</sub>‑V<sub>i</sub><sup>n</sup>=V<sub>i</sub>‑V<sub>j</sub>n<sub>j</sub>n<sub>i</sub>   (8)切向相对位移:<maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><msubsup><mi>&Delta;U</mi><mi>i</mi><mi>s</mi></msubsup><mo>=</mo><msubsup><mi>V</mi><mi>i</mi><mi>s</mi></msubsup><mi>&Delta;t</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000029.GIF" wi="940" he="65" /></maths>切向接触力增量:<maths num="0010" id="cmaths0010"><math><![CDATA[<mrow><msubsup><mi>&Delta;F</mi><mi>i</mi><mi>s</mi></msubsup><mo>=</mo><mo>-</mo><msub><mi>k</mi><mi>s</mi></msub><msubsup><mi>&Delta;U</mi><mi>i</mi><mi>s</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00005309349500000210.GIF" wi="940" he="65" /></maths>切向接触力累积量方向改变:<maths num="0011" id="cmaths0011"><math><![CDATA[<mrow><mfenced open='{' close=''><mtable><mtr><mtd><msub><mrow><mo>{</mo><msubsup><mi>F</mi><mi>i</mi><mi>s</mi></msubsup><mo>}</mo></mrow><mrow><mi>rot</mi><mo>.</mo><mn>1</mn></mrow></msub><mo>=</mo><msubsup><mi>F</mi><mi>j</mi><mi>s</mi></msubsup><mrow><mo>(</mo><msub><mi>&delta;</mi><mi>ij</mi></msub><mo>-</mo><msub><mi>e</mi><mi>ijk</mi></msub><msub><mi>e</mi><mi>kmn</mi></msub><msubsup><mi>n</mi><mi>m</mi><mrow><mo>[</mo><mi>old</mi><mo>]</mo></mrow></msubsup><msub><mi>n</mi><mi>m</mi></msub><mo>)</mo></mrow></mtd></mtr><mtr><mtd><msub><mrow><mo>{</mo><msubsup><mi>F</mi><mi>i</mi><mi>s</mi></msubsup><mo>}</mo></mrow><mrow><mi>rpt</mi><mo>.</mo><mn>2</mn></mrow></msub><mo>=</mo><msub><mrow><mo>{</mo><msubsup><mi>F</mi><mi>i</mi><mi>s</mi></msubsup><mo>}</mo></mrow><mrow><mi>rot</mi><mo>.</mo><mn>1</mn></mrow></msub><mrow><mo>(</mo><msub><mi>&delta;</mi><mi>ij</mi></msub><mo>-</mo><msub><mi>e</mi><mi>ijk</mi></msub><mrow><mo>(</mo><msubsup><mi>&omega;</mi><mi>k</mi><mrow><mo>[</mo><mi>D</mi><mo>]</mo></mrow></msubsup><mo>)</mo></mrow><mi>&Delta;t</mi><mo>)</mo></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000031.GIF" wi="1003" he="189" /></maths>切向接触力:<maths num="0012" id="cmaths0012"><math><![CDATA[<mrow><msubsup><mi>F</mi><mi>i</mi><mi>s</mi></msubsup><mo>=</mo><msub><mrow><mo>{</mo><msubsup><mi>F</mi><mi>i</mi><mi>s</mi></msubsup><mo>}</mo></mrow><mrow><mi>rot</mi><mo>.</mo><mn>2</mn></mrow></msub><mo>+</mo><msubsup><mi>&Delta;F</mi><mi>i</mi><mi>s</mi></msubsup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000032.GIF" wi="940" he="93" /></maths>其中,<img file="FDA0000530934950000033.GIF" wi="50" he="81" />为接触边界网格各节点速度,<img file="FDA0000530934950000034.GIF" wi="76" he="61" />为颗粒球心速度,<img file="FDA0000530934950000035.GIF" wi="90" he="88" />为颗粒转动角速度,Δt为计算时步长,k<sub>s</sub>为颗粒切向接触刚度,n<sup>[old]</sup>为上计算步颗粒与边界接触面的法向向量;(7),颗粒与边界网格的滑移模型在颗粒与边界的接触设置滑动模型,防止颗粒与边界之间的切向接触力无限增大,其切向接触力最大值<img file="FDA0000530934950000036.GIF" wi="92" he="69" />为法向接触力与摩擦系数的乘积;<maths num="0013" id="cmaths0013"><math><![CDATA[<mrow><msubsup><mi>F</mi><mi>max</mi><mi>s</mi></msubsup><mo>=</mo><mi>&mu;</mi><mo>|</mo><msup><mi>F</mi><mi>n</mi></msup><mo>|</mo><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000530934950000037.GIF" wi="1049" he="85" /></maths>其中,μ为摩擦系数,F<sup>n</sup>为法向接触力;(8),颗粒流与有限差分法信息的传递颗粒与接触边界网格所受到的接触力为<img file="FDA0000530934950000039.GIF" wi="272" he="85" />颗粒对接触边界的反作用力,可通过形函数等效作用在接触边界节点所在的有限差分网格节点上,如此循环往复,直至模型达到稳定状态;<maths num="0014" id="cmaths0014"><math><![CDATA[<mrow><msubsup><mi>F</mi><mi>i</mi><mi>j</mi></msubsup><mo>=</mo><msub><mi>N</mi><mi>j</mi></msub><mo>&times;</mo><msub><mi>F</mi><mi>i</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>14</mn><mo>)</mo></mrow><mo>.</mo></mrow>]]></math><img file="FDA0000530934950000038.GIF" wi="1066" he="85" /></maths>
地址 210096 江苏省南京市玄武区四牌楼2号