一些有限元分析软件没有层合单元,并且不接受在3.2.9节中介绍的A、B、D和H矩阵。然而,如果这些软件有正交各向异性单元,则仍有可能执行复合材料层压板的变形、振动和屈曲分析,这将是本节所要介绍的。
通常使用壳单元对单向层压板建模,即使该单元不是分层的壳,但是仍能获得正确的位移、应变和应力结果。壳的几何是一个面,代表真实壳的中面。中面位于厚度的一半。正的厚度坐标沿法向指向壳中面(局部z方向,与3方向一致)这是壳法向的定义,并且用于壳单元,如例3.2所示。
解3.2 厚度坐标从控制方程中去除后,3D问题简化为2D。在计算过程中,厚度变为一个已知参数提供给建模软件。建模和求解过程如下:
菜单:File,Save as [C:\SIMULIA\User\Ex_3.2\Ex_3.2.cae]
菜单:File,Set Work Directory [C:\SIMULIA\User\Ex_3.2]
i. 创建部件
由于板对称,所以只创建1/4模型。
模块:Part
菜单:Part,Create,
[Part-1],3D,Deformable,Shell,Planar,Approx. size [4000],Cont
菜单:Add,Line,Rectangle,
# 输入点[0,0],[2000,1000],X # 结束命令,Done
ii. 创建材料和截面,并赋截面给部件
模块:Property
菜单:Material,Create,
Mechanical,Elasticity,Elastic,Type:Orthotropic,
# 输入刚度矩阵各元素的值,OK
注意,在Abaqus中的刚度矩阵与式1.68中的顺序不同。在Abaqus中
菜单:Section,Create,
Shell,Homogeneous,Cont
Shell thickness [10],Material [Material-1],OK
菜单:Assign,Section,# 选取部件,Done,OK
在Abaqus/CAE中,还可以使用Engineering Constants(9个值)或Lamina(5个值1)来输入材料参数。
1对于横观各向同性材料,考虑G12=G13。
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 创建分析步
模块:Step
菜单:Step,Create,Name [Step-1],Static/General,Cont,OK
v. 添加边界条件和载荷
模块:Load
菜单:BC,Manager,
Create,Name [X-symm],Step:Initial,
Mechanical,Symm/Anti/Enca,Cont
# 选取左侧竖直边,Done,XSYMM,OK
Create,Name [Y-symm],Step:Initial,
Mechanical,Symm/Anti/Enca,Cont
# 选取上侧水平边,Done,YSYMM,OK
Create,Name [Simple-supp],Step:Initial,
Mechanical,Disp/Rota,Cont
# 选取右侧竖直边和下侧水平边,Done,
# 勾选:U3,OK,# 关闭边界条件管理器
菜单:Load,Create
Step:Step-1,Mechanical,Pressure,Cont
# 选取部件,Done,
# Select side for the shell,Brown,Magnitude [0.12e-3],OK
vi. 创建网格
模块:Mesh
菜单:Seed,Instance,Approximate global size [50],Apply,OK
菜单:Mesh,Controls,Element Shape [Quad],Technique [Structured],OK
菜单:Mesh,Instance,# 在工作区底部选择[Yes]
vii. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK
Data Check # 检查模型是否有错,
Submit # 运行模型
Results # 可视化结果
工具条:Views,Apply Front View
菜单:Plot,Contours,On Deformed Shape,
Results,Field Output,
Output Variable [U],Component [U3],Apply,OK
板中心点的最大位移为17.43mm。
如果多方向的层压板为均衡对称铺层,表观层压板正交各向异性特性可以使用1.15节的方法得到。表观层压板特性代表等效(假想的)正交各向异性板的刚度,在面内载荷作用时,该板的行为如同真实层压板。这些表观特性不应该用于预测弯曲响应。当仅有的重要响应为弯曲时,例如悬臂厚板受弯,应该使用参考文献[1,式6.36]中的公式计算得到表观层压板特性。然而,在大多数结构设计中使用复合材料壳,层压板在面内载荷作用下工作,应该使用1.15节中的公式。
如果层压板是对称但不均衡的,则正交各向异性的轴将关于层压板坐标系转动一定角度,但根据1.15节,层压板仍等效为正交各向异性材料。例如,在全局坐标系下方向为θ角的一个单向层压板应该在沿纤维方向的坐标系下建模(见3.2.14节)。
解3.3 因为层压板为均衡对称铺层,使用1.15节计算平均的层压板特性参数Ex、Ey等,可得
在Abaqus中的建模过程如下:
菜单:File,Save as,[C:\SIMULIA\User\Ex_3.3\Ex_3.3.cae]
菜单:File,Set Work Directory,[C:\SIMULIA\User\Ex_3.3]
i. 创建部件
由于假设板是对称的,所以只对板的1/4建模。
模块:Part
菜单:Part,Create,
[Part-1],3D,Deformable,Shell,Planar,Approx. size [4000],Cont
菜单:Add,Line,Rectangle,
# 输入点[0,0],[1000,1000],X # 结束命令,Done
ii. 创建材料和截面,并赋截面给部件
模块:Property
菜单:Material,Create,
Mechanical,Elasticity,Elastic,Type [Orthotropic],
# 输入复合材料刚度矩阵的值,OK
注意,在Abaqus中的刚度矩阵与式1.68中的顺序不同。在Abaqus中
将上述数据输入Abaqus/CAE,并进行以下操作。
菜单:Section,Create,
Shell,Homogeneous,Cont
Shell thickness [6],Material [Material-1],OK
菜单:Assign,Section,# 选取部件,Done,OK
此外,还可以在Abaqus/CAE的Edit Materials对话框中选择Engineering Constants(9个值)并输入材料参数。
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 创建分析步
模块:Step
菜单:Step,Create,Name [Step-1],Static/General,Cont,OK
v. 添加边界条件和载荷
模块:Load
菜单:BC,Manager,
Create,Name [X-symm],Step:Initial,Mechanical,
Symm/Anti/Enca,Cont
# 选取左侧竖直边,Done,XSYMM,OK
Create,Name [Y-symm],Step:Initial,Mechanical,
Symm/Anti/Enca,Cont
# 选取上侧水平边,Done,YSYMM,OK
Create,Name [Simple-supp],Step:Initial,Mechanical,
Disp/Rota,Cont
# 选取右侧竖直边和下侧水平边,Done,
# 勾选:U3,OK,# 关闭边界条件管理器
菜单:Load,Create
分析步:Step-1,Mechanical,Shell edge load,Cont
# 选取右侧竖直边,Done,Magnitude [-200],OK
vi. 创建网格
模块:Mesh
菜单:Seed,Instance,Approximate global size [50],Apply,OK
菜单:Mesh,Controls,Element Shape [Quad],Technique [Structured],OK
菜单:Mesh,Instance,# 在工作区底部选择[Yes]
vii. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK
Data Check # 检查模型是否有错,
Submit # 运行模型
Results # 可视化结果
# 单击Views工具条中的Apply Front View
菜单:Plot,Contours,On Deformed Shape,
Results,Field Output,
Output Variable [U],Component [U1],Apply,OK
在板的右边上的最大位移为1.667mm。
在1/4板模型上得到的最大水平位移为1.667mm。对于[±45/0]S的板,x = 0和y = 0的平面不是该板的对称面,但是一旦用等效正交各向同性材料参数代替层压板,如同本例所示,将消除在单向板水平的不对称性,并且对中面位移没有任何影响。因此,只要不进行应力分析,用1/4板可以很好的代表整块板。另外,位移和中面的应变分析可以使用等效正交各向异性材料代替层压板。然而,即使对整块板建模,使用等效正交各向异性材料得到的应力值也不是层压板的真实应力值。虽然在本例中分析的材料不是均质的,而是分层的,但是例3.2中的材料是均质单向材料。因此,本例中的应力值不准确,而例3.2中的应力是准确的。
如果层压板是非对称的,则必须要考虑拉-弯耦合。严格地说,这种材料不是正交各向异性的,不能用等效层压板材料建模。尽管如此,如果只有正交各向异性壳单元可用,并且拉-弯耦合效应不严重,则材料可以用忽略矩阵B和D的正交各向异性材料近似。可用参考文献[1,式6.37~6.39]定义的比率来评估由表观弹性特性得到的近似值的质量。必须注意非均衡层压板,因为矩阵A和H的公式所用的坐标系与层压板正交各向异性的轴一致。
对于在中尺度(单层板水平)计算应变和应力,需要知道层压板的描述和每个单层板的性能。多向层压板的描述包括层压板铺层顺序(即指定每一单层板相对于层压板x轴的角度)、厚度和每一单层板的弹性材料特性参数。软件在内部计算矩阵A、B、D和H。这样,软件可以计算每一层内的应力分量。该方法在例3.4中介绍。在Abaqus/CAE中,层压板铺层顺序可用两种方法定义,使用复合材料截面和复合材料铺层。
复合材料截面是基本工具,允许用户定义层压板铺层顺序。该方法与其他类型截面(例如实体、壳、梁、杆等)的经典定义和赋与操作没有不同。首先,定义一种或多种材料,材料类型可以是各向同性、工程常数、单层板、正交各向异性或非各向同性。在CAE中,操作如下:
模块:Property
菜单:Material,Create,Mechanical,Elasticity,Elastic,Type:Lamina
其次,定义层压板截面如下。
模块:Property
菜单:Section,Create,Category:Solid,Composite,Cont
Material:[select],Thickness:[value],Orientation Angle:[value],
Integration Points:[value],Ply name:[value]
注意,类别可以根据打算使用的单元类型选择壳或实体。连续壳单元(例如SC8R)、薄壳单元(例如S8R5)和通用壳单元(例如S8R)需要壳类型的复合材料截面。实体单元(例如C3D20)需要实体类型的复合材料截面。
实体单元可以定义铺层,但是位移变化最高为二阶。因此,应变变化最多为线性。这通常不足以模拟应变在层压板厚度方向的变化。为了减轻该问题,可以堆叠多层实体单元,甚至将每个铺层划分为多层实体单元。然而,由于长厚比的限制,如果实体单元的厚度为单层板的厚度,则单元另外两个尺寸不应该比厚度大10倍以上。这将导致非常细的网格,并导致求解的计算耗费非常高。
对于定义的每个截面,Edit Section对话框允许用户定义层压板铺层顺序,通过给定每个单层板在层压板中的一些数据实现,如材料、厚度、方向角度、积分点和铺层名称。铺层名称是可选项,但是推荐使用,因为铺层名称有助于对结果的理解。材料可由从预先定义的材料中选取。厚度和方向要求输入数据。对于积分点,最好使用默认值,即使用Simpson积分法的3个点。对于该方法,每个单层板的每个表面有一个点,中间有一个点。对于结果可视化,这是最理想的,如果用户记得修改场输出变量如下:
模块:Step
菜单:Output,Field Output Requests,Edit,F-Output-1,
Output at shell,Specify:1, 2, 3
此处,1,2,3,...,3N是沿壳的厚度方向分布的Simpson点,N为层压板中单层板的层数。那么,后处理可以通过如下选择完成。
模块:Visualization
菜单:Results,Section Points,Selection method:Plies,
Plies:[select],
Ply result location:[Bottommost, Middle/Single, Topmost, Top & Bottom]
如果用户选择Top & Bottom,则显示层压板表面的结果。如果一个面不在视图中,只需旋转模型即可看到该面。
第三,用户必须用经典方法将截面赋给区域。如果使用常规壳单元和通用壳单元,则该区域为平面或曲面,即2D壳。如果使用连续壳单元,则该区域为3D实体。
如果使用常规壳单元和通用壳单元,则在复合材料截面中定义整个层压板铺层顺序,并赋给一个区域。连续壳单元可能横贯壳的整个厚度,该情况下,赋截面的方法类似,将一个复合材料截面赋给每一个区域(原文each flat/curved surface,surface不对,应该为solid)。然而,连续壳单元可以堆叠。通过对3D区域沿厚度方向分割,限定每层连续壳单元的区域,以此实现连续壳单元在厚度方向的堆叠。在这种情况下,每个区域可以赋予不同的复合材料截面。每层连续壳单元可以通过相关的复合材料截面定义多层铺层。
复合材料铺层是定义层压板铺层顺序的一种替代方法。复合材料铺层的区域概念不同于经典CAE中常用的区域概念。复合材料铺层必须与贯穿区域厚度的单个单元相关。如果一个复合材料铺层覆盖一个区域厚度方向细化的网格,则沿厚度方向的每一个单元都具有该复合材料铺层定义的铺层,这将导致错误的结果。
使用复合材料铺层,用户既不需要创建截面,也不需要将截面赋予一个区域。而是由复合材料铺层同时完成定义和赋予操作。如果错误地对同一个区域同时使用了复合材料截面和复合材料铺层,则复合材料铺层将覆盖前者。
调用复合材料铺层对话框如下:
模块:Property
菜单:Composite,Create
至此,用户需要决定创建哪种类型的截面:常规壳、连续壳或实体。连续壳单元(例如SC8R)、薄壳单元(例如S8R5)及通用壳单元(例如S8R)需要一个壳类型的复合材料截面。实体单元(例如C3D20)需要实体类型的复合材料截面。
编辑复合材料铺层对话框(图3.9)有四个标签页:Plies、Offset、Shell Parameters和Display(译者注:定义连续壳的复合材料铺层时,没有Offset标签页;定义实体的复合材料铺层时,没有Offset和Shell Parameters标签页)。层压板铺层顺序在Plies标签页中指定。参考面的位置在Offset标签页中给出。厚度方向弹性模量(Thickness modulus)在Shell Parameters标签页中指定。
图3.9 使用Composite Layup特征输入层压板铺层顺序
在Plies标签页中有7列:Ply Name(铺层名称)、Region(区域)、Material(材料)、Relative Thickness(相对厚度)、CSYS(用户坐标系)、Rotation Angle(转角,铺层角度)以及Integration Points(积分点)。铺层名称是可选的,但是推荐使用,因为它有助于理解结果。区域将铺层绑定到所选区域。材料是从预先定义的材料中选择。铺层相对厚度是比例系数,用于根据单元的厚度确定铺层的厚度,单元厚度由网格给出。相对厚度不必是真实厚度,也不必加起来等于1.0。在指定与模型全局坐标系相关的铺层方向时,用户坐标系提供了附加的灵魂性。从根本上说,用户坐标系允许用户将层压板坐标系作为整体进行转动。对于积分点,最好使用默认值,即使用Simpson积分法的3个点。这样,在每个单层板的两个表面和中间各有一个点。对于结果可视化,这是最理想的,如果用户记得修改场输出变量,如同3.2.11节所介绍的一样。
a. 使用常规壳单元,
b. 使用通用壳单元,
c. 使用复合材料截面和连续壳单元,板厚度方向划分一层单元,
d. 使用复合材料铺层和连续壳单元,板厚度方向划分多层单元。
本例在例3.12中继续。
解3.4 部件(a)和(b)涉及常规壳单元,使用无厚度的网格。因此,对于部件(a)和(b),模型的大部分独立于单元类型。注意,层压板铺层顺序从层压板底部的#1铺层开始。对整板建模,而没有采用对称,对节点的约束用于解释如何消除模型的刚体 位移。下面的伪代码给出了整个过程。如果有疑问,可以打开从参考文件[5]获取的Ex_3.4.cae。
i. 确保.cae文件保存在正确位置。可以将工作路径设置为保存.cae文件的文件夹。
菜单:File,Save as [c:\simulia\user\Ex_3.4\Ex_3.4.a.cae]
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.4]
ii. 创建部件
模块:Part,
菜单:Part,Create,
Name [Part-1],3D,Deformable,Shell,Planar,Approx size [2000],Cont
菜单:Add,Line,Rectangle,[-1000,-1000],[1000,1000],X,Done
iii. 创建材料、截面并赋截面给部件
模块:Property
菜单:Material,Create,Name [Material-1],Mech.,Elast.,Elastic,
Type [Engineering Constants],
# 注意:可以从Excel中剪切和粘贴正行数值
[1.3386E 057.7060E 037.7060E 033.0100E-013.0100E-01
3.9600E-014.3060E 034.3060E 032.7600E 03],OK
菜单:Section,Create,Shell,Composite,Cont
# 勾选:Symmetric layers
Integration [Simpson]
# 右单击插入行,直到有4行
Material [Material-1] # 对所有
Thickness [1.25] # 对所有
Orientation [0,90,45,-45]
Integration points [3,3,3,3] # 结果在每层的底部/中间/顶部
Ply Names [k1,k2,k3,k4],OK,# k1:底部,k4:中间
# 由于对称,CAE 添加[-45,45,90,0] 到模型,
菜单:Assign,Section,# 选取部件,Done,OK
iv. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
v. 创建分析步
模块:Step
菜单:Step,Create,Name [Step-1],Static/General,Cont,OK
菜单:Output,Field Output Requests,Edit,F-Output-1
Step:Step-1,Output variables:
# 不要选择所有变量,# 只选择所需要的:S、E、U、RF
# 要求在8x3=24个点上(8层,每层3个Simpson点)
# 在壳和分层的截面点上输出:
Specify:[1,..., 24],OK # 列出所有铺层的,从1到24
vi. 添加载荷
模块:Load
# 因为部件是壳,边载荷为:Shell edge load
菜单:Load,Create,Name [Load-1],Step:Step-1,Mechanical,
Shell edge load,Cont
# 选取x=-1000和x=1000的边,Done,Magnitude [-100],OK
为了在设置边界条件时区分要施加约束的节点集 合,现在需要划分网格。
vii. 创建网格
模块:Mesh
菜单:Seed,Instance,Approx global size [100],Apply,OK
菜单:Mesh,Controls,Element Shape [Quad],Technique [Structured],OK
菜单:Mesh,Element Type,Std,Quad,DOF [5],OK # 单元S8R5
菜单:Mesh,Instance,Yes
菜单:Tools,Set,Manager
Create,[center],Node,Cont,# 中点,Done
Create,[y-hold],Node,Cont,# 在(-1000,0) 和(1000,0)处的节点,Done
Create,[edges],Node,Cont,# 板边上的节点,Done
# 关闭Set Manager对话框
viii. 添加边界条件
模块:Load
菜单:BC,Manager
Create,Name [edges],Step:Initial,Mechanical,Disp/Rota,Cont
Sets,# 在Region Selection对话框中,[edges],Cont
# 勾选:U3,OK
Create,Name [center],Step:Initial,Mechanical,Disp/Rota,Cont
# 在Region Selection对话框中,[center],Cont
# 勾选:U1、U2和U3,OK
Create,Name [y-hold],Step:Initial,Mechanical,Disp/Rota,Cont
# 在Region Selection对话框中,[y-hold],Cont
# 勾选:U2和U3,OK
# 关闭BC Manager对话框
ix. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,
Submit # 运行模型
Results # 可视化结果
菜单:Viewport,Viewport Annotation Options,标签页:State Block,
Set font,Size [12],Apply to [# 勾选所有],OK,OK
菜单:Plot,Undeformed Shape,
菜单:Plot,Allow Multiple Plot States,
菜单:Plot,Deformed Shape,
菜单:Plot,Material Orientations,On Deformed Shape
# 默认显示0°铺层底部积分点
菜单:Result,Section Points,Plies,# 选择K1,Apply
# 重复操作可视化所有铺层的方向,OK
菜单:Plot,Contour,On Deformed Shape,
Field Output Toolbox,Primary,S,S12 # 层压板应力分量6
菜单:Result,Section Points,Plies,# 选择K1,Apply
# 重复操作可视化所有铺层的S12,OK
# 选择铺层K1,Apply # 应力_6(K1) = 0.0
# 选择铺层K2,Apply # 应力_6(K2) = 0.0
# 选择铺层K3,Apply # 应力_6(K3) = -1.112
# 选择铺层K4,Apply # 应力_6(K4) = 1.122,OK
(a) 使用薄壳单元的解
在上面给出的过程中,选择常规壳单元S8R5的操作如下:
模块:Mesh
菜单:Mesh,Element Type,Standard,Quadratic,DOF [5],OK
上述操作将选择S8R5单元。可以很方便地保存本例的该求解方案,并且修改模型后求解部件(b)。
菜单:File,Save as [c:\simulia\user\Ex_3.4\Ex_3.4.a.cae],OK
在单层板坐标系下可视化单层板应力,可得
分别在0°、90°、45°、-45°铺层。这些结果可以与参考文献[12]得到的经典层压板理论(CLT)结果对比验证。
(b) 使用通用壳单元的解
将分析从薄壳改为通用壳,只需要改变单元类型,通过选择DOF [6],如下:
菜单:File,Save as [c:\simulia\user\Ex_3.4\Ex_3.4.b.cae],OK
模块:Mesh
菜单:Mesh,Element Type,Standard,Quadratic,DOF [6],OK # S8R
这样将选择S8R单元——二阶通用减缩积分(厚/薄)壳单元。将作业重新提交分析。因为本例没有涉及弯曲,结果与部件(a)的完全相同。
(c) 使用连续壳单元和复合材料截面的解(原文 in a composite shell错误shell→section)
为了使用连续壳单元,几何模型必须为实体,本例中模型尺寸为2000×2000×10mm。
i. 保存模型,设置工作路径
菜单:File,Save as [c:\simulia\user\Ex_3.4\Ex_3.4.c.cae]
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.4]
ii. 创建部件
模块:Part
菜单:Part,Create,
Name [Part-1],3D,Deformable,Solid,Extrusion,size [2000],Cont
菜单:Add,Line,Rectangle,[-1000,-1000],[1000,1000],X,Done,
Depth [10],OK
iii. 创建材料、截面并赋截面给部件
模块:Property
菜单:Material,Create,Name [Material-1],Mech.,Elast.,Elastic,
Type [Engineering Constants],
# 注意:可以从Excel中剪切和粘贴一整行数值
[1.3386E 057.7060E 037.7060E 033.0100E-013.0100E-01
3.9600E-014.3060E 034.3060E 032.7600E 03],OK
菜单:Section,Create,[Section-1],Shell,Composite,Cont
# 右单击插入行,直到有8行
Material [Material-1] # 对于所有,Thickness [1.25] # 对于所有
Orientation [0,90,45,-45,-45,45,90,0],
Integration points [3] # 对于所有
Ply Names [PLY-1,PLY-2,PLY-3,PLY-4,PLY-5,PLY-6,PLY-7,PLY-8],OK
菜单:Assign,Section,# 选取部件,Done,OK
iv. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
v. 创建分析步
模块:Step
菜单:Step,Create,Name [Step-1],Static/General,Cont,OK
菜单:Output,Field Output Requests,Edit,F-Output-1
Step:Step-1,Output variables:
# 不要选择所有变量,# 只选择所需要的:S、E、U、RF
# 要求在8x3=24个点上(8层,每层3个Simpson点)
# 在壳和分层的截面点上输出:
Specify:[1,...,24],OK # 1,2,3,4,...
vi. 添加载荷
模块:Load
菜单:Load,Create
Name [Load-1],Step:Step-1,Mechanical,Surface traction,Cont
# 厚度为10mm时,100 N/mm 的边载荷等于10 N/mm2面载荷
# 放大板的右上角
# 选取x=1000的面,Done,
Distribution [Uniform],Traction [General],
Vector,Edit,[0,0,0],[1,0,0],Magnitude [10],OK
# 重复上述操作,在 x=-1000 的面上施加10 N/mm2的拉力,
# Name [Load-2] and direction [-1,0,0]
为了区分设置边界条件时施加约束的节点,需要现在对模型划分网格。
vii. 创建网格
模块:Mesh
菜单:Seed,Instance,Approx global size [100],OK
菜单:Mesh,Controls,# 如果需要,选择整个部件,Done,
Element Shape [Hex],Technique [Sweep],OK
菜单:Mesh,Element Type,# 如果需要,选择整个部件,Done,
Family [Continuum Shell],# 已选择单元SC8R,OK
菜单:Mesh,Instance,Yes
# 创建节点集 合,以便对模型施加边界条件
Views工具条,Front View # 更好视图
菜单:Tools,Set,Manager
Create,Name [edges],Type [Node],Cont
# 选择沿板边的所有节点,Done
Create,Name [center],Type [Node],Cont
# 选择板中点(x=0,y=0),Done
Create,Name [y-hold],Type [Node],Cont
# 选择坐标为(x=-1000,y=0) 和(x=1000,y=0)的点,Done
# 关闭Set Manager对话框
viii. 施加边界条件
模块:Load
菜单:BC,Manager
Create,Name [edges],Step:Initial,Mechanical,Disp/Rota,Cont
Sets,# 在Region Selection对话框,[edges],Cont
# 勾选:U3,OK
Create,Name [center],Step:Initial,Mechanical,Disp/Rota,Cont
# 在Region Selection对话框,[center],Cont
# 勾选:U1,U2和U3,OK
Create,Name [y-hold],Step:Initial,Mechanical,Disp/Rota,Cont
# 在Region Selection对话框,[y-hold],Cont
# 勾选:U2和U3,OK
# 关闭BC Manager对话框
ix. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,
Submit # 运行模型
Results # 可视化结果
菜单:Viewport,Viewport Annotation Options,标签页:State Block,
Set font,Size [12],Apply to [# 勾选所有],OK,OK
菜单:Plot,Undeformed Shape,
菜单:Plot,Allow Multiple Plot States,
菜单:Plot,Deformed Shape,
菜单:Plot,Material Orientations,On Deformed Shape
菜单:Result,Section Points,Plies,# 选择PLY-1,Apply
# 重复操作,显示所有铺层的方向,OK
菜单:Plot,Contour,On Deformed Shape,
Field Output Toolbox,Primary,S,S12 # 层压板应力Stress_6
菜单:Result,Section Points,Plies,# 选择PLY-1,Apply
# 重复操作,显示所有铺层的应力S12,OK
(d) 使用连续壳单元和复合材料铺层的解
为了使用复合材料铺层模拟层压板,要对实体部件进行分割,每一部分对应层压板的一个铺层。创建部件及修改如下:
i. 创建部件
模块:Part
菜单:Part,Create,
Name [Part-1],3D,Deformable,Solid,Extrusion,size [2000],Cont
菜单:Add,Line,Rectangle,[-1000,-1000],[1000,1000],X,Done,
Depth [10],OK
# 放大板的右上角
# 将板沿厚度方向分为8部分
菜单:Tools,Partition,Type [Edge],Method [Enter parameter]
# 选取边,Done,Normalized edge param [0.5],Create Partition
# 重复操作,直到将边分割为8段,Done
# 在Create Partition对话框中选择
Type [Cell],Method [Define cutting plane],Point & Normal,
# 选取上面定义的一个点(从板的顶部开始),
# 选取边作为法向(沿z轴正方向),
Create Partition # 创建第一个区域作为顶部铺层
# 选取区域并分割,Done,
Point & Normal,# 重复上述操作过程,
# 当分割创建完8个区域后,Done,# 关闭对话框
材料特性定义必须进行如下修改。
ii. 创建材料并赋材料给部件(原文:创建材料和截面并赋截面给部件)
模块:Property
菜单:Material,Create,Name [Material-1],Mech.,Elast.,Elastic,
Type [Engineering Constants],
# 注意:可以从Excel中剪切和粘贴一整行数值
菜单:Composite,Create
Initial ply count [8],Element Type [Continuum Shell],Cont
Thickness integration rule [Simpson]
# 在Region列双击Ply-1对应的单元格,
# 选取层压板的顶部区域,Done,# 对其他铺层重复操作
# 在Material 列双击Ply-1对应的单元格,
Material [Material-1],OK
# 重复操作,给其他铺层赋材料
Element Relative Thickness [1] # 对于所有铺层
Rotation Angle [0, 90, 45, -45, -45, 45, 90, 0] # 每个铺层对应一个角度
Integration points [3] # 对于所有铺层,OK
剩余操作求解过程与(c)部分的步骤相同。
有时,在壳的底面(或顶面)设为参考面比较方便。一个这样的情况就是层压板有丢层时,如图3.10所示。当设计要求减小层压板的厚度时,可以从壳厚的部分向薄的部分逐渐打断、减少铺层。根据经验,丢层坡度应该限制在1:16到1:20的比率(图3.10中厚度与长度的比值Th:L),除非详细分析和/或试验支持的更大坡度的比值。对于这种情况,指定光滑面或模具面的几何比较方便。
图3.10 长L和厚Th的铺层丢层及有限元模型简化
那么每次丢掉一个铺层或一组铺层,则那些单元的材料和厚度将变化。这将在下一个例子中介绍。不是所有的软件都有这样的功能,也许有必要假设中面是光滑的,而实际上只有模具面是光滑的。只有厚度与结构的其他两个尺寸相比非常小时,这样的假设不会显著影响全局分析结果,例如变形、屈曲甚至膜应力分析。当要求对丢层区域进行详细的3D应力分析时,则对几何厚度的精确描述将发挥作用,但是在这种情况下,3D局部模型更合适。
每段层压板(A、B和AB)的中面相对于平的底面偏移不同的z距离。因此,在共同的底面加载比较好。然而,这会引入一个弯矩,因为拉力相对于加载边的中面有一定的偏移。该影响很容易通过施加一个等效的弯矩纠正,该弯矩等于拉力乘以层压板加载边厚度的一半,但是在本例中没有这样处理以强调产生的变形。
底层单层板指定为#1。增加的单层板沿单元坐标系法向 z方向从底向上堆叠。板的表面在x-y平面,x-z平面为板的对称面(YSYMM)。模型左侧(层压板A)较厚的一端可以施加Encastre-condition约束;这样可以保证关于y-z平面的对称条件。
材料特性在Edit Material对话框(图3.11)中定义,但是这样相当乏味。如果参数在Excel中列出,或者在文件中用制表符(键盘的Tab键)分隔,则可以直接剪切和粘贴到Edit Material对话框中。另外,可以通过网络服务[18]从CADEC数据库中直接读取材料参数。
图3.11 Edit Material对话框
层压板铺层顺序(LSS)在Edit Section对话框中定义,打开对话框的方法如下:
模块:Property
菜单:Section,Create,Shell,Composite,Cont
在Edit Section对话框(图3.12)中,第一行对应单层板#1,该层位于层压板的底层。后续各行用于定义有n层单层板的层压板的铺层顺序。最后一行相当于层压板最上层单层板。注意,对单层板的命名k1、k2、k3、k4,沿用了单层板的编号,即单层板#1为曾一般的最底层。
图3.12 用Edit Section对话框定义层压板铺层顺序
当在后面对结果进行可视化后处理时,需要选择在什么位置显示结果。也就是,需要选择单层板和单层板厚度方向的位置。可以通过调用Section Points对话框进行选择,如下:
模块:Visualization
菜单:Results,Section Points,Selection method:[Plies]
在Section Points对话框(图3.13)中,K4、Topmost选择层压板上表面的结果。同理,K1、bottommost选择层压板底面的结果。
图3.13 截面点用于选择在每个单层板的顶和/或底显示结果
下面的伪代码介绍整个操作过程。如果有疑问,可以打开从参考文献[5]获得的Ex_3.5.cae。为了节省空间,材料和截面的创建通过运行.py脚本文件实现,但是,也可以使用前面例子中介绍的方法来定义。
# 单位:N、mm、MPa
菜单:File,Save as [c:\simulia\user\Ex_3.5\Ex_3.5.cae]
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.5]
i. 创建部件
模块:Part
菜单:Part,Manager
Create,[Part-A],3D,Deformable,Shell,Planar,
Approx size [500],Cont
菜单:Add,Line,Rectangle,[0,0],[60,50],X,Done
Create,[Part-AB],3D,Deformable,Shell,Planar,
Approx size [500],Cont
菜单:Add,Line,Rectangle,[60,0],[90,50],X,Done
Create,[Part-B],3D,Deformable,Shell,Planar,
Approx size [500],Cont
菜单:Add,Line,Rectangle,[90,0],[120,50],X,Done
# 关闭Part Manager对话框
ii. 创建装配
模块:Assembly
菜单:Instance,Create,[Part-A],
Independent,# 不勾选Auto-offset,OK
菜单:Instance,Create,[Part-AB],
Independent,# 不勾选Auto-offset,OK
菜单:Instance,Create,[Part-B],
Independent,# 不勾选Auto-offset,OK
菜单:Instance,Merge/Cut,Intersecting Boundaries:Retain,Cont
# 全选,Done,# 创建Part-1
# 在模型树,展开Assembly,展开Instances
右单击Part-1,Make Independent
iii. 创建材料、截面并赋截面给部件
模块:Property
# 显示整个部件Part-1,环境栏设置如下:
模块:[Property],Model:[Model-1],Part:[Part-1]
# 运行.py脚本文件创建材料
菜单:File,Run Script,[AS4D--9310.py],OK
# 运行.py脚本文件创建截面
菜单:File,Run Script,[laminate-A.py],OK
菜单:File,Run Script,[laminate-AB.py],OK
菜单:File,Run Script,[laminate-B.py],OK
# 回忆一下,从底到顶,截面A 为[90/0/0/90],
# 截面B为[90/0],截面AB为[90/0/0]
菜单:Section,Assignment Manager
Create,# 选取区域/部件Section-A,Done
Section:[Section-A],Shell Offset Definition:[Bottom Surface],OK
Create,# 选取区域/部件Section-AB,Done
Section:[Section-AB],Shell Offset Definition:[Bottom Surface],OK
Create,# 选取区域/部件Section-B,Done
Section:[Section-B],Shell Offset Definition:[Bottom Surface],
OK # 关闭the Section Assignment Manager对话框
Done # 关闭当前命令
iv. 定义分析步
模块:Step
菜单:Step,Create,Name [Step-1],Static/General,Cont,OK
菜单:Output,Field Output Request,Edit,F-Output-1
Output at shell,Specify [1,2,3,4,5,6,7,8,9,10,11,12],OK
v. 添加边界条件和载荷
模块:Load
菜单:BC,Manager
Create,[BC-1],Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=0的边,Done,Encastre,OK
Create,[BC-2],Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取y=0的3段,Done,YSYMM,OK,# 关闭BC Manager对话框
# 因为部件为壳,边载荷为:Shell edge load
# 载荷施加在赋截面时定义的偏置面上
菜单:Load,Create
[Load-1],Step:Step-1,Mechanical,Shell edge load,Cont
# 选取x=120的边,Done,Magnitude [-10],OK
vi. 创建网格
模块:Mesh
菜单:Seed,Instance,Approx global size:[5],Apply,OK
菜单:Mesh,Controls,# 选择所有区域,Done
Element Shape [Quad],Technique [Structured]
菜单:Mesh,Element Type,# 选择所有区域,Done
Standard,Quadratic,DOF [6],OK # 单元选为S8R
Mesh,Instance,Yes
vii. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,Submit # 当结束后,Results
模块:Visualization
菜单:Viewport,Viewport Annotation Options,
标签页:State Block,Set Font,Size [10],Apply to [checkmark all],
OK,OK
菜单:File,Save Options,OK # 保存设置,以备后用
菜单:Plot,Undeformed Shape
菜单:Plot,Allow Multiple Plot States
菜单:Plot,Deformed Shape # 可以看到两个形状
菜单:Plot,Contours,On Deformed Shape
Field Output工具条,[Primary],[U],[U3]
# 从图例左上角读取最大值,U3=2.578 mm
Field Output工具条,[Primary],[S],[S11]
# 接下来选择每个单层板的上表面或下表面
菜单:Result,Section Points
Selection method:[Plies],K1,Bottommost,Apply
# 对其他铺层重复上述操作
Selection method:[Plies],K1,topmost,Apply
# 对其他铺层重复上述操作
# 灰色 区域表示该铺层不在那个区域
最大挠度为w = 2.578mm。最大应力值在表3.3中列出。
表3.3 例3.5中计算得到的应力
图3.14 有丢层的层压板
解3.6 本例中,介绍使用分割工具将板分为3个区域。对于丢层坡度比1:10,过渡段长度为2×1.2×10=24mm,丢层区在中心线两侧各12mm。中心线距左边60mm,过渡区在48mm到72mm之间。底层单层板指定为#1单层板。附加单层板沿单元坐标系正法向从底向上堆叠。其中丢掉的单层板为#3和#4。下面的伪代码介绍整个过程。如果有疑问,可以打开从参考文献[5]获得的Ex_3.6.cae。
# 单位:N,mm,MPa
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.6]
菜单:File,Save As [Ex_3.6.cae]
i. 创建部件
模块:Part
菜单:Part,Create
[Part-1],3D,Deformable,Shell,Planar,Approx size [300],Cont
菜单:Add,Line,Rectangle,[0,0],[120,50],X,Done
# 为不同区域创建3个分区
菜单:Tool,Datum,Plane,Offset from principal plane
[YZ Plane],[48],Enter,[YZ Plane],[72],Enter,X
# 关闭Create Datum对话框
菜单:Tools,Partition,Face,Use datum plane,
# 选取一个基准面,Create Partition
# 选取要分割的面(还未分割的区域),Done
# 选取基准面,Create Partition,Done
# 关闭Create Partition对话框
ii. 创建材料、截面并赋截面给部件
模块:Property
菜单:Material,Create
Name [AS4D--9310],Mechanical,Elasticity,Elastic,Type [Lamina]
# 可以从Excel中剪切和粘贴整行数值
[1.3386E5, 7.706E3, 0.301, 4.306E3, 4.306E3, 2.76E3],OK
# 或者如同前例使用一个.py文件创建材料
菜单:Section,Manager
Create,Name [Section-A],Shell,Composite,Cont
# 右单击添加行,直到有5行
Material [AS4D--9310] # 对于所有,Thickness [1.2] # 对于所有
Orientation [45,-45,0,90,0],Integration points [3,3,3,3,3]
Ply names [k1,k2,k3,k4,k5],OK
Copy,[Section-AB],OK,Edit,# 删除中间铺层(k3),OK
Copy,[Section-B],OK,Edit,# 删除中间铺层(k4),OK
# 关闭Section Manager对话框
菜单:Section,Assignment Manager
Create,# 选取左侧区域,Done
Section [Section-A],Shell Offset [Bottom surface],OK
Create,# 选取中间区域,Done
Section [Section-AB],Shell Offset [Bottom surface],OK
Create,# 选取右侧区域,Done
Section [Section-B],Shell Offset [Bottom surface],OK,Done
# 关闭Section Assignment Manager对话框
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 定义分析步
模块:Step
菜单:Step,Create
Name [Step-1],Procedure type:General,Static/General,Cont,OK
菜单:Output,Field Output Request,Edit,F-Output-1
Specify [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],OK
v. 添加边界条件和载荷
模块:Load
菜单:BC,Create
Name [BC-1],Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=0的边,Done,Encastre,OK
菜单:BC,Create
Name [BC-2],Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取y=0的3段边,Done,YSYMM,OK
# 因为部件是壳,边载荷为:Shell edge load
# 载荷施加在赋截面时定义的偏移面上
菜单:Load,Create
Name [Load-1],Step:Step-1,Mechanical,Shell edge load,Cont
# 选取x=120的边,Done,Magnitude [-10],OK
vi. 创建网格
模块:Mesh
菜单:Seed,Instance,Approx global size:[5],Apply,OK
菜单:Mesh,Controls,# 选取所有区域,Done,
Element Shape [Quad],Technique [Structured],OK
菜单:Mesh,Element Type,# 选取所有区域,Done
[Standard],[Quadratic],DOF [6],OK,# 选取了单元S8R
菜单:Mesh,Instance,Yes
vii. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,Submit,# 当结束后,Results
模块:Visualization
菜单:Viewport,Viewport Annotation Options
标签页:State Block,Set Font,Size [10]
Apply to [勾选所有],OK,OK
菜单:File,Save Options,OK # 保存设置,以备后用
菜单:Plot,Undeformed shape
菜单:Plot,Allow Multiple Plot States
菜单:Plot,Deformed Shape # 将看到两个形状
菜单:Plot,Material Orient.,On Def. Shape # 确定1轴
菜单:Result,Section Points,[Plies],K1,Bottommost
# 一次选取一个铺层,结果中显示注释,OK
Field Output 工具条,[Primary],[S],[S11]
菜单:Result,Section Points,[Plies],K1,Topmost
# 一次选取一个铺层,将结果写入表中,OK
最大横向挠度为0.6075mm。应力最大值在表3.4中给出。
表3.4 各铺层上表面应力最大值(例3.6)
当层压板特意设计成由面板和厚的相对较弱的芯子(如蜂窝、泡沫、轻木)组成的夹层结构时,可以用夹层壳建模。面板用于承受所有或差不多所有的弯矩和面内正常载荷。相反地,假设芯子承受横向剪力。例3.7给出了如何定义和计算一个夹层悬臂梁。
下面的假设通常适用于夹层壳:
——式3.9中的Hij仅依赖与中间层(芯子),可以由下式计算
——对于顶层和底层面板(非芯子层),横向剪切模量(G23和G13)设为0,因此它们不对夹层壳添加虚假刚度。
——在面板(非芯子)层内的横向剪应变和剪应力(原文stresses,没有Shear)可以忽略或假设为0。
——在芯子内的横向剪应变和剪应力假设沿厚度方向为常量。
例3.7 考虑一端固支的夹层板,上表面受到均匀压力作用。2夹层板由2个面板和一层芯子构成,材料特性、厚度和压力在表3.5中给出。使用对称条件建立板的1/4模型。面内单元数为6×6。使用4中不同的方法计算中点的挠度。
a. 常规壳单元S4R。
b. 连续壳单元SC8R,厚度方向仅有一层单元,在单元内定义层压板。
c. 连续壳单元SC8R,厚度方向划分多层单元,上下两个面板各一层单元,芯子为一层或多层单元。
d. 芯子使用连续壳单元SC8R,面板使用常规壳单元S4R。
表3.5 用于例3.7的数据
2本例将参考文献[16,Test R0031/3]中的简支边界修改为固支边界。之所以这样修改,是因为简支边界很难施加到连续壳单元上。如果对连续壳单元加简支边界,则要求使用约束方程,相对于现阶段,这将使本例过于复杂。
解3.7 在此,我们用4种方法求解该问题。结果在表3.6中给出。堆叠的连续壳单元模型(c)和堆叠的连续壳单元及蒙皮(d)比(a)和(b)模型更灵活,因为在(c、d)中,在芯子和两层面板/蒙皮中的一阶剪切变形理论约束(即法向保持直线)被分别实施。因此,每一层(芯子和每层面板)可以相对于其他层单独转动。这意味着每层有其自己的横向剪切变形值。因为芯子的横向剪切模量(G13、G23)较低,可以有较大变形。该额外的柔性将影响横向变形,对横向剪应变和应力的影响更显著。在芯子的厚度方向增加单元数量不会改变结果,因为芯子为均值材料(不是层压的)。因此,它的方向变形为直线,且与厚度离散为多少单元无关。常规壳和单层连续壳模型得到类似的结果,因为层压的单层SC8R单元与常规S4R单元的运动学行为相同(假设SC8R的横向压缩性能受到所选较高的厚度方向弹性模量的约束)。
图3.15 为壳截面定义厚度模量
3这与参考文献[19,4.9.3 R0031(3)]中的r313_std_sc8r_composite.inp一致。
(a) 使用常规壳单元的解
此处介绍如何用2D平面对夹层板的几何进行建模。然后,在常规壳单元内定义层压板。下面的伪代码介绍整个操作过程。如有疑问,可以打开从参考文献[5]获得的Ex_3.7.a.cae。
# NAFEMS(见[16])固支的常规壳单元的夹层板(Metric没翻译,后3处同)
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.7]
菜单:File,Save As [Ex_3.7.a.cae]
i. 创建部件
模块:Part
菜单:Part,Create,3D,Deformable,Shell,Planar,Cont
菜单:Add,Line,Rectangle,[0,0],[127,127],X,Done
# 命名部件以便后面复合材料建模器使用
菜单:Tools,Set,Create,Name [plate],Cont,# 选取所有,Done
ii. 定义材料、截面并赋截面给部件
模块:Property
菜单:Material,Create
Name [face],Mechanical,Elasticity,Elastic,Type [Lamina]
[68947.57, 27579.028, 0.3000, 12927.66938, 12927.66938, 12927.66938], OK
菜单:Material,Create
Name [core],Mechanical,Elasticity,Elastic,Type [Lamina]
[0.06894757, 0.06894757, 0.0000, 0.06894757, 209.6006128, 82.737084], OK
# 使用复合材料建模器取代创建和赋截面
菜单:Composite,Create,Name [NAFEMS-sandwich],
Conventional Shell,Cont
# Name, region, Material, Thickness, CSYS, Angle, Integ Points
Ply-1, plate, face, 0.7112, <Layup>, 0, 3
Ply-2, plate, core, 19.050, <Layup>, 0, 3
Ply-3, plate, face, 0.7112, <Layup>, 0, 3
OK
# 为了给期望铺层指定区域,双击铺层对应的单元格
Sets # 打开Region Selection对话框,plate,Cont
# 为了给期望铺层指定材料,双击铺层对应的单元格
# 在Select Material对话框中,Material [face或core],OK
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 定义分析步
模块:Step
菜单:Step,Create
Procedure type:Linear perturbation,Static/General,Cont,OK
v. 添加边界条件和载荷
模块:Load
菜单:Load,Create
Name [Load-1],Step:Step-1,Mechanical,Pressure,Cont,
# 选取部件,Done,选取壳的一侧[Brown]
Magnitude [0.689476],OK
菜单:BC,Manager
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
#选取x=0和y=0的边,Done,Encastre,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=127的边,Done,XSYMM,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取y=127的边,Done,YSYMM,OK
# 关闭BC Manager
vi. 对模型划分网格
模块:Mesh
菜单:Seed,Instance,Approx global size [21],OK
菜单:Mesh,Controls,Element Shape [Quad],Tech [Structured],OK
菜单:Mesh,Element Type,# 选择所有的面,Done
Element Library [Standard],Geometric Order [Linear],OK # S4R
菜单:Mesh,Instance,Yes
vii. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,Submit # 当结束后,Results
模块:Visualization
Field Output工具条,[Primary],[U],[U3]
右上角的位移为-1.667mm。
(b) 使用连续壳单元的解
下面介绍如何使用3D实体对夹层板的几何进行建模。然后在连续壳单元内定义层压板。注意,在复合材料建模器中,相对厚度之和不需要等于1.0。实际的铺层厚度根据网格厚度计算得到。为了强调这一点,本例中 特意输入用英寸(inch)作单位的铺层厚度(0.028”,0.75”,0.028”),即使模型是用国际标准单位建立的。下面的伪代码介绍整个操作过程。如有疑问,可打开从参考文献[5]获取的Ex_3.7.b.cae。
# NAFEMS(见[16])固支的层压连续壳单元的夹层板
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.7]
菜单:File,Save As [Ex_3.7.b.cae]
i. 创建部件
模块:Part
菜单:Part,Create,3D,Deformable,Solid,Extrusion,Cont
菜单:Add,Line,Rectangle,[0,0],[127,127],X,Done
Depth [20.4724],OK # 夹芯和两侧面板
# 命名部件以便后面复合材料建模器使用
菜单:Tools,Set,Create,Name [plate],Cont,# 选取所有,Done
ii. 定义材料、截面并赋截面给部件
模块:Property
菜单:Material,Create
Name [face],Mechanical,Elasticity,Elastic,Type [Lamina]
[68947.57, 27579.028, 0.3, 12927.66938, 12927.66938, 12927.66938],OK
菜单:Material,Create
Name [core],Mechanical,Elasticity,Elastic,Type [Lamina]
[0.06894757, 0.06894757, 0.0, 0.06894757, 209.6006128, 82.737084], OK
# 使用复合材料建模器取代创建和赋截面
菜单:Composite,Create,Name [sandwich],Type:Continuum Shell,Cont
# Name, region, Material, Thickness, CSYS, Angle, Integ Points
Ply-1, plate, face, 0.028, <Layup>, 0, 3
Ply-2, plate, core, 0.75, <Layup>, 0, 3
Ply-3, plate, face, 0.028, <Layup>, 0, 3
# 为了给期望铺层指定区域,双击铺层对应的单元格
Sets # 打开Region Selection对话框,plate,Cont
# 为了给期望铺层指定材料,双击铺层对应的单元格
# 在Select Material对话框中,Material [face或core],OK
标签页:Shell Parameters
Section Poisson’s ratio:Specify value [0.0]
# 勾选:Thickness modulus [689475.7],OK
# 后两项非常重要!
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 定义分析步
模块:Step
菜单:Step, Create
Procedure type:Linear perturbation,Static/General,Cont,OK
菜单:Output,Field Output Requests,Edit,F-Output-1
Output variables:Edit variables [CF,CTSHR,LE,RF,S,SE,TSHR,U]
Output at shell:Specify [1,2,3,4,5,6,7,8,9],OK
v. 添加边界条件和载荷
模块:Load
菜单:Load,Create
Step:Step-1,Mechanical,Pressure,Cont
# 选取上表面 (z=20.4724),Done,Magnitude [0.689476],OK
菜单:BC,Manager
Create,Step:Initial, Mechanical, Symm/Anti/Enca, Cont
# 选取x=0和y=0的面,Cont,Encastre,OK
Create, Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=127的面,Cont,XSYMM,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取y=127的面,Cont,YSYMM,OK
# 关闭BC Manager对话框
vi. 对模型划分网格
模块:Mesh
菜单:Seed,Instance,Approx global size [21],OK
菜单:Mesh,Controls,Element Shape [Hex],Technique [Sweep],OK
菜单:Mesh,Element Type,# 选取所有,Done
Family [Continuum Shell],OK # 注意,选取的单元是SC8R
菜单:Mesh,Instance,Yes
vii. 求解及可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,Submit # 当完成后,Results
模块:Visualization
Field Output工具条,[Primary],[U],[U3]
右上角位移为-1.667mm。
(c) 使用多层堆叠连续壳单元的解
下面介绍使用3D实体对夹层板的几何进行建模,将实体分割为芯子和两侧面板。然后,使用连续壳(CS)单元将每个区域离散。使用3D实体单元对尺寸为(3000×600)(???尺寸)的板进行离散时需要用非常细的网格,以避免锁定。实际上,单元尺寸不需要小于铝面板厚度的10倍。在本例中也将介绍使用扫略(Sweep)网格划分技术(原文seed with a sweep,应该为mesh with a sweep),以及使用Local Seeds对话框(图3.16)对边重新布种子。记得在Edit Composite Layup对话框的Shell Parameters标签页中指定厚度方向弹性模量(图3.15)。下面的伪代码介绍整个操作过程。如有疑问,可打开从参考文献[5]获取的Ex_3.7.c.cae。将芯子沿厚度方向重新划分为4层单元并不改变计算结果。
# NAFEMS(见[16])固支的3层连续壳单元的夹层板
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.7]
菜单:File,Save As [Ex_3.7.c.cae]
i. 创建部件
模块:Part
菜单:Part,Create,3D,Deformable,Solid,Extrusion,Cont
菜单:Add,Line,Rectangle,[0,0],[127,127],X,Done
Depth [20.4724],OK # 芯子和两个面板
# 分割芯子和两个面板
菜单:Tool,Datum,Plane,Offset from principal plane
[XY],[0.7112],Enter,[XY],[19.7612],Enter,
X,# 关闭Create Datum对话框
菜单:Tools,Partition,Cell,Use datum plane
# 自动选择整个部件
Select datum plane # 后面的参考面,Create Partition
# 选取前面的实体创建新的分割,Done
Select datum plane,Create Partition,Done
ii . 定义材料、截面并赋截面给部件
模块:Property
菜单:Material,Manager
Create,Name [face],Mechanical,Elasticity,Elastic,Type [Lamina]
[68947.57, 27579.028, 0.3, 12927.66938, 12927.66938, 12927.66938],OK
Create,Name [core],Mechanical,Elasticity,Elastic,Type [Lamina]
[0.06894757, 0.06894757, 0.0, 0.06894757, 209.6006128, 82.737084],OK
# 关闭Material Manager对话框,# 缩小视图以便选取区域
# 使用复合材料建模器取代创建和赋截面
菜单:Composite,Create
Name [front face],Initial ply count [1],
Element Type [Continuum Shell],Cont
# Name,region,Material,Rel. Thick.,CSYS,Angle,Integ. Points
Ply-1,<picked>,face,1,<Layup>,0,3
标签页:Shell Param.,Section Poisson’s ratio:Specify value [0.0]
# 勾选:Thickness modulus:[689475.7],OK
# 最后两项操作非常重要!
菜单:Composite,Create
Name [back face],Initial ply count [1],
Element Type [Continuum Shell],Cont
# Name,region,Material,Rel. Thick.,CSYS,Angle,Integ. Points
Ply-1,<picked>,face,1,<Layup>,0,3
标签页:Shell Param.,Section Poisson’s ratio:Specify value [0.0]
# 勾选:Thickness modulus:[689475.7],OK
# 最后两项操作非常重要!
菜单:Composite,Create
Name [core],Initial ply count [1],Type [Continuum Shell],Cont
# Name,region,Material,Rel. Thick.,CSYS,Angle,Integ. Points
Ply-1,<picked>,core,1,<Layup>,0,3
标签页:Shell Param.,Section Poisson’s ratio:Specify value [0.0]
# 勾选:Thickness modulus:[689475.7],OK
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 定义分析步
模块:Step
菜单:Step,Create
Procedure type:Linear perturbation,Static/Linear pert.,Cont,OK
菜单:Output,Field Output Requests,Edit,F-Opuput-1
Output variables:Edit variables [CF,CTSHR,LE,RF,S,SE,TSHR,U]
Output at shell:Specify [1,2,3],OK
v. 添加边界条件和载荷
模块:Load
菜单:Load,Create
Step:Step-1,Mechanical,Pressure,Cont
# 选取部件的上表面 (z=20.4724),Done
Magnitude [0.689476],OK
菜单:BC,Manager
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=0 的3个面和y=0的3个面,Done,Encastre,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=127的3个面,Done,XSYMM,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取y=127的3个面,Done,YSYMM,OK
# 关闭BC Manager对话框
vi. 对模型划分网格
模块:Mesh
菜单:Seed,Instance,Approx global size [21],OK
菜单:Seed,Edges
# 选取芯子的4条竖直边,Done
Method [By number],Number of elements [1],OK,X
菜单:Mesh,Controls,#选取所有区域,Done,Sweep,OK
菜单:Mesh,Element Type,# select all regions,Done
Family [Continuum Shell],OK # SC8R
菜单:Mesh,Instance,Yes
vii. 求解并可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,Submit # when completed,Results
模块:Visualization
Field Output工具条,[Primary],[U],[U3]
右上角的位移为-1.892mm。对夹层板芯子进行网格细化,对上述过程的修改如下所示:
模块:Mesh
菜单:Seed,Edges
# 选取芯子的4条竖直边,Done
Method [By number],Number of elements [4],OK,X
菜单:Mesh,Instance,Yes
(d) 使用常规和连续壳单元的解
下面介绍使用3D实体对芯子几何进行建模,然后使用2个蒙皮(skin)代替面板。芯子用连续壳单元离散,面板使用常规壳单元。必须小心地对蒙皮参考面的位置进行偏移,并符合芯子的厚度。否则,根据蒙皮的厚度,结果或多或少地有一定错误。为了正确地偏移,必须将参考面放置在蒙皮的顶面(Top)或底面(Bottom),这依赖于壳表面法向方向。蒙皮与其所在的壳的法向相同。因此,需要查看壳的法向以决定偏移设置。如果法向指向外侧,那么使用壳的底面作为参考面,则恰好将芯子表面节点所在的面设置为参考面。下面的伪代码介绍整个操作过程。如有疑问,可打开从参考文献[5]获取的Ex_3.7.d.cae。
# NAFEMS(见[16])固支的使用蒙皮的夹层板
菜单:File,Set Work Directory [c:\simulia\user\Ex_3.7]
菜单:File,Save As [Ex_3.7.d.cae]
i. 创建部件
模块:Part
菜单:Part,Create,3D,Deformable,Solid,Extrusion,Cont
菜单:Add,Line,Rectangle,[0,0],[127,127],X,Done
Depth [19.05],OK # 注意仅创建芯子部件
# 命名部件以便后面复合材料建模器使用
菜单:Tools,Set,Create,Name [plate],Cont,# 选取所有,Done
ii. 定义材料、截面并赋截面给部件
模块:Property
菜单:Special,Skin,Create,# 选取前面,Done
菜单:Special,Skin,Create,# 选取后面,Done,X
菜单:Material,Create
Name [face],Mechanical,Elasticity,Elastic,Type [Lamina]
[68947.57, 27579.028, 0.3, 12927.66938, 12927.66938, 12927.66938],OK
菜单:Material,Create
Name [core],Mechanical,Elasticity,Elastic,Type [Lamina]
[0.06894757, 0.06894757, 0.0, 0.06894757, 209.6006128, 82.737084],OK
# 注意芯子使用的单元类型(Continuum Shell)
菜单:Composite,Create
Name [core],Initial ply count [1],Type [Continuum Shell],Cont
# Name,Region,Mat.,Relat. Thick.,CSYS,Angle,Integ. Points
Ply-1,plate,core,1,<Layup>,0,3
标签页:Shell Parameters,
Section Poisson’s ratio:Specify value [0.0]
# 勾选:Thickness modulus:[689475.7],OK
# 注意蒙皮/面板使用的单元类型(Conventional Shell)
菜单:Composite,Create
Name [back face],Initial ply count [1],Type [Conv. Shell],Cont
# Name,Region,Material,Thick.,CSYS,Angle,Integ. Points
Ply-1,<picked>,face,0.7112,<Layup>,0,3
# 使用层压板的实际厚度
标签页:Offset,
Shell Reference Surface and Offsets [Bottom surface],OK
菜单:Composite,Create,Name [front face],
Initial ply count [1],Type [Conventional Shell],Cont
# Name,Region,Material,Thick.,CSYS,Angle,Integ. Points
Ply-1,<picked>,face,0.7112,<Layup>,0,3
# 使用层压板的实际厚度
标签页:Offset,
Shell Reference Surface and Offsets [Bottom surface],OK
iii. 创建装配
模块:Assembly
菜单:Instance,Create,Independent,OK
iv. 定义分析步
模块:Step
菜单:Step,Create
Procedure type:Linear perturbation,Static/Linear pert.,Cont,OK
菜单:Output,Field Output Requests,Edit,F-Opuput-1
Output variables:Edit variables [CF,CTSHR,LE,RF,S,SE,TSHR,U]
Output at:Specify [1,2,3,4,5,6,7,8,9],OK # 重要步骤!
v. 添加边界条件和载荷
模块:Load
菜单:Load,Create
Step:Step-1,Mechanical,Pressure,Cont
# 选取部件上表面(z=19.05),Done
Magnitude [0.689476],OK
菜单:BC,Manager
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=0和y=0的面,Done,Encastre,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取x=127的面,Done,XSYMM,OK
Create,Step:Initial,Mechanical,Symm/Anti/Enca,Cont
# 选取y=127的面,Done,YSYMM,OK
# 关闭BC Manager对话框
vi. 对模型划分网格
模块:Mesh
菜单:Seed,Instance,Approx global size [21],OK
菜单:Mesh,Controls,Sweep,OK
菜单:Mesh,Element Type,# 选取芯子部件,Done
Family [Continuum Shell],OK # 应用SC8R单元
# 选取前后面 (the skins),Done
Family [Shell],OK # 应用S4R单元
菜单:Mesh,Instance,Yes
vii. 求解和可视化结果
模块:Job
菜单:Job,Manager
Create,Cont,OK,Submit # 当结束后,Results
模块:Visualization
Field Output工具条,[Primary],[U],[U3]
右上角位移为-1.892mm。
表3.6 中点挠度(例3.7)