引言
随着柔性轻质结构在航天、汽车以及船舶工程等领域日益广泛的应用, 柔性多体系统的动力学分析也愈加重要. 然而, 以线弹性小变形假设为基础的, 将节点位移和转动作为坐标的传统有限单元不适合解决存在大位移、大变形的柔性多体系统的动力学问题. 此外, 对于传统结构有限元, 将几何数据转换为有限元网格数据是困难且耗时的[1]. 据估计, 在航空航天、船舶制造和汽车工业中, 大约80%的分析时间用于网格生成[2]. 在计算机辅助工程(CAE)领域, 有限单元只是计算机辅助设计(CAD)几何模型的近似表示而非精确描述. 这种CAE网格与CAD几何之间的区别将会导致精确性问题, 例如在壳分析中, 随着几何缺陷的增加, 屈曲荷载有相当大的降低[2].
为了准确刻画柔性体大位移、大变形的动力学行为, 研究者将弹性力学与有限元方法和多体动力学理论相结合, 形成了绝对节点坐标方法(ANCF). ANCF利用梯度代替转角对柔性体位移场进行插值并与多体系统动力学理论相结合, 使得其具备描述柔性体大变形、大转动的能力, 从而成为多柔体系统动力学领域的研究热点[3]. 此外, 研究者又发现其与计算机辅助分析软件中的非均匀有理B样条(NURBS)几何体家族之间存在线性转化关系, 从而可以实现从几何模型到ANCF单元网格之间的快速转换, 避免了网格划分的步骤. 相关的研究始于缆索单元与B样条曲线之间的转化关系[4], 并延伸至有理的ANCF缆索单元与NURBS曲线间关系[5]. 相关研究深刻揭示了二者在几何体形状描述、连续性控制等方面的高度相似性[6-7]. 此后, ****们将研究拓展至ANCF双参数单元[8-9]. 研究结果表明, 当单元维数升高, NURBS几何体张量积形式的参数方程会引入冗余自由度, 从而需要对ANCF单元进行改造从而使其与之匹配. 例如增加混合梯度向量, 或在板单元中间添加额外节点等. 这一问题在三维单元中更加严重. Yu和Cui[10]提出了一种48自由度的八节点实体梁单元, 可以精确离散使用相同的基函数阶次Bézier体所代表的几何模型. Ma等[11]研究了一种基于三次有理Bézier体积的三维有理绝对节点坐标公式(RANCF)流体单元, 准确描述初始曲线形状的液柱.
对计算机辅助工程和计算机辅助设计进行整合的另外一个方向就是由Hughes等[2]于2005年提出的等几何分析(IGA), 其概念是将CAD和有限元分析(FEA)两个领域统一起来, 使用相同的基础进行几何描述和分析[12]. IGA方法因为具有实现无缝整合设计和分析的潜力[13]而受到了力学领域的关注[2]. ****们进行了很多针对壳体和板的等几何分析[14-17], 这些研究多是基于当前CAD系统的行业标准NURBS. 然而, 由于NURBS控制点呈矩形网格分布, 从而导致其拓扑结构中存在大量冗余控制点[18], 进而导致分析效率降低. 此外, 修剪后的NURBS表面不可避免地存在间隙和重叠是影响CAD, CAM和CAA系统互操作性的最严重的障碍之一[19]. 为了克服NURBS的这些缺点, Sederberg等[20]提出了T样条. 与NURBS曲面相比, T样条曲面的一个优点是允许局部细化. 由于T交叉点(T-junction)的存在使得T样条允许控制点局部插入到控制网格中, 而非整行或整列地增加控制点[20], 从而大大减少了多余控制点的数量[18]. T样条的另一个优点是T样条模型是水密的. 多个NURBS补丁可以合并成一个单一的水密T样条, 任何修剪过的NURBS对象都可以转换为未修剪的T样条[21]. 因此, T样条被认为是未来CAD行业的新标准, 将在CAD与CAE的集成中发挥重要作用. Casquero等[22]利用适合分析的任意度T样条曲面进行了完全非线性薄壳的结构分析. Casquero等[23]还利用适合分析的T样条来解决Kirchhoff?Love壳问题. Dimitri等[24]提出了一种基于T样条的等几何分析方法, 应用于大变形条件下变形体间的无摩擦接触问题.
在实际应用中, 由于ANCF单元使用梯度作为节点向量, 其建模过程较为复杂. 另外, 如果将一个薄板离散为几个ANCF薄板单元, 其单元边界上的梯度不连续, 因此格林?拉格朗日应变也是不连续的. 而使用IGA方法可以直接使用CAD软件对分析对象进行几何建模, 而且几何模型的连续性条件可以自然得通过结点重复性保证. 为此, 本文将在等几何分析的框架下, 开展基于T样条曲面单元的基尔霍夫薄板动力学分析方法研究. 本文的主要贡献在于:
(1)基于可局部细化的T样条曲面, 提出局部细化策略解决动力学分析中局部应变变化较大的问题, 并根据T样条曲面几何模型的局部细化算法创建变自由度系统动力学方程的求解算法;
(2)通过变网格柔性薄板与刚性球的碰撞问题, 展示所提出局部细化T样条曲面单元在接触碰撞问题中的应用价值.
1.
基于T样条的等几何基尔霍夫薄板
1.1
T样条曲面
T样条可视为控制网格上带有T交叉点的NURBS曲面[25], 可以通过控制点与T样条基函数
ight)$

$${{boldsymbol{S}}_{ m{T}}}(u,v) = sumlimits_{i = 1}^n {{{boldsymbol{P}}_i}{T_i}(u,v)} $$ ![]() | (1) |
式中,
m{T}}}$

ight)$

ight)$







$${T_i}(u,v) = frac{{{omega _i}{B_i}(u,v)}}{{displaystylesumlimits_{i = 1}^n {{omega _i}{B_i}(u,v)} }}{ m{ = }}frac{{{omega _i}{N_i}(u){R_i}(v)}}{{W(u,v)}}$$ ![]() | (2) |
式中, 混合函数

ight)$

ight)$




与NURBS不同的是, 每一个T样条基函数都是基于局部结点矢量而不是全局结点矢量来计算的. 局部结点矢量的建立依赖于T网格和锚点的建立, 根据这两者可以得到T样条曲面上每一个控制点所对应的局部结点矢量
ight]$

ight]$

1.2
T样条薄板的运动学描述
由于基尔霍夫薄板忽略横向剪切变形, 法向量始终垂直于中性层, 其运动学描述可以简化为其中性层的运动学描述. 为此, 首先需要采用T样条单元对薄板中性层进行运动学描述.
T样条单元是由T样条基函数的简化连续线构成的物理区域[29]. 在等几何分析中, 利用IEN数组可以确定每个样条单元的连接关系. IEN中的I表示数组是整数值, EN是“element nodes”的首字母缩写, 表示“单元节点”, 该数组可以将局部基函数号和单元号映射到相应的全局控制点号[29]. 对于第


$${{boldsymbol{e}}_i} = {left[ {begin{array}{*{20}{c}} {{{boldsymbol{P}}_{{ m{IEN}}left( 1 ight)}}}&{{{boldsymbol{P}}_{{ m{IEN}}left( 2 ight)}}}& cdots &{{{boldsymbol{P}}_{{ m{IEN}}left( j ight)}}}& cdots &{{{boldsymbol{P}}_{{ m{IEN}}left( n ight)}}} end{array}} ight]^{ m{T}}}$$ ![]() | (3) |
$$begin{split} {{boldsymbol{S}}_i}left( {u,v} ight) = &left[ {{T_{{ m{IEN}}left( 1 ight)}}left( {u,v} ight){boldsymbol{I}}}qquad{{T_{{ m{IEN}}left( 2 ight)}}left( {u,v} ight){boldsymbol{I}}}qquad cdots ight. &left. {{T_{{ m{IEN}}left( j ight)}}left( {u,v} ight){boldsymbol{I}}}qquad cdots qquad{{T_{{ m{IEN}}left( n ight)}}left( {u,v} ight){boldsymbol{I}}} ight] end{split};;;; $$ ![]() | (4) |
式中,

m{IEN}}left( j
ight)$




m{IEN}}left( j
ight)}}$

m{IEN}}left( j
ight)$





m{IEN}}left( j
ight)}}left( {u,v}
ight)$

m{IEN}}left( j
ight)$



综上所述, 基尔霍夫薄板的运动学描述为
$${boldsymbol{r}}left( {u,v} ight) = {{boldsymbol{S}}_i}left( {u,v} ight) cdot {{boldsymbol{e}}_i}$$ ![]() | (5) |
式中,
ight)$




ight)$




ight)$



1.3
T样条薄板的弹性模型
基于T样条曲面的基尔霍夫薄板的总弹性能可表示为[30]
$$U = {U_{{ m{mid}}}} + {U_{ m{kappa }}} = frac{1}{2}intlimits_V {{boldsymbol{varepsilon}} _{{ m{mid}}}^{ m{T}}{boldsymbol{E}}{{boldsymbol{varepsilon}} _{{ m{mid}}}}{ m{d}}V} + frac{1}{2}intlimits_V {{{boldsymbol{kappa}} ^{ m{T}}}{boldsymbol{Ekappa}} { m{d}}V} $$ ![]() | (6) |
式中,
m{mid}}}}$

m{mid}}}}$


m{kappa }}}$




m{mid}}}}$




$$begin{split}&{{boldsymbol{varepsilon}} _{{ m{mid}}}}{ m{ = }}&dfrac{1}{2}{boldsymbol{T}}_0^{ m{T}}left( {left[ {begin{array}{*{20}{c}} {dfrac{{partial {boldsymbol{r}}}}{{partial u}} cdot dfrac{{partial {boldsymbol{r}}}}{{partial u}}}!!&!!{dfrac{{partial {boldsymbol{r}}}}{{partial u}} cdot dfrac{{partial {boldsymbol{r}}}}{{partial v}}} {dfrac{{partial {boldsymbol{r}}}}{{partial v}} cdot dfrac{{partial {boldsymbol{r}}}}{{partial u}}}!!&!!{dfrac{{partial {boldsymbol{r}}}}{{partial v}} cdot dfrac{{partial {boldsymbol{r}}}}{{partial v}}} end{array}} ight] - left[ {begin{array}{*{20}{c}} {dfrac{{partial {{boldsymbol{r}}_0}}}{{partial u}} cdot dfrac{{partial {{boldsymbol{r}}_0}}}{{partial u}}}!!&!!{dfrac{{partial {{boldsymbol{r}}_0}}}{{partial u}} cdot dfrac{{partial {{boldsymbol{r}}_0}}}{{partial v}}} {dfrac{{partial {{boldsymbol{r}}_0}}}{{partial v}} cdot dfrac{{partial {{boldsymbol{r}}_0}}}{{partial u}}}!!&!!{dfrac{{partial {{boldsymbol{r}}_0}}}{{partial v}} cdot dfrac{{partial {{boldsymbol{r}}_0}}}{{partial v}}} end{array}} ight]} ight){{boldsymbol{T}}_0} &{boldsymbol{kappa}} =& { m{ - }}z{boldsymbol{T}}_0^{ m{T}}left( {left[ {begin{array}{*{20}{c}} {dfrac{{{partial ^2}{boldsymbol{r}}}}{{partial {u^2}}} cdot {boldsymbol{n}}}!!&!!{dfrac{{{partial ^2}{boldsymbol{r}}}}{{partial upartial v}} cdot {boldsymbol{n}}} {dfrac{{{partial ^2}{boldsymbol{r}}}}{{partial upartial v}} cdot {boldsymbol{n}}}!!&!!{dfrac{{{partial ^2}{boldsymbol{r}}}}{{partial {v^2}}} cdot {boldsymbol{n}}} end{array}} ight] !-! left[ {begin{array}{*{20}{c}} {dfrac{{{partial ^2}{{boldsymbol{r}}_0}}}{{partial {u^2}}} cdot {{boldsymbol{n}}_0}}!!&!!{dfrac{{{partial ^2}{{boldsymbol{r}}_0}}}{{partial upartial v}} cdot {{boldsymbol{n}}_0}} {dfrac{{{partial ^2}{{boldsymbol{r}}_0}}}{{partial upartial v}} cdot {{boldsymbol{n}}_0}}!!&!!{dfrac{{{partial ^2}{{boldsymbol{r}}_0}}}{{partial upartial v}} cdot {{boldsymbol{n}}_0}} end{array}} ight]} ight){{boldsymbol{T}}_0}end{split}$$ ![]() |
式中,


ight)$

ight|}}$


ight)_1}{
m{ - }}{left( {{{boldsymbol{e}}_0}}
ight)_2}{
m{ - }}{left( {{{boldsymbol{e}}_0}}
ight)_3}$

ight)_1}{
m{ - }}{left( {{{boldsymbol{g}}_0}}
ight)_2}{
m{ - }}{{boldsymbol{n}}_0}$

$$ left. {begin{array}{*{20}{l}}{left({boldsymbol{g}}_{0} ight)}_{1}=dfrac{partial {boldsymbol{r}}_{0}}{partial u}begin{array}{c},end{array}{left({boldsymbol{g}}_{0} ight)}_{{2}}=dfrac{partial {boldsymbol{r}}_{0}}{partial v} {boldsymbol{n}}_{0}=dfrac{{left({boldsymbol{g}}_{0} ight)}_{1}times {left({boldsymbol{g}}_{0} ight)}_{2}}{left|{left({boldsymbol{g}}_{0} ight)}_{1}times {left({boldsymbol{g}}_{0} ight)}_{2} ight|}end{array}} ight}$$ ![]() | (7) |
$$left. {begin{array}{*{20}{l}} {{{left( {{{boldsymbol{e}}_0}} ight)}_1} = {{left( {{{boldsymbol{g}}_0}} ight)}_1}} {{{left( {{{boldsymbol{e}}_0}} ight)}_{ m{3}}} = {{boldsymbol{n}}_0}} {{{left( {{{boldsymbol{e}}_0}} ight)}_{ m{2}}} = {{left( {{{boldsymbol{e}}_0}} ight)}_{ m{3}}} times {{left( {{{boldsymbol{e}}_0}} ight)}_{ m{1}}}} end{array}} ight}$$ ![]() | (8) |
$$;;;{{boldsymbol{T}}_0} = {left[ {begin{aligned} {{{left( {{{boldsymbol{g}}_0}} ight)}_1} cdot {{left( {{{boldsymbol{e}}_0}} ight)}_1}} quad {{{left( {{{boldsymbol{g}}_0}} ight)}_1} cdot {{left( {{{boldsymbol{e}}_0}} ight)}_2}} {{{left( {{{boldsymbol{g}}_0}} ight)}_2} cdot {{left( {{{boldsymbol{e}}_0}} ight)}_1}} quad {{{left( {{{boldsymbol{g}}_0}} ight)}_2} cdot {{left( {{{boldsymbol{e}}_0}} ight)}_2}} end{aligned}} ight]^{ - { m{T}}}}$$ ![]() | (9) |
弹性力
m{s}}}$



$${{boldsymbol{Q}}_{ m{s}}} = frac{{partial U}}{{partial {boldsymbol{e}}}}{ m{ = }}int_V {{boldsymbol{varepsilon}} _{{ m{mid}}}^{ m{T}}{boldsymbol{E}}frac{{partial {{boldsymbol{varepsilon}} _{{ m{mid}}}}}}{{partial {boldsymbol{e}}}}} { m{d}}V{ m{ + }}int_V {{{boldsymbol{kappa}} ^{ m{T}}}{boldsymbol{E}}frac{{partial {boldsymbol{kappa}} }}{{partial {boldsymbol{e}}}}} { m{d}}V$$ ![]() | (10) |
切线刚度矩阵
m{s}}}$

m{s}}}$


$$begin{split} {boldsymbol{J}}{{boldsymbol{Q}}_{ m{s}}} =& int_V {left( {{{dfrac{{partial {{boldsymbol{varepsilon}} _{{ m{mid}}}^{ m{T}}}}}{{partial {{boldsymbol{e}}_j}}}}}{boldsymbol{E}}dfrac{{partial {{boldsymbol{varepsilon}} _{{ m{mid}}}}}}{{partial {{boldsymbol{e}}_i}}} + {boldsymbol{varepsilon}} _{{ m{mid}}}^{ m{T}}{boldsymbol{E}}dfrac{{{partial ^2}{{boldsymbol{varepsilon}} _{{ m{mid}}}}}}{{partial {{boldsymbol{e}}_j}partial {{boldsymbol{e}}_i}}}} ight){ m{d}}V} + & int_V {left( {{{dfrac{{partial {boldsymbol{kappa}}^{ m{T}} }}{{partial {{boldsymbol{e}}_j}}}}}{boldsymbol{E}}dfrac{{partial {boldsymbol{kappa}} }}{{partial {{boldsymbol{e}}_i}}} + {{boldsymbol{kappa}} ^{ m{T}}}{boldsymbol{E}}dfrac{{{partial ^2}{boldsymbol{kappa}} }}{{partial {{boldsymbol{e}}_j}partial {{boldsymbol{e}}_i}}}} ight){ m{d}}V} end{split} $$ ![]() | (11) |
图1给出了等几何基尔霍夫薄板的转换示意图. 首先, 体积积分简化为厚度

m{d}}A$

m{d}}{A_0}$

$${ m{d}}A{ m{ = }}left| {{{boldsymbol{r}}_u} times {{boldsymbol{r}}_v}} ight|{ m{d}}{A_0} = {J_2}{ m{d}}{A_0}$$ ![]() | (12) |
最后, 对薄板的积分表达式可以写为
$$int_V f { m{d}}V = h{J_2}int_0^v {int_0^u {f{ m{d}}u{ m{d}}v = } } {J_1}{J_2}hsumlimits_{j = 1}^m {sumlimits_{i = 1}^n {{omega _i}{omega _j}fleft( {hat u,hat v} ight)} } $$ ![]() | (13) |
式中,








$${J_1} = frac{{{u_i} - {u_{i - 1}}}}{2} cdot frac{{{v_i} - {v_{i - 1}}}}{2}$$ ![]() | (14) |

class="figure_img
figure_type1 bbb " id="Figure1" />
图
1
等几何基尔霍夫薄板积分过程
Figure
1.
The process of isogeometric Kirchhoff thin plate integration

全尺寸图片
幻灯片
2.
网格局部细化
与NURBS单元网格相比, T样条允许在局部细化单元网格. 在处理碰撞接触等局部发生应变的剧烈变化的问题时具有优势. 本节将讨论T样条薄板的网格局部细分及新控制点的计算方法.
如图2所示, 一个边界为
ight] times left[ {{v_i},{v_{i + 1}}}
ight]$

m{mid}}}} = {{left( {{u_i} + {u_{i + 1}}}
ight)} / 2}$

m{mid}}}} = {{left( {{v_i} + {v_{i + 1}}}
ight)} / 2}$

m{mid}}}}
ight] times left[ {{v_j},{v_{{
m{mid}}}}}
ight]$

m{mid}}}},
ight. $

ight] times left[ {{v_j},{v_{{
m{mid}}}}}
ight]$

m{mid}}}}}
ight] times left[ {{v_{{
m{mid}}}},{v_{j + 1}}}
ight]$

m{mid}}}},{u_{i{
m{ + }}1}}}
ight] $

m{mid}}}},{v_{j + 1}}}
ight]$


class="figure_img
figure_type1 bbb " id="Figure2" />
图
2
局部细化策略的示意图
Figure
2.
Schematic diagram of local refinement strategy

全尺寸图片
幻灯片
曲面














$${boldsymbol{P}} = {left[ {begin{array}{*{20}{c}} {{boldsymbol{P}}_1^{ m{T}}}&{{boldsymbol{P}}_2^{ m{T}}}& cdots &{{boldsymbol{P}}_i^{ m{T}}}& cdots &{{boldsymbol{P}}_m^{ m{T}}} end{array}} ight]^{ m{T}}}$$ ![]() | (15) |
根据参考文献[18], 可以得到T样条混合函数的局部细化算法: 初始T样条曲面上任意控制点



ight]$

ight. $

ight]$



ight)$



ight)$



ight]left( u
ight)$

ight]left(v
ight)$



ight) cdot {R_i}left( v
ight)$

m{mid}}}}$

m{mid}}}}$




ight)$



ight)$





ight)$



ight)$

ight)$

ight)$



ight)$

ight)$






ight)$

ight)$

$${B_i}left( {u,v} ight){ m{ = }}sumlimits_{s = 1}^2 {sumlimits_{r = 1}^2 {left( {{c_s} cdot {d_r}} ight)tilde N_i^stilde R_i^r} } { m{ = }}sumlimits_{t = 1}^4 {f_i^ttilde B_i^tleft( {u,v} ight)} $$ ![]() | (16) |
式中, 初始T样条曲面













m{ = }}{tilde B_j}$








$${B_i}left( {u,v} ight) = sumlimits_{j = 1}^n {f_i^j{{tilde B}_j}left( {u,v} ight)} $$ ![]() | (17) |
因为

ight)$







ight) equiv {{boldsymbol{r}}_2}left( {u,v}
ight)$





$$left. {begin{array}{*{20}{l}} {{{boldsymbol{r}}_1}left( {u,v} ight){ m{ = }}displaystylesumlimits_{i = 1}^m {frac{{{{boldsymbol{P}}_i}{omega _i}{B_i}left( {u,v} ight)}}{{Wleft( {u,v} ight)}}} } {{{boldsymbol{r}}_2}left( {u,v} ight){ m{ = }}displaystylesumlimits_{j = 1}^n {frac{{{{tilde {boldsymbol{P}}}_j}{{tilde omega }_j}{{tilde B}_j}left( {u,v} ight)}}{{tilde Wleft( {u,v} ight)}}} } end{array}} ight}$$ ![]() | (18) |
根据




$$sumlimits_{i = 1}^m {c_i^j{boldsymbol{P}}_i^4 = tilde {boldsymbol{P}}_j^4} $$ ![]() | (19) |
式中, 带有上标4的


$$left.begin{split}&{boldsymbol{P}}_i^4 = {{boldsymbol{P}}_i}{omega _i} = left( {{omega _i}x,{omega _i}y,{omega _i}z,{omega _i}} ight)& {{tilde {boldsymbol{P}}}^4} = {{boldsymbol{M}}_{ m{m}}}{{boldsymbol{P}}^4} & {{boldsymbol{P}}^4}{ m{ = }}{left[ {begin{array}{*{20}{c}} {{boldsymbol{P}}_1^4}&{{boldsymbol{P}}_2^4}& cdots &{{boldsymbol{P}}_i^4}& cdots &{{boldsymbol{P}}_m^4} end{array}} ight]^{ m{T}}} & {{tilde {boldsymbol{P}}}^4}{ m{ = }}{left[ {begin{array}{*{20}{c}} {tilde {boldsymbol{P}}_1^4}&{tilde {boldsymbol{P}}_2^4}& cdots &{tilde {boldsymbol{P}}_j^4}& cdots &{tilde {boldsymbol{P}}_n^4} end{array}} ight]^{ m{T}}} end{split} ight} $$ ![]() | (20) |
式中,




m{m}}}$




根据式(20), 可以得到细化后T样条的齐次坐标矩阵


$$left. {begin{array}{*{20}{l}} {tilde {boldsymbol{omega}} = {{boldsymbol{M}}_{ m{m}}}{boldsymbol{omega}} } {{{tilde {boldsymbol{P}}}_j} = {{tilde {boldsymbol{P}}_j^4} / {{omega _j}}}} end{array}} ight}$$ ![]() | (21) |
式中












综上所述, 根据本节给出的局部细化策略和算法, 可以根据原T样条曲面和插入的结点得到细化后的T样条曲面, 实现几何模型拓扑结构的变化.
3.
变网格T样条薄板的求解算法
本文中基于T样条的柔性等几何薄板系统的动力学方程可表示为
$$tilde {boldsymbol{M}}ddot {boldsymbol{q}} + {tilde {boldsymbol{Q}}_{ m{s}}} - {tilde {boldsymbol{Q}}_{ m{e}}} = {bf{0}}$$ ![]() | (22) |
式中,


m{s}}}$

m{e}}}$




m{c}}}$

在细化子程序中, 当前时刻

ight)}$


ight)}$


ight)}$


ight)$

m{m}}}$



ight)}$


ight)}$


ight)}$





$$left. {begin{array}{*{20}{l}} {{{boldsymbol{e}}_{{ m{temp}}}} = {{boldsymbol{e}}_0} + {boldsymbol{q}}_{n + 1}^{left( {k + 1} ight)} cdot {boldsymbol{B}}} {{{dot {boldsymbol{e}}}_{{ m{temp}}}} = {{dot {boldsymbol{e}}}_0} + dot {boldsymbol{q}}_{n + 1}^{left( {k + 1} ight)} cdot {boldsymbol{B}}} {{{ddot {boldsymbol{e}}}_{{ m{temp}}}} = {{ddot {boldsymbol{e}}}_0} + ddot {boldsymbol{q}}_{n + 1}^{left( {k + 1} ight)} cdot {boldsymbol{B}}} end{array}} ight}$$ ![]() | (23) |
然后根据转换矩阵
m{m}}}$




$$left. {begin{array}{*{20}{l}} {{{tilde {boldsymbol{e}}}_{{ m{temp}}}} = frac{{{{boldsymbol{M}}_{ m{m}}} cdot {{boldsymbol{e}}_{{ m{temp}}}}}}{{tilde {boldsymbol{omega}} }}} {{{dot {tilde {boldsymbol{e}}}}_{{ m{temp}}}} = frac{{{{boldsymbol{M}}_{ m{m}}} cdot {{dot {boldsymbol{e}}}_{{ m{temp}}}}}}{{tilde {boldsymbol{omega}} }}} {{{ddot {tilde {boldsymbol{e}}}}_{{ m{temp}}}} = frac{{{{boldsymbol{M}}_{ m{m}}} cdot {{ddot {boldsymbol{e}}}_{{ m{temp}}}}}}{{tilde {boldsymbol{omega}} }}} end{array}} ight}$$ ![]() | (24) |
同理可得新系统在




更新几何模型后, 约束方程也会发生变化, 所以将会得到新的布尔矩阵




ight)}$

ight)}$

ight)}$

$$left. {begin{array}{*{20}{l}} {tilde {boldsymbol{B}} cdot tilde {boldsymbol{q}}_{n + 1}^{left( {k + 1} ight)} = {{tilde {boldsymbol{e}}}_{{ m{temp}}}} - {{tilde {boldsymbol{e}}}_0}} {tilde {boldsymbol{B}} cdot {dot {tilde {boldsymbol{q}}}}_{n + 1}^{left( {k + 1} ight)} = {{dot {tilde {boldsymbol{e}}}}_{{ m{temp}}}} - {{dot {tilde {boldsymbol{e}}}}_0}} {tilde {boldsymbol{B}} cdot {ddot{ tilde {boldsymbol{q}}}}_{n + 1}^{left( {k + 1} ight)} = {{ddot {tilde {boldsymbol{e}}}}_{{ m{temp}}}} - {{ddot {tilde {boldsymbol{e}}}}_0}} end{array}} ight}$$ ![]() | (25) |
获取了上述变量之后, 系统动力学方程中的变量将会得到更新. 通过与


m{e}}}$

m{s}}}$

m{c}}}$

ight)}$

ight)}$

ight)}$


class="figure_img
figure_type2 ccc " id="Figure3" />
图
3
变网格系统动力学分析流程图
Figure
3.
Dynamic analysis flow chart of variable mesh system

全尺寸图片
幻灯片
4.
数值算例
4.1
受端弯矩作用的悬臂薄板
图4为一末端受弯矩

m{ = }}12;{
m{m}}$

m{m}}$

m{ = }}0.1;{
m{m}}$

m{ = }}1.2;{
m{MPa}}$

m{ = }}0$


根据文献[32]可知, 取最大弯矩为
m{ = }}dfrac{{2{
m{{text{π}} }}EI}}{L}$


m{{text{π}} }}}}$




m{{text{π}} }}$

m{{text{π}} }}$

m{{text{π}} }}$


class="figure_img
figure_type1 bbb " id="Figure4" />
图
4
受端弯矩作用的悬臂薄板
Figure
4.
Cantilever subjected to end bending moment

全尺寸图片
幻灯片

class="figure_img
figure_type1 bbb " id="Figure5" />
图
5
端弯矩作用下, 变形后悬臂梁的构形图
Figure
5.
Configuration of deformed cantilever under external moments

全尺寸图片
幻灯片
4.2
受内压圆环
一平面圆环构件, 在其中心孔边缘受沿半径向外方向的均布载荷
m{MPa}}$

m{ = }}1;{
m{m}}$



ho; {
m{ = }};7800;$




class="figure_img
figure_type1 bbb " id="Figure6" />
图
6
四分之一圆环构件及其局部细化示意图
Figure
6.
Diagram of a quarter of circular thin plate and its local refinement diagram

全尺寸图片
幻灯片
采用T样条曲面单元对构件离散, 单元网格分布图如图6(b)所示. 因为最大米塞斯应力出现在AB边界附近, 内部区域被局域细化. 模型共含有28个单元和72个控制点. 图7给出了局部细化后构件的米塞斯应力云图.

class="figure_img
figure_type1 bbb " id="Figure7" />
图
7
局部细化后构件米塞斯应力云图
Figure
7.
von-Mises stress nephogram after local refinement

全尺寸图片
幻灯片
因为该算例属于平面问题, 所以轴向应力

m{s}}}$

$$left. {begin{array}{*{20}{l}} {{sigma _{{theta }}}{{ = }}dfrac{{{{{P}}_0}{K^2}}}{{{K^2} - 1}}left( {1 - dfrac{{R_2^2}}{{{r^2}}}} ight)} {{sigma _{{r}}}{{ = }}dfrac{{{{{P}}_0}{K^2}}}{{{K^2} - 1}}left( {1 + dfrac{{R_2^2}}{{{r^2}}}} ight)} {{sigma _{{s}}} = sqrt {dfrac{1}{2}left[ {{{left( {{sigma _{{r}}} - {sigma _{{theta }}}} ight)}^2} + {{left( {{sigma _{{r}}} - {sigma _{{z}}}} ight)}^2} + {{left( {{sigma _{{theta }}} - {sigma _{{z}}}} ight)}^2}} ight]} } end{array}} ight}$$ ![]() | (26) |
式中,

m{theta }}}$


在有限元软件ANSYS中采用SHELL63单元运行相同算例并对比构件中最大和最小应力结果如表1所示. 可以看出, 相较于ANSYS结果, IGA结果更加接近于理论解而且与理论解的误差小于1‰.
表
1
圆环构件最小和最大米塞斯应力
Table
1.
Minimum and maximum von-Mises stress on circular thin plate
table_type1 ">
${sigma _{min }}$/MPa | ${sigma _{max }}$/MPa | |
theoretical solution | 14.53 | 26.67 |
ANSYS solution (200 elements) | 14.45 | 26.37 |
IGA solution (28 elements) | 14.52 | 26.68 |

导出CSV
|显示表格
4.3
柔性单摆
该算例测试了基于T样条的等几何薄板的动力学特性. 如图8所示, 一个柔性单摆铰接固定在A处. 柔性薄板单摆在重力加速度
m{m}}/{{
m{s}}^2}$


class="figure_img
figure_type1 bbb " id="Figure8" />
图
8
一端铰接的柔性薄板单摆
Figure
8.
Flexible thin plate pendulum

全尺寸图片
幻灯片
表
2
材料参数
Table
2.
Material parameters
table_type1 ">
Parameter | Value |
length $a$/m | 2 |
width $b$/m | 2 |
height $h$/m | 0.01 |
density $ ho $/(kg?m?3) | 7850 |
young’s modulus $E$/MPa | 2 |
poisson ratio $mu $ | 0.3 |

导出CSV
|显示表格
图9给出了含有2 × 2个T样条单元的薄板在1 s内动能
m{k}}}$

m{g}}}$

m{e}}}$

m{t}}}$


class="figure_img
figure_type1 bbb " id="Figure9" />
图
9
能量曲线
Figure
9.
The energy balance curve

全尺寸图片
幻灯片

class="figure_img
figure_type1 bbb " id="Figure10" />
图
10
等几何薄板中T样条单元的收敛性
Figure
10.
Convergence of T-spline element in thin plate

全尺寸图片
幻灯片

class="figure_img
figure_type1 bbb " id="Figure11" />
图
11
含有2 × 2个T样条单元的单摆的连续构型
Figure
11.
Configuration of the pendulum with 2 × 2 T-spline elements

全尺寸图片
幻灯片
4.4
刚性球与柔性板的接触
本算例将T样条局部细化算法应用于柔体动力学分析中. 如图12所示, 一个刚性球从四边固定的薄板中心正上方自由下落. 接触发生后, 对薄板中心受冲击区域进行局部细化. 刚性球与板的参数表3中给出.

class="figure_img
figure_type1 bbb " id="Figure12" />
图
12
自由坠落刚性球与柔性薄板的碰撞
Figure
12.
The collision between a rigid ball and a flexible thin plate

全尺寸图片
幻灯片
表
3
接触算例的参数
Table
3.
Parameters of the contact example
table_type1 ">
Parameter | Name | Value |
the flexible thin plate | length $a$/m | 2 |
width $b$/m | 2 | |
height $h$/m | 0.04 | |
density $;{ ho _1}$/(kg?m?3) | 7850 | |
Young’s modulus $E$/MPa | 20 | |
Poisson ratio $mu $ | 0.3 | |
the rigid ball | radius $R$/m | 0.1 |
density $;{ ho _2}$/(kg?m?3) | 1500 | |
initial position ${{boldsymbol{P}}_{ m{b}}}$ | (1,1,0.2) |

导出CSV
|显示表格
在本算例中, 采用罚值法来完成刚体球与柔性板的接触实现. 在每个T样条单元中, 刚体球与均匀检测点的距离用式(27)表示
$$left. {begin{array}{*{20}{l}} {{{boldsymbol{r}}_{ m{s}}} = {boldsymbol{r}}left( {u,v} ight) + {boldsymbol{n}} cdot dfrac{h}{2}} {p = left| {{{boldsymbol{r}}_{ m{s}}} - {{boldsymbol{r}}_{ m{c}}}} ight| - R} {{boldsymbol{n}} = dfrac{{{{boldsymbol{r}}_u} times {{boldsymbol{r}}_v}}}{{left| {{{boldsymbol{r}}_u} times {{boldsymbol{r}}_v}} ight|}}} end{array}} ight}$$ ![]() | (27) |
式中,

ight)$

m{s}}}$

m{c}}}$




一旦小球与薄板发生接触, 开始计算薄板所受的接触力. 计算切向接触力时, 采用文献[33]中计及临界滑动速度
m{0}}}$


m{n}}^i$

m{t}}^i$

$${boldsymbol{F}}_{ m{n}}^i = -left( {k{p^{1.5}} + c{v_{ m{p}}}left| p ight|} ight) cdot {boldsymbol{n}}$$ ![]() | (28) |
$$begin{split} &{boldsymbol{F}}_{ m{t}}^i = left{ {begin{array}{*{20}{l}} {{ m{ - }}mu left| {{boldsymbol{F}}_{ m{n}}^i} ight|{{boldsymbol{v}}_{{ m{et}}}}},&{left| {{{boldsymbol{v}}_{ m{t}}}} ight| < {{{v}}_0}} {{ m{ - }}dfrac{{left| {{{boldsymbol{v}}_{ m{t}}}} ight|}}{{{{{v}}_0}}}mu left| {{boldsymbol{F}}_{ m{n}}^i} ight|{{boldsymbol{v}}_{{ m{et}}}}},&{left| {{{boldsymbol{v}}_{ m{t}}}} ight| geqslant {{{v}}_0}} end{array}} ight.&{{boldsymbol{v}}_{{ m{et}}}} = dfrac{{{{boldsymbol{v}}_{ m{t}} }}}{{left| {{{boldsymbol{v}}_{ m{t}}}} ight|}}end{split}$$ ![]() | (29) |
式中,
m{p}}}$




m{t}}}$


m{et}}}}$

图13介绍了三种网格构型图. 网格1和网格2都对表面进行了均匀的网格细化, 其单元数量分别为14 × 14和10 × 10. 网格3的初始网格较为粗糙, 含有10 × 10个单元. 当接触发生后, 薄板的接触区域被局部细化, 单元数量由100变为112个. 三组薄板的详细信息见表4.

class="figure_img
figure_type1 bbb " id="Figure13" />
图
13
三组不同的网格构型
Figure
13.
The mesh refinement for three groups

全尺寸图片
幻灯片
表
4
三组薄板的详细信息
Table
4.
The detailed information of three groups
table_type1 ">
Group | Number of control point | Number of element | Element size/m2 |
mesh 1 | 289 | 196 | 1/7 × 1/7 (all region) |
mesh 2 | 169 | 100 | 1/5 × 1/5 (all region) |
mesh 3 | 185 | 112 | 1/10 × 1/10 (contact region) |

导出CSV
|显示表格
图14给出了三组小球球心在1 s内的z向位移曲线. 图15和图16则为三组薄板的质心z向位移曲线与弹性能曲线及其局部放大图. 在
m{s}}$


class="figure_img
figure_type1 bbb " id="Figure14" />
图
14
球心z向位移
Figure
14.
Vertical displacement of the center of the ball

全尺寸图片
幻灯片

class="figure_img
figure_type1 bbb " id="Figure15" />
图
15
薄板质心的z向位移
Figure
15.
Vertical displacement of the plate’s centroid

全尺寸图片
幻灯片

class="figure_img
figure_type1 bbb " id="Figure16" />
图
16
薄板弹性能曲线
Figure
16.
The elastic energy curve of thin plate

全尺寸图片
幻灯片
为了比较不同网格构型的薄板对计算效率的影响, 图17给出了三组薄板的仿真时间柱状图.

class="figure_img
figure_type1 bbb " id="Figure17" />
图
17
计算消耗时间
Figure
17.
Time consumption for three groups

全尺寸图片
幻灯片
三组算例均是在配备Intel Core i5 CPU和8GB RAM的笔记本电脑上执行的. 由图17可知, 网格2与网格3用时接近, 约为网格1计算用时的一半. 值得注意的是, 由于在接触区域附近执行了网格细化, 使得求解收敛更快, 网格3虽然自由度数略多于网格2, 用时反而更少. 这也进一步体现了T样条单元网格局部细化的优势.
图18展示了带有112个T样条单元局部细化薄板在不同时刻的米塞斯应力云图, 分别为
m{s}}$

m{s}}$

m{s}}$

m{s}}$


class="figure_img
figure_type2 ccc " id="Figure18" />
图
18
局部细化薄板的米塞斯应力云图
Figure
18.
von-Mises stress distribution of the locally refined thin plate

全尺寸图片
幻灯片
5.
结论
本文提出了一种基于T样条曲面的等几何分析方法, 建立了使用T样条曲面单元离散的基尔霍夫薄板模型. 单元基函数和节点坐标分别为T样条基函数和控制点坐标, 无需网格划分, 既保证模型的几何精确, 又能在没有约束方程的情况下保证期望的连续性条件. 给出了基于T样条的薄板运动学模型、弹性力模型及其雅克比矩阵的计算方法. 为了体现T样条局部细化特性在减少单元数目、提高计算效率方面的优势, 提出了一种基于T样条单元的局部网格细化算法, 包括单元网格拓扑的改变和相应的新控制点坐标计算方法. 将该细化算法与广义α法相结合, 建立了带有网格局部细化的变自由度系统动力学方程的求解算法. 通过受端弯矩的悬臂薄板以及环形构件受内压的静力学算例证明了T样条单元弹性力模型的正确性. 柔性摆算例验证了T样条单元在动力学问题中的收敛性和机械能守恒特性. 最后, 为验证T样条局部细化特性在模拟接触碰撞等柔性体局部发生应变剧烈变化等问题中的优势, 建立了刚性球落在柔性板上的动力学实例并进行了仿真. 首先, 采用10 × 10单元网格对柔性板进行离散. 接触发生后, 对冲击区域进行局部细化, 得到112个单元的网格. 对10 × 10和14 × 14两种网格进行了仿真, 并将仿真结果作为基准. 可以看到, 112单元网格的计算结果与14 × 14网格具有良好的一致性, 但所消耗的时间只有其1/2. 以上算例证明了基于T样条的局部网格细化等几何薄板在柔性多体系统动力学分析中的应用价值.