在有限元分析中建立数字模拟刚体的方法和系统的制作方法

文档序号:6335282阅读:406来源:国知局
专利名称:在有限元分析中建立数字模拟刚体的方法和系统的制作方法
技术领域
本发明主要涉及计算机辅助工程分析,更具体而言,涉及在有限元分析中建立模拟刚体(RB)的系统和方法,其不需要明确定义机械工程设计模拟(例如在容器中装填数百万个颗粒)中使用的刚体标识符。
背景技术
计算机辅助工程(CAE)已在多种工作中帮助工程师。例如,在结构或工程产品设计步骤中,CAE分析,特别是有限元分析(FEA)常常用于各种模拟的负荷条件(例如静态或动态)下评估模拟的响应(例如压力、位移等)。FEA是エ业中广泛使用的计算方法,其模拟(即建模和求解)与复杂产品或系统 (例如汽车、飞机、消费品等)相关的工程问题,例如三维非线性结构设计和分析。FEA的名称源于考虑的对象的几何形状被指定的方式。几何结构由単元和节点定义。多种单元存在, 实体单元用于体积或连续体,外壳或平板単元用于表面,梁或桁架単元用于ー维结构对象。 姆个单元的几何结构由节点定义,例如,砖形或六面体单元包括八个角节点。一般地,这些单元在负荷条件下是可变形的。然而,在特定应用中,需要刚性有限元或刚性单元。刚性单元在任何负荷条件下均不变形。刚性单元可用于结构部件的建摸, 例如螺栓、离散颗粒或刚体。为了建立刚体模型,现有技术的ー种方法是建立刚体型単元。 所有刚体需要利用标识每个刚体的标识符定义。例如,若在有限元分析模型中有两不同刚体,必须创建两个唯一标识符,从而将分配有两个唯一标识符中的一个的刚性单元组合到一起。对于每个刚体,依据包含在刚体中的刚性单元的几何结构计算出惯性。这种方法用于相对较小数量的刚体时是简单的,但是当有限元分析模型包含了大量的刚体(例如数以万计)时,这种方法是不可行的。这将需要大量的劳动カ(即成本)来定义大量的刚体,因此在生产环境中并不可行。目前的大多数工程模拟需要这种能力(即具有数以百万计的刚体),例如模拟将数以百万计的颗粒装填入容器。因此,人们期望有在不用复杂地为每个刚体提供特别标识符的情况下有效地定义和建立大量刚体的方法和系统。每个刚体可包含任意数量的设置为任意形状的刚性有限元。

发明内容
本发明公开了ー种用于在不需要明确地定义任何刚体标识符的情况下在有限元分析中定义和建立模拟刚体的方法和系统。依据本发明一方面,在有限元分析模型中定义一个或多个刚性単元或刚性有限元。例如,刚性单元可以定义为具有特别指定的材料。刚性单元构建为用于形成一个或多个模拟刚体的一部分。每个模拟刚体包括以任意方位相互连接的任意数量的刚性单元。在输入描述或定义中不需要针对刚体的标识符。依据本发明另一方面,每个刚体用刚性单元的唯一链表表示。为定位嵌入有限元模型或有限元分析模型中的刚体,下面说明建立所有链表(即刚体)的程序。该程序循环通过所有刚性单元仅一次。对于每个刚性单元,有三种可能情形(I)其相邻刚性单元都还不是链表的一部分;(2)作为一链表的一部分的其所有相邻刚性单元都是同一链表的一部分;(3)其相邻刚性单元来自不同链表。在识别和建立了所有代表刚体的链表之后,根据包含在其中的相应刚性单元计算出每个刚体的物理性质。工程产品(例如汽车、飞机、颗粒、消费品等)的有限元分析随后可在包括所有刚体的正常方式下完成。在一代表性应用中,将大量粒状的颗粒建模为刚体, 每个粒状的颗粒一个刚体。刚体之间的相互作用(例如接触、碰撞等)可利用有限元分析来计算或模拟。通过以下结合附图对具体实施方式
的详细描述,本发明的其他目的、特征和优点将会变得显而易见。


参照以下的描述、后附的权利要求和附图,将会更好地理解本发明的这些和其它特征、方面和优点,其中图IA和图IB结合起来是说明依据本发明实施例的在有限元分析中建立数字模拟刚体的代表性方法的流程图;图2是示出有限元分析模型的代表性实体单元的示意图;图3是示出依据本发明实施例的代表性模拟刚体的示意图;及图4是示出计算机系统的主要组成部分的功能框图,本发明的实施例可在该计算机系统中实施。
具体实施例方式首先参照图IA和1B,示出了说明依据本发明实施例的在有限元分析中建立模拟刚体以帮助用户在工程产品(例如汽车、飞机)的改进方面做出设计决策的代表性方法100 的流程图。优选地,在软件中实施方法100。在步骤102中开始方法100,定义对将被设计或改进的工程产品进行建模的有限元分析(FEA)模型。FEA模型包括多个节点和多个单元,该多个单元包括至少一个用于形成模拟刚体的刚性有限元。在一实施例中,步骤104中,由用户建立一组刚性单元作为具有特别指定材料(例如刚性材料)的实体单元,该特别指定材料表明这些刚性单元被配置用于形成刚体。没有必要明确地定义每单个刚体。所有的刚体都嵌入在FEA模型中。每个刚体被定义为以任意方位相互连接的一组相邻刚体单元。方法100通过刚性单元的单元节点定义或连接性信息定位每个定义的刚体,并接着建立一数字表示(即每个刚体的唯一的链表)。另外,用户也可为每个刚性材料类型指定其它材料性质(即物理量),例如质量密度。通过刚性单元的不同组合/方位,可以形成任意刚体。例如,图2中示出了两个这样的刚性实体单元,六面体210和四面体单元220。六面体210由八个角节点来定义(有一个未示出),而四面体单元220由四个角节点定义(有一个未示出)。一般来讲,节点定义是指每个单元各自的角节点。定义实体单元的几何结构的所有节点首先在FEA模型中被定义出来。
图3是示出依据本发明一实施例的三种不同模拟刚体310a_c的示意图。刚体由设置成任意形状的任意数量的刚性单元(即以不同的任意方位连接到一起的实体单元)配置成。例如,单元321-324通过共享节点相互连接形成刚体310c :在单元321和322之间共享节点341 ;在单元322和323之间共享节点342 ;及在三个单元322、323和324之间共享节点344。回到图1,在步骤104后,方法100在步骤105中建立ー节点标记(node flag)阵列,姆个标记对应FEA模型中的ー节点。接着,将该节点标记阵列初始化为大于该组刚性单元中单元总量的一大数。接下来在步骤106中,方法100定位所有刚性单元,并以链表形式建立所有刚体。 換言之,每个链表表示一特定刚体,其利用ー组唯一刚性单元形成。任意特定刚性单元仅可配置为ー个刚体的一部分。由于刚体的任意形状,每个链表可包括任意数量的刚性单元。 只要刚性单元相互连接,这些单元属于ー特定刚体。例如,第一和第二単元可以共享第一节点,而第一和第三単元共享第二节点。第一和第二节点可以相同或不同。依据ー实施例,上述功能由图IB所示的步骤106完成。步骤106循环通过所有刚性单元仅一次,以利用単元-节点连接性信息(例如角节点)建立刚体的ー个或多个数字表示(即链表)。在步骤106a,在循环操作中,在每个当前处理的単元(当前単元可由当前単元ID来标识)处,检查当前単元的所有节点的节点标记。有三种可能的情形(I)其相邻单元都还不是一链表的一部分;(2)作为ー链表一部分的其相邻单元都是同一链表(即ー特定链表)的一部分;(3)其相邻单元来自不同的链表(即多于ー个链表)。在判断步骤106b,确定是否当前単元的相邻单元都还不是链表的一部分。若为 “是”,方法100在步骤106c中建立新的链表(表示ー刚体),并用当前単元的単元ID (例如单元编号)标记该新的链表。另外,方法100将所有相应节点标记更新到当前单元ID。换言之,在步骤106c,将当前単元的这些节点的节点标记变更到当前単元ID。接着,方法100 移至后面的判断步骤106g。应当注意,单元编号基于FEA软件中常用的连续编号方案(例如内部单元编号)。回到判断步骤106b,若为“否”,方法100移至另ー判断步骤106d,确定是否当前单元的所有相邻单元都是ー特定链表的一部分。若为“是”,方法100移至步骤106e以添加当前单元到该特定链表中,并更新相应节点标记为该特定链表的ID(若有的话)。方法100移至后面的判断步骤106g。否则,在判断步骤106d中若为“否”,方法100移至步骤106f。这是上面提到的情形(3)(即当前単元的相邻单元属于不止一个的链表)。在步骤106f,方法100合并所有多于ー个的链表到具有最小ID(即最小链表ID编号)的链表中,并相应地用合并的链表的ID 更新相应节点标记。再一次,方法100移至判断步骤106g,在该步骤中确定是否当前单元为循环中的最后ー个。若为“否”,方法100移至循环中的下一単元,并返回步骤106a以处理循环中的下一単元。否则,步骤106结束,方法100返回。最后,在步骤110中,方法100基于每个相应链表中的各单元计算每个形成的刚体的物理性质(例如刚体的总质量、初始动量和能量)。接着,可为这些刚体恰当地进行有限元分析。方法100之后结束。
根据一方面,本发明涉及一个或多个能够执行在此描述的功能的计算机系统。计算机系统400的例子在图4中示出。计算机系统400包括一个或多个处理器,例如处理器 404。处理器404连接到计算机系统内部通信总线402。关于该示范性的计算机系统,有各种软件实现的描述。在读完这一描述后,相关技术领域的人员将会明白如何使用其它计算机系统和/或计算机架构来实施本发明。计算机系统400还包括主存储器408,优选随机存取存储器(RAM),还可包括辅助存储器410。辅助存储器410包括例如一个或多个硬盘驱动器412和/或一个或多个可移除存储驱动器414,它们代表软磁盘机、磁带驱动器、光盘驱动器等。可移除的存储驱动器 414用已知的方式从可移除存储单元418中读取和/或向可移除存储单元418中写入。可移除存储单元418代表可以由可移除存储驱动器414读取和写入的软盘、磁带、光盘等。可以理解,可移除存储单元418包括其上存储有计算机软件和/或数据的计算机可读媒介。在可选实施例中,辅助存储器410可包括其它类似的机制,允许计算机程序或者其它指令被装载到计算机系统400。这样的机制包括例如可移动存储单元422和接口 420。 这样的例子可包括程序盒式存储器和盒式存储器接口(例如,视频游戏设备中的那些)、可移动存储芯片(例如可擦除的可编程只读存储器(EPROM))、通用串行总线(USB)闪存、或者PR0M)以及相关的插槽、以及其它可移动存储单元422和允许软件和数据从可移动存储单元422传递到计算机系统400的接口 420。通常,计算机系统400由操作系统(OS)软件控制和管理,操作系统执行例如进程调度、存储器管理、网络连接和I/O服务。可能还设有连接到总线402的通信接口 424。通信接口 424允许软件和数据在计算机系统400和外部设备之间传递。通信接口 424的例子包括调制解调器、网络接口(例如以太网卡)、通信端口、个人计算机存储卡国际协会(PCMCIA)插槽和卡等等。计算机400基于一组特定的规则(也就是,协议)通过数据网络与其它计算设备通信。通用协议的其中一种是在互联网中通用的TCP/IP(传输控制协议/互联网协议)。 通常,通信接口 424将数据文件组合处理成较小的数据包以通过数据网络传输,或将接收到的数据包重新组合成原始的数据文件。此外,通信接口 424处理每个数据包的地址部分以使其到达正确的目的地,或者中途截取发往计算机400的数据包。在这份文件中,术语“计算机可记录存储媒介”、“计算机可记录媒介”以及“计算机可读媒介”都用来指代媒介,例如可移动存储驱动器414和/或设置在硬盘驱动器412中的硬盘。这些计算机程序产品是用于将软件提供给计算机系统400的手段。本发明涉及这样的计算机程序产品。计算机系统400还包括输入/输出(I/O)接口 430,它使得计算机系统400能够接入显示器、键盘、鼠标、打印机、扫描器、绘图机、以及类似设备。计算机程序(也被称为计算机控制逻辑)作为应用模块406存储在主存储器408 和/或辅助存储器410中。也可通过通信接口 424接收计算机程序。这样的计算机程序被执行时,使得计算机系统400执行如在此所讨论的本发明的特征。特别地,当执行该计算机程序时,使得处理器404执行本发明的特征。因此,这样的计算机程序代表计算机系统400 的控制器。在本发明采用软件实现的实施例中,该软件可存储在计算机程序产品中,并可使用可移动存储驱动器414、硬盘驱动器412、或者通信接口 424加载到计算机系统400中。应用模块406被处理器404执行时,使得处理器404执行如在此所述的本发明的功能。主存储器408可被加载ー个或多个应用模块406,所述应用模块406可被一个或多个处理器404执行以实现期望的任务,所述处理器可具有或不具有通过I/O接ロ 430输入的用户输入。在运行中,当至少ー个处理器404执行ー个应用模块406吋,结果被计算并存储在辅助存储器410 (也就是,硬盘驱动器412)中。有限元分析(例如,汽车抗撞击)的状态以文字或者图形表示的方式通过I/O接ロ报告给用户。最后,为了保证在大規模并行计算机的刚体模拟中的计算效率,在初始计算负荷平衡阶段(例如区域分解)中使用专用技木。传统的域分解是基于単元的技木。为每个单元分配权重(计算成本),分解试图将単元分配给处理器以平衡每个处理器上的权重,因此每个处理器得到相同的总权重。对于刚体,按如下修改对于每个刚体,计算该刚体中的单元的总权重。随后,将总权重分配给刚体中一特定単元,其它单元的权重设为O。接着,如常进行分解,将每个単元分配给处理器。对于每个刚体,所有単元都被再分配给最终拥有具有非零权重的该特定単元的那个处理器。这维持了分解过程中的总权重分配,同时确保了一刚体的所有単元在同一处理器上结束。虽然參照特定的实施例对本发明进行了描述,但是这些实施例仅仅是解释性的, 并不用于限制本发明。本技术领域的人员可得到暗示,对具体公开的示范性实施例做出各种修改和改变。例如,虽然描述了链表以表示刚体,也可替代使用其它等同的数据结构,例如简单列表。另外,虽然示出和说明了三维有限元作为刚性単元,ー维或ニ维有限元也可用于形成刚体(例如粱、桁架、板等)。而且,虽然示出和说明了六面体单元以形成刚体,也可用其它类型的实体单元,例如四面体、五面体単元。此外,虽然仅示出和说明了少数代表性刚体,本发明的主要应用包括大量(例如数以百万计)刚体。总之,本发明的范围不应受到此处公开的代表性实施例的限制,本领域的普通技术人员容易想到的修改应当包含在本申请的精神和范围及未决权利要求的范围内。
权利要求
1.ー种在有限元分析中建立数字模拟刚体的方法,其特征在于,包括在安装有有限元分析应用程序模块的计算机系统中定义具有至少ー个刚性有限元的有限元分析模型,所述至少一个刚性有限元中的每ー个具有一组用户定义的信息,表示一个或多个物理量;建立ー个或多个模拟刚体,每个模拟刚体由至少ー个刚性有限元的列表来表示,当所述列表包含多于ー个的单元时,这些刚性有限元通过至少ー个共享节点相互连接;及依据与相应列表中的每个刚性有限元相对应的一组用户定义的信息,计算所述每个模拟刚体的ー组物理性质,从而建立在有限元分析中被处理的每个模拟刚体以帮助用户在エ 程产品设计的改进中做决策。
2.根据权利要求I所述的方法,其特征在于,所述至少一个刚性有限元由用户定义为具有指定用于形成刚体的材料类型。
3.根据权利要求I所述的方法,其特征在于,所述ー个或多个物理量包括质量密度。
4.根据权利要求I所述的方法,其特征在于,所述列表中的那些刚性有限元设置为任意形状或方位。
5.根据权利要求4所述的方法,其特征在干,所述那些刚性有限元包括共享第一节点的第一刚性有限元和第二刚性有限元,且第一刚性有限元和第三刚性有限元共享第二节
6.根据权利要求I所述的方法,其特征在于,所述有限元分析模型包括多个节点。
7.根据权利要求6所述的方法,其特征在干,所述建立一个或多个模拟刚体的步骤进 ー步包括建立ー节点标记阵列,姆个节点标记与所述多个节点中的对应的一个相关;用大于所述至少一个刚性有限元的总数量的数字初始化所述节点标记阵列;及循环通过所述至少ー个刚性有限元中的所有刚性有限元一次;在所述循环中的每个当前处理单元处,检查当前处理单元的节点的相应节点标记;当当前处理单元的相邻单元都不位于部分创建的列表中时,用当前处理单元的标识符建立新的列表,并将相应节点标记更新为该标识符;当当前处理单元的相邻单元都位于ー特定列表中时,添加当前处理单元到所述特定列表中,并将相应的节点标记更新为该特定链表的标识符;当当前处理单元的相邻单元位于多于一个的列表中时,合并该多于ー个的列表中的所有列表到具有最小标识符的列表中,将相应节点标记更新为合并的列表的标识符。
8.根据权利要求I所述的方法,其特征在于,所述ー组物理性质包括质量、初始张量、 初始动量和初始势能中的至少ー个。
9.ー种在有限元分析中建立数字模拟刚体的系统,其特征在于,包括用于存储有限元分析应用程序模块的计算机可读代码的主存储器;连接到所述主存储器的至少ー个处理器,所述至少一个处理器运行所述主存储器中的所述计算机可读代码,以使应用程序模块通过下面的方法执行操作定义具有至少ー个刚性有限元的有限元分析模型,所述至少一个刚性有限元中的每ー 个具有一组用户定义的信息,表示ー个或多个物理量;建立ー个或多个模拟刚体,每个模拟刚体由至少ー个刚性有限元的列表来表示,当所述列表包含多于一个的单元时,这些刚性有限元通过至少一个共享节点相互连接;及依据与相应列表中的每个刚性有限元相对应的一组用户定义的信息,计算所述每个模拟刚体的一组物理性质,从而建立在有限元分析中被处理的每个模拟刚体以帮助用户在工程产品设计的改进中做决策。
10.根据权利要求9所述的系统,其特征在于,所述建立一个或多个模拟刚体的步骤进一步包括建立一节点标记阵列,每个节点标记与所述多个节点中的对应的一个相关;用大于所述至少一个刚性有限元的总数量的数字初始化所述节点标记阵列;及循环通过所述至少一个刚性有限元中的所有刚性有限元一次;在所述循环中的每个当前处理单元处,检查当前处理单元的节点的相应节点标记;当当前处理单元的相邻单元都不位于部分创建的列表中时,用当前处理单元的标识符建立新的列表,并将相应节点标记更新为该标识符;当当前处理单元的相邻单元都位于一特定列表中时,添加当前处理单元到所述特定列表中,并将相应的节点标记更新为该特定链表的标识符;当当前处理单元的相邻单元位于多于一个的列表中时,合并该多于一个的列表中的所有列表到具有最小标识符的列表中,将相应节点标记更新为合并的列表的标识符。
11.一种计算机可读介质,包括控制计算机系统通过以下方法在有限元分析中建立数字模拟刚体的指令在安装有有限元分析应用程序模块的计算机系统中定义具有至少一个刚性有限元的有限元分析模型,所述至少一个刚性有限元中的每一个具有一组用户定义的信息,表示一个或多个物理量;建立一个或多个模拟刚体,每个模拟刚体由至少一个刚性有限元的列表来表示,当所述列表包含多于一个的单元时,这些刚性有限元通过至少一个共享节点相互连接;及依据与相应列表中的每个刚性有限元相对应的一组用户定义的信息,计算所述每个模拟刚体的一组物理性质,从而建立在有限元分析中被处理的每个模拟刚体以帮助用户在工程产品设计的改进中做决策。
12.根据权利要求11所述的计算机可读介质,其特征在于,所述建立一个或多个模拟刚体的步骤进一步包括建立一节点标记阵列,每个节点标记与所述多个节点中的对应的一个相关;用大于所述至少一个刚性有限元的总数量的数字初始化所述节点标记阵列;及循环通过所述至少一个刚性有限元中的所有刚性有限元一次;在所述循环中的每个当前处理单元处,检查当前处理单元的节点的相应节点标记;当当前处理单元的相邻单元都不位于部分创建的列表中时,用当前处理单元的标识符建立新的列表,并将相应节点标记更新为该标识符;当当前处理单元的相邻单元都位于一特定列表中时,添加当前处理单元到所述特定列表中,并将相应的节点标记更新为该特定链表的标识符;当当前处理单元的相邻单元位于多于一个的列表中时,合并该多于一个的列表中的所有列表到具有最小标识符的列表中,将相应节点标记更新为合并的列表的标识符。
全文摘要
本发明公开了用于在有限元分析中定义和建立模拟刚体的改进的方法和系统。在有限元分析模型中设计一个或多个有限元用于形成一个或多个模拟刚体(RB)。每个模拟刚体包括以任意形状相互连接的任意数量的刚性有限元。通过定位经共享的节点嵌入模型中的所有单元来建立每个模拟刚体。利用单元定义作为引导建立节点标记阵列的方法,每个节点标记对应一个节点,从而可有效地定位模型中定义的所有刚体。一旦定位了所有刚体,每个唯一的刚体被定义为相连的刚性有限元的唯一列表。
文档编号G06F17/50GK102609549SQ20101053304
公开日2012年7月25日 申请日期2010年10月19日 优先权日2009年10月20日
发明者布雷恩·韦恩斯科特, 约翰·O·霍尔奎斯特 申请人:利弗莫尔软件技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1