1 引言在ANSYS平台上,所谓子结构技术就是将一组单元用矩阵凝聚为一个单元过程的技术,切吧这个单一的矩阵单元称为超单元。
在ANSYS分析中,超单元可以象其他单元类型一样使用。
唯一的区别就是必须先进行结构生成分析以生成能够利用的超单元。
但子结构并非在所有ANSYS模块中都能利用,目前ANSYS子结构技术可以在ANSYS/Mutiphysics,ANSYS/Mechanical和ANSYS/Structural中使用。
在ANSYS平台上,使用子结构的目的主要是为了节省机时,并且允许在比较有限的计算机设备资源的基础上求解超大规模的问题。
比如进行非线性分析和带有大量重复几何结构的分析。
在非线性分析中,可以将模型线性部分作成子结构,这部分的单元矩阵就不用在非线性迭代过程中重复计算。
而在有重复几何结构的模型中(如有四条腿的桌子),可以对于重复的部分生成超单元,然后将它拷贝到不同的位置,这样做可以节省大量的计算时间和计算机资源。
子结构还用于模型有大转动的情况下。
对于这些模型,ANSYS假定每个结构都是围绕其质心转动的。
在三维情况下,子结构有三个转动自由度和三个平动自由度。
在大转动模型中,用户在使用部分之前无须对子结构施加约束,因为每个子结构都是作为一个单元进行处理,是允许刚体位移的。
对于大型三维问题的分析而言,需用磁盘空间相对于一个普通计算机系统来说太庞大了,在这种情况下,用户可以通过子结构将问题分块进行分析,从而使得每一块对于计算机系统来说都是可以计算和承受的。
2 ANSYS子结构使用步骤ANSYS子结构使用过程分为以下三个步骤:1)ANSYS子结构生成部分生成部分就是将普通的有限元单元凝聚为一个超单元。
凝聚是通过定义一组主自由度来实现的。
主自由度用于定义超单元与模型中其他单元的边界,提取模型的动力学特性。
图1是一个板状构件用接触单元分析的示意。
由于接触单元需要迭代计算,将板状构件形成子结构将显著地节省机时。
本例中,主自由度是板与接触单元相连的自由度。
图1 子结构使用示例2)ANSYS子结构使用部分用部分就是将超单元与模型整体相连进行分析的部分。
整个模型可以是一个超单元,也可以象上例一样是超单元与非超单元相连的。
使用部分的计算只是超单元的凝聚(自由度计算仅限于主自由度)和非超单元的全部计算。
3)ANSYS子结构扩展部分使扩展部分就是从凝聚计算结果开始计算整个超单元中所有的自由度。
如果在使用部分有多个超单元,那么每个超单元都需要有单独的扩展过程。
图2示出了整个子结构分析的数据流向和所用的文件。
三个步骤的详细解释见以后的叙述。
图2典型子结构分析中的数据流向3 关于子结构生成部分本节主要介绍在ANSYS子结构生成部分在使用时的一些操作技术问题。
在利用子结构生成部分生成超单元时分为两步:建立模型、施加边界条件,生成超单元矩阵。
3.1建立模型在子结构建立模型的工作中,通用性的工作指定文件名和分析名称,用PREP7定义单元类型,单元实参,材料特性和模型几何结构。
而需要特别注意和记忆的有以下几点:1)文件名:在子结构分析中很有用处。
有效地使用文件名,在三部分分析中可以省略很多文件处理操作。
可以用以下方法指定文件名:Command: /FILENAMEGUI: Utility Menu>File>Change Jobname如:/FILENAME,GEN2)单元类型:ANSYS提供的绝大多数单元都可以用来生成超单元。
唯一的限制是单元必须是线性的。
如果生成超单元时有双线性单元的话,ANSYS将自动作为线性单元处理。
需要注意的是在直接耦合中带载荷向量的耦合单元是不能做子结构分析的。
可以用同种形状的单元来替代。
细节参看ANSYS Coupled-Field Analysis Guide。
3)材料特性:定义所有必须的材料特性。
例如,如果生成质量矩阵,就必须定义密度或其他形式的质量;如果要生成热传导矩阵,就要定义比热。
同样,超单元是线性的,非线性材料将被忽略。
4)模型生成:在生成部分,主要生成模型的超单元部分。
非超单元部分是在以后的使用部分生成的。
但是,在建模的开始就需要对模型的两个部分有所规划,主要是确定超单元部分和非超单元部分如何连接。
为了保证连接正确,应该保证接触部分结点号一致。
如果想生成整体模型则需将模型存储在数据库文件中,选择子结构部分进行生成计算。
在以后的使用部分,RESUME(Utility Menu>File>Resume from)数据库文件,不选(unselect)子结构,用超单元矩阵代替。
3.2边界条件与超单元矩阵生成部分的结果包含超单元矩阵。
象其他分析一样,用户要自行定义分析类型和分析设置、施加边界条件、定义载荷步、开始计算。
这部分的分析步骤如下文所示:1)进入求解器Command: /SOLUGUI: Main Menu>Solution2)定义分析类型和分析设置分析类型——选择生成超单元使用下列方法:Command: ANTYPEGUI: Main Menu>Solution>-Analysis Type-New Analysis3)用下列方法定义主自由度Command: MGUI: Main Menu>Solution>Master DOFs>Define4)施加边界条件5)定义载荷步选项子结构中可以施加的载荷如表1所示。
表1 子结构中可以施加的载荷6)存储数据库的备份文件Command: SAVEGUI: Utility Menu>File>Save as Jobname.db7)开始计算Command: SOLVEGUI: Main Menu>Solution>Current LS计算结果包括超单元矩阵文件,Sename.SUB,Sename是通过[SEOPT]指定的文件名或是工作文件名[/FILENAME]。
矩阵文件包括根据施加的载荷计算出的载荷向量。
(如果没有施加载荷,载荷向量将为零。
)8)如有另外的载荷步,重复步骤7来生成其他的载荷向量。
9)退出SOLUTIONCommand: FINISHGUI: Main Menu>Finish4 总结ANSY子结构技术能够让普通计算机发挥更大的作用,使得普通机进行大规模问题的分析成为可能,子结构技术扩展了ANSYS在分析问题时的适用性,灵活的掌握和应用子结构分析技术能够给分析带来极大的方便,特别是分析问题规模较大时,更能体现子结构分析技术的优势。
1 引言ANSYS子结构技术的使用部分可以适用于ANSYS分析类型(FLOTRAN和显式动力分析除外)。
它与普通分析的区别就是分析过程中的一个或几个单元是前面生成的超单元。
ANSYS帮助文档每个单独的分析指南中都有做不同分析的详细介绍。
在这一部分,我们主要介绍如何将超单元变成模型的一部分。
这个过程有以下几个步骤:1)清除数据库并指定一个新的工作文件名。
2)建立模型。
3)施加边界条件并求解。
2 使用部分过程本小节按照引言中所示将超单元变为模型一部分的三个步骤分别讲述。
2.1 定义工作文件名使用部分应该首先建立新的模型和新的边界条件。
因此,第一步是清除现存的数据库。
这与退出并重新进入ANSYS的效果是一样的。
清除数据库可用下列两种方法:Command: /CLEARGUI: Utility Menu>File>Clear&Start New缺省情况下,清除数据库就会重新读入START.ANS文件。
(可以改变这个设置)新定义的文件名要与生成部分使用的文件名不同。
这样,生成部分的文件就不会被覆盖。
用下列方式之一定义新的工作文件名:Command: /FILNAMEGUI: Utility Menu>File>Change Jobname2.2 建立模型本步是在ANSYS前处理器PREP7中实现的。
主要完成以下内容:1)定义MATRIX50(超单元)为一种单元。
用以下方法:Command: ETGUI: Main Menu>Preprocessor>Element Type>Add/Edit/Delete2)定义其他非超单元的单元类型。
非线性可以使用,能否使用取决于进行分析的类型。
3)定义非超单元的单元实参和材料特性。
非线性可以使用,同样取决于进行分析的类型。
4)定义非超单元的几何形状。
在定义与超单元接触部分时应非常注意。
其结点位置要精确重合。
(见图1)图1 超单元与非超单元的接触处结点应与主自由度精确重合我们可以使用如下三种方法保证结点重合:a、使用与生成部分同样的结点号。
b、在生成部分的接触部分结点和使用部分的接触结点使用相同的结点号码增值(或平移)。
c、将这两部分结点所有的自由度固连起来。
(用CP系列命令)在不能使用前两种方法时,这种方法是有效的。
定义自由度固连可以用下列方法:Command: CPGUI: Main Menu>Preprocessor>Coupling/Ceqn>Couple DOFs2.3 施加边界条件/求解本步在求解器中完成。
取得使用部分结果的过程取决于所做的分析类型。
以上提到,可以在绝大多数分析中使用超单元。
用户应当有相应的通过生成部分生成的矩阵。
例如,如果要做结构动力学分析,必须有质量矩阵。
具体过程如下: 1)进入SOLUTIONCommand: /SOLUGUI: Main Menu>Solution2)定义分析类型和分析选项对于大转动分析,打开大位移效果[NLGEOM,ON],并正确定义非线性分析的子步数。
3)在非超单元上施加边界条件主要包括自由度约束和对称边界,集中载荷,平面载荷,体载荷,和惯性载荷。
注意惯性载荷只有在通过生成部分生成了质量矩阵时才生效。
注——对大转动分析,在本步中要施加正确的约束条件。
4)用以下方法施加超单元载荷向量Command: SFEGUI: Main Menu>Solution>-Loads-Apply>Load Vector>For Superelement 在超单元矩阵文件中,每个载荷步对应一个载荷向量,用参考号来区别。
如:SFE,63,1,SELV,,0.75上面命令行的含义是在63号单元上施加载荷向量,号为1,比例系数为0.75。
5)定义与分析类型相适应的载荷步选项注:用MATRIX50超单元时不要用PCG求解器。
6)开始计算Command: SOLVEGUI: Main Menu>Solution>Current LS本步计算包括非超单元的完整解和超单元的凝聚解—主自由度解。
非超单元的完整解记录在结果文件中(Jobname.RST,RTH或RMG),可以进行普通的后处理操作。