《数字模拟沿骨骼和围绕关节的肌肉运动的方法和系统.pdf》由会员分享,可在线阅读,更多相关《数字模拟沿骨骼和围绕关节的肌肉运动的方法和系统.pdf(15页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103077260 A(43)申请公布日 2013.05.01CN103077260A*CN103077260A*(21)申请号 201210286459.3(22)申请日 2012.08.1313/280,506 2011.10.25 USG06F 17/50(2006.01)(71)申请人利弗莫尔软件技术公司地址美国加利福尼亚州利弗莫尔市(72)发明人托比亚斯埃尔哈特(74)专利代理机构深圳新创友知识产权代理有限公司 44223代理人江耀纯(54) 发明名称数字模拟沿骨骼和围绕关节的肌肉运动的方法和系统(57) 摘要公开了用于数字模拟沿骨骼和围绕关节的肌肉运动的方。
2、法和系统。采用包括多个桁架单元和一个或多个滚轮的计算机化模型。这些桁架单元配置成建模肌带而每个滚轮配置成建模关节。每个桁架单元包括两个端节点且配置成或关联肌肉生物机械性能模型。每个滚轮在对应的关节位置固定。为了模拟肌带围绕关节的运动,以时间推进模拟的方式动态调节跨接在滚轮上的每对桁架单元(例如,汽车和一个或多个乘客的撞击事件的计算机模拟)。在时间推进模拟的每个求解周期执行该调节。有两种类型的调节,即“滑动”和“交换”。(30)优先权数据(51)Int.Cl.权利要求书2页 说明书6页 附图6页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书6页 附图6页(10)申。
3、请公布号 CN 103077260 ACN 103077260 A1/2页21.一种数字模拟沿骨骼和围绕关节的肌肉运动的方法,其特征在于,包括:在其上安装有被配置成执行时间推进肌肉运动模拟的应用模块的计算机系统中,接收包含多个桁架单元和至少一个滚轮的计算机化模型,所述多个桁架单元配置成表示肌带而每个滚轮配置成表示关节,且所述多个桁架单元关联肌肉生物机械性能模型;所述计算机系统中的应用模块采用所述计算机化模型控制所述时间推进模拟,所述时间推进模拟包括表示时间经过的一系列连续求解周期;在每个求解周期计算所述多个桁架单元的轴向应力和应变;以及对横跨每个滚轮的每个桁架单元对实施滑动和交换调节,以获得所。
4、述肌带沿着骨骼和围绕关节的数字模拟运动。2.根据权利要求1所述的方法,其特征在于,所述滑动调节重新定义所述每个桁架单元对的各个非伸展长度。3.根据权利要求2所述的方法,其特征在于,所述交换调节在所述每个桁架单元对的一个桁架单元由于所述滑动调节变得短于阈值时发生。4.根据权利要求3所述的方法,其特征在于,所述交换调节将所述每个桁架单元对的所述一个桁架单元从所述每个滚轮的第一侧移动到第二侧。5.根据权利要求4所述的方法,其特征在于,在所述交换调节之后,所述每个桁架单元对的所述一个桁架单元配置成具有大于阈值的长度。6.根据权利要求2所述的方法,其特征在于,在每个滚轮处利用CAPSTAN等式迭代确定各。
5、个非伸展长度。7.根据权利要求6所述的方法,其特征在于,所述CAPSTAN等式是所述每个桁架单元对的各个轴向应力和应变与所述每个滚轮的包角的函数。8.根据权利要求7所述的方法,其特征在于,所述每个滚轮的包角是由所述每个桁架单元对的各自定向确定的。9.根据权利要求1所述的方法,其特征在于,所述计算机化模型是有限元分析模型。10.根据权利要求1所述的方法,其特征在于,所述肌肉生物机械性能模型是非线性Hill型肌肉生物机械性能模型。11.根据权利要求1所述的方法,其特征在于,所述每个滚轮包含所述每个桁架单元对共享的节点。12.一种数字模拟沿骨骼和围绕关节的肌肉运动的系统,其特征在于,包括:输入输出(。
6、I/O)接口;存储器,存储用于配置成肌肉运动模拟的一个或多个应用模块的计算机可读代码;至少一个处理器,耦连所述存储器,所述至少一个处理器执行所述存储器中的所述计算机可读代码以使得所述一个或多个应用模块执行以下操作:接收包含多个桁架单元和至少一个滚轮的计算机化模型,所述多个桁架单元配置成表示肌带而每个滚轮配置成表示关节,且所述多个桁架单元关联肌肉生物机械性能模型;所述计算机系统中的应用模块采用所述计算机化模型控制所述时间推进模拟,所述时间推进模拟包括表示时间经过的一系列连续求解周期;在每个求解周期计算所述多个桁架单元的轴向应力和应变;以及对横跨每个滚轮的每个桁架单元对实施滑动和交换调节,以获得所。
7、述肌带沿着骨骼和权 利 要 求 书CN 103077260 A2/2页3围绕关节的数字模拟运动。13.根据权利要求12所述的系统,其特征在于,所述滑动调节重新定义所述每个桁架单元对的各个非伸展长度。14.根据权利要求13所述的系统,其特征在于,所述交换调节在所述每个桁架单元对的一个桁架单元由于所述滑动调节变得短于阈值时发生;且所述交换调节将所述每个桁架单元对的所述一个桁架单元从所述每个滚轮的第一侧移动到第二侧。15.根据权利要求14所述的系统,其特征在于,在每个滚轮处利用CAPSTAN等式迭代确定各个非伸展长度。权 利 要 求 书CN 103077260 A1/6页4数字模拟沿骨骼和围绕关节的。
8、肌肉运动的方法和系统技术领域0001 本发明总的涉及在计算机辅助工程分析领域使用的方法、系统和软件产品,更具体地说,涉及数字模拟关节周围的肌带运动。背景技术0002 现已采用连续介质力学模拟连续物质,如固体和流体(也就是,液体和气体)。可采用微分方程求解连续介质力学中的问题。现已采用很多计算方案。最常用的方法是有限元分析(FEA),它是一种计算方法,被广泛用于对与诸如三维非线性结构设计和分析等复杂系统相关的工程问题进行建模和求解。有限元分析的名称源于对所关注的目标物体的几何特征进行描述的方式。随着现代数字计算机的出现,有限元分析已作为有限元分析软件实现。基本上,有限元分析软件提供几何描述的模型。
9、、以及该模型中每一点处的相关材料性能。在此模型中,所分析的系统的几何特征被表示为各种大小的实体、壳体和梁,这些被称为有限元。各有限元的顶点被称为节点。该模型是由有限数目的有限元组成的,这些有限元都被分配有材料名称以便于与材料性能相关联。因此,该模型表示了被分析的目标物体所占的物理空间以及它的周围环境。有限元分析软件随后涉及列出了每种材料性能(例如,应力-应变本构方程、杨氏模量、泊松比和热传导率)的表格。此外,指定了目标物体的边界条件(即负荷、物理约束等)。遵循此种方式,建立了目标物体及其环境的模型。0003 一个最具有挑战性的FEA任务是模拟撞击事件,如车祸。随着现代计算机的发展,不光对车祸中。
10、的车辆行为进行模拟,还对乘客的运动和反应进行模拟。为了精确模拟乘客(也就是,人类),需要在CAE(例如,有限元分析)中为根据人体(例如肌肉)的生物机械性能的运动进行建模。迄今为止,还没有能令人满意的解决方案。传统的有限元法中,例如在整个模拟过程中桁架单元(truss element)保持其原始长度不变,将导致在一些现有技术方法产生不平滑或者是急速的运动。因此,较为理想的是,提供一种数字模拟沿骨骼和围绕关节的肌肉运动的方法和系统。发明内容0004 本发明涉及数字模拟沿骨骼和围绕关节的肌肉运动的方法和系统。根据本发明的示例实施例,采用包括沿一个或多个滚轮(roller)的多个桁架单元的计算机化模型。
11、。这些桁架单元配置成建模肌带而每个滚轮配置成建模关节。每个桁架单元包括两个端节点且配置成或关联肌肉生物机械性能模型(例如,非线性Hill型。每个滚轮在对应的关节位置固定。0005 为了模拟肌带围绕关节的运动,以时间推进模拟的方式动态调节跨接在滚轮上的每对桁架单元(例如,汽车和一个或多个乘客的撞击事件的计算机模拟)。在时间推进模拟的每个求解周期执行该调节。有两种类型的调节,即“滑动”(slipping)和“交换”(swapping)。0006 术语“滑动”称作桁架单元对的局部重定义(local redefining)。滑动可通过推说 明 书CN 103077260 A2/6页5动生物机械性能(例。
12、如以桁架单元的非伸展长度的形式)从桁架单元对的一个单元向另一个单元传递实现。换句话说,重新定义桁架单元对的各个桁架单元的非伸展长度以使得该桁架单元对的总非伸展长度保持不变。0007 术语“交换”称作多个桁架单元的局部网格重构(local remeshing)。交换可通过推动桁架单元对的一个单元到滚轮的另一侧实现。换句话说,通过在滚轮一侧去掉一个单元和在滚轮的另一侧增加一个单元网格重构用于建模肌带的桁架单元。因此,在交换调整以后,一对不同的衍架单元跨骑在滚轮上。0008 参照下列对本发明的实施例的详细描述、并结合附图,本发明的目的、特征和优点将会变得明显。附图说明0009 附图中:0010 图1。
13、是根据本发明的一个实施例的、数字模拟沿骨骼和围绕关节的肌肉运动的典型方法的流程图;0011 图2是根据本发明的实施例的、肌带和关节的典型计算机化模型的示意图;0012 图3是根据本发明的一个实施例的、示范性的肌肉生物机械性能模型的示意图;0013 图4是根据本发明的实施例的、与肌肉生物机械性能模型相关的、示例的压力vs桁架单元的归一化长度的示意图;0014 图5是根据本发明的一个实施例的、用于调节计算机化模型的、围绕滚轮的两个轴向力/压力的关系示意图;0015 图6A-6C是根据本发明的一个实施例的、示例的“滑动”和“交换”调节的示意图;0016 图7是示例的计算机系统的主要部件的功能框图,其。
14、中可执行本发明的一个实施例。具体实施方式0017 参照图1,示出了根据本发明的实施例的、数字模拟沿骨骼和围绕关节的肌肉运动的示范过程100的流程图。该过程100优选在软件中实现并参照其他附图进行理解。0018 过程100始于在步骤102定义数字模拟肌肉运动的计算机化模型(例如,有限元分析(FEA)模型)。图2示出了人的手臂的肌带和关节的示范计算机化模型210。该计算机化模型210包括,下面要具体说的,表示肌带的多个桁架单元212和表示关节的至少一个滚轮。在计算机系统中(例如图7中所示的计算机系统700)接收该计算机化模型210。每个桁架单元212具有定义单元长度的两个端节点。在三维空间中,每个。
15、节点具有3个平移自由度。0019 每个桁架单元与肌肉生物机械性能模型相关,例如图3中示出的非线性Hill型肌肉生物机械性能模型300。该非线性Hill型肌肉模型300采用平行设置的可收缩单元(CE)301、阻尼单元(DE)302和被动单元(PE)303效仿肌肉生物机械性能。0020 配置有该生物机械性能模型的桁架单元根据其横截面传递轴向力(也就是,牵引力或张力)以响应在数字模拟中的条件。在两端示出桁架单元212的张应力 304。采用众所周知的方法计算张应力 304,如张力除以桁架单元的横截面。说 明 书CN 103077260 A3/6页60021 可收缩单元301表示肌肉的力生成,且其包括最。
16、大应力max,时间依赖性激活水平函数a(t), 应变依赖缩放函数f()和应变率依赖缩放函数: 。0022 被动单元303表示来自肌肉弹性的能量存储,其包括最大应力max和应力依赖非线性弹性函数h():。0023 阻尼单元302表示肌肉粘性且其取决于应变、应变率和阻尼常数。0024 合成轴向应力(也就是,张应力)304是所有这些分量之和。0025 图4示出了描绘示范非线性Hill型生物机械性能模型的图表400。图表400为具有轴向应力的垂直轴和桁架单元的归一化长度的水平轴的X-Y坐标图。示出了4段曲线402和402a-c。曲线402表示总轴向应力而曲线402a表示CE, 曲线402b表示PE且曲。
17、线402c表示DE。桁架单元的归一化长度是当前长度(l)与非伸展长度(lo)之比的无量纲量。非伸展长度是桁架单元在时间推进模拟开始时(也就是,时间=0)的长度,而当前长度是在特定求解周期时(也就是,时间=t)的长度。换句话说,归一化长度在模拟开始时等于1。应注意,应变的计算如下(l- lo)/ lo或 (l / lo) -1。0026 每个滚轮214的一个节点固定在关节的位置。该节点(图2中示出为空心圆环)由横跨该滚轮的桁架单元对共享。滚轮500(例如滚轮214)配置成具有图5中示出的包角502。包角502由横跨滚轮500的桁架单元对504a-b各自的定向确定。换句话说,包角502是桁架单元对。
18、的轴向方向形成的包容角(inclusive angle)。0027 张力T1514a和T2514b是桁架单元504a-b的对应轴向力。用来数字模拟肌肉运动的滚轮500满足被称为CAPSTAN等式的等式:0028 T2= T1e0029 在此,T2514b是高张力而T1514a是低张力,而是包角,是摩擦系数。0030 接着在步骤104,该过程100使用具有配置成模拟肌肉运动的应用模块的计算机化模型(例如,具有配置成模拟肌肉运动的单元的有限元分析(FEA)执行时间推进模拟。该时间推进模拟包含一系列连续求解周期或表示时间经过的时间步骤。FEA可采用各种已知技术,如显解、隐含解等。通常,在各个求解周期。
19、,可获得一组节点加速度、速度和位移。这些量的时间史是数字模拟结果。0031 一旦在计算机化模型中定义了肌肉和关节,最初可在步骤106获得每个求解周期的肌肉运动结果。例如,在每个求解周期计算桁架单元的轴向应力和应变(也就是,伸展)。0032 模拟的沿骨骼和围绕关节的肌肉运动进一步包括将要实现的桁架单元的调节。在步骤108,在每个节点(也即是,在计算机化模型的每个滚轮)以“滑动”和“交换”的形式作出这些调节。0033 对于横跨滚轮的每个桁架单元对,需要保持CAPSTAN等式。当计算的桁架单元对的轴向力不能满足CAPSTAN等式,作出“滑动”和“交换”的形式的调节。“滑动”调节重新定义桁架单元对的各。
20、自的非伸展长度。特别地,一个单元的非伸展长度降低而同样的量将增加到该桁架单元对的另一单元上,直至满足CAPSTAN等式。因为增加的长度等于减少的长度,该桁架单元对的总的非伸展长度保持恒定。此外,采用非线性迭代技术(例如布伦特(Brent)法)执行“滑动”调节,该非线性迭代技术需要使用调节后的计算机化模型重新计说 明 书CN 103077260 A4/6页7算桁架单元对的轴向应力和应变。0034 当在一个或多个“滑动”调节之后,桁架单元对的一个变得过短,可通过从其当前位置移除“过短”的单元并将其增加到滚轮的另一侧来进行“交换”调节。另外,改变与滚轮有关的节点(参见图6C和下面的对应描述)。“交换。
21、”调节也称为计算机化模型的局部网格重构(也就是桁架单元的连通性的网格重构)。为了确定单元是否过短,可采用众所周知的方法如预定阈值法(例如最小长度)。最后,为了防止刚刚移动的单元前后逆行(thrash),除最小长度外,还对“交换”调节中的每个网格重构的单元给出缓冲。例如,10%的缓冲意味着给定最新网格重构的单元(也就是,刚刚从滚轮的一侧移动到另一侧的单元)的长度等于用作阈值的最小长度的1.1倍。0035 图6A-6C示出了依照本发明的一个实施例的、示例的“滑动”和“交换”调节顺序。为了简明起见,在该典型顺序描述中,仅示出了三个桁架单元(“e1” 611, “e2” 612和“e3” 613)和一。
22、个滚轮(示出为在节点602初始固定在阴影区域的空心圆环)。桁架单元“e1” 611具有两个端节点“n1” 601和“n2”602。单元“e2” 612由节点“n2” 602 和 “n3” 603定义,而单元“e3” 613 由节点“n3” 603 和 “n4” 604定义。0036 图6A示出了典型顺序的第一配置。单元“e1” 611和“e2” 612在共享节点“n2” 602跨接滚轮。图6B示出了在计算了单元的轴向应力和应变之后一点的第二配置。在节点602检验滚轮的CAPSTAN等式。进行“滑动”调节以重定义单元“e1” 611和“e2” 612各自的非伸展长度。在示例的顺序中,单元“e1”。
23、 611增加的长度等于单元“e2” 612减少的长度。0037 如图6C的第三配置所示,当单元“e2” 612与阈值(也就是最小长度lmin)相比过短时,通过将单元“e2” 612从滚轮的一侧移动到另一侧执行“交换”调节。结果,在“交换”调节之后,滚轮与不同节点603相关。0038 通过将在时间推进模拟中表示时间进程的每个求解周期的结果连接起来,可以获得沿着骨骼和围绕关节的肌肉运动的时间史。0039 根据一个实施例,本发明以下列算法在软件中实现:0040 1)对每个桁架单元进行标准力计算0041 -获得非伸展长度lo0042 -计算当前长度l和应变率0043 -作为lo, l 和的函数计算轴向。
24、应力0044 0045 -计算轴向力T = A0046 2)对于横跨滚轮的每个桁架单元对进行力和长度校正(也就是,“滑动”调节)0047 -将计算的轴向力作为试算值:0048 -检验CAPSTAN等式0049 -如果CAPSTAN等式满足,使用试算值作为张力0050 -否则,使用迭代技术找出非线性函数的根(l)0051 0052 -更新桁架单元对的各自的非伸展长度说 明 书CN 103077260 A5/6页80053 -使用从根计算的张力。0054 3)将“过短”单元从滚轮的一侧移动到另一侧的“交换”调节0055 -当桁架单元对的一个相对阈值(也就是,最小长度lmin)过短时,重构桁架单元0。
25、056 -改变桁架单元的连通性0057 -改变与滚轮相关的节点0058 -为刚移动的单元创建新的节点以确保其比lmin长0059 -对刚移动的单元修改单元性能0060 本发明的实施例涉及一个或多个能够执行在此描述的功能的计算机系统。计算机系统700的例子在图7中示出。计算机系统700包括一个或多个处理器,例如处理器704。处理器704连接到计算机系统内部通信总线702。关于该示范性的计算机系统,有各种软件实现的描述。在读完这一描述后,相关技术领域的人员将会明白如何使用其它计算机系统和/或计算机架构来实施本发明。0061 计算机系统700还包括主存储器708,优选随机存取存储器(RAM),还可包。
26、括辅助存储器710。辅助存储器710包括例如一个或多个硬盘驱动器712和/或一个或多个可移除存储驱动器714,它们代表软磁盘机、磁带驱动器、光盘驱动器等。可移除的存储驱动器714用已知的方式从可移除存储单元718中读取和/或向可移除存储单元718中写入。可移除存储单元718代表可以由可移除存储驱动器714读取和写入的软盘、磁带、光盘等。可以理解,可移除存储单元718包括其上存储有计算机软件和/或数据的计算机可读媒介。0062 在可选实施例中,辅助存储器710可包括其它类似的机制,允许计算机程序或者其它指令被装载到计算机系统700。这样的机制包括例如可移动存储单元722和接口720。这样的例子可。
27、包括程序盒式存储器和盒式存储器接口(例如,视频游戏设备中的那些)、可移动存储芯片(例如可擦除的可编程只读存储器(EPROM)、通用串行总线(USB)闪存、或者PROM)以及相关的插槽、以及其它可移动存储单元722和允许软件和数据从可移动存储单元722传递到计算机系统700的接口720。通常,计算机系统700由操作系统(OS)软件控制和管理,操作系统执行例如进程调度、存储器管理、网络连接和I/O服务。0063 可能还设有连接到总线702的通信接口724。通信接口724允许软件和数据在计算机系统700和外部设备之间传递。通信接口724的例子包括调制解调器、网络接口(例如以太网卡)、通信端口、个人计。
28、算机存储卡国际协会(PCMCIA)插槽和卡等等。通过通信接口724传输的软件和数据是信号728的形式,该信号可以是电子、电磁、光学或者其他可以被通信接口724接收的信号。计算机700基于一组特定的规则(也就是,协议)通过数据网络与其它计算设备通信。通用协议的其中一种是在互联网中通用的TCP/IP(传输控制协议/互联网协议)。通常,通信接口724将数据文件组合处理成较小的数据包以通过数据网络传输,或将接收到的数据包重新组合成原始的数据文件。此外,通信接口724处理每个数据包的地址部分以使其到达正确的目的地,或者中途截取发往计算机700的数据包。在这份文件中,术语“计算机程序媒介”和“计算机可用媒。
29、介”都用来指代媒介,例如可移动存储驱动器714和/或设置在硬盘驱动器712中的硬盘。这些计算机程序产品是用于将软件提供给计算机系统700的手段。本发明涉及这样的计算机程序产品。0064 计算机系统700还包括输入/输出(I/O)接口730,它使得计算机系统700能够接入显示器、键盘、鼠标、打印机、扫描器、绘图机、以及类似设备。说 明 书CN 103077260 A6/6页90065 计算机程序(也被称为计算机控制逻辑)作为应用模块706存储在主存储器708和/或辅助存储器710中。也可通过通信接口724接收计算机程序。这样的计算机程序被执行时,使得计算机系统700执行如在此所讨论的本发明的特征。
30、。特别地,当执行该计算机程序时,使得处理器704执行本发明的特征。因此,这样的计算机程序代表计算机系统700的控制器。0066 在本发明采用软件实现的实施例中,该软件可存储在计算机程序产品中,并可使用可移动存储驱动器714、硬盘驱动器712、或者通信接口724加载到计算机系统700中。应用模块706被处理器704执行时,使得处理器704执行如在此所述的本发明的功能。0067 主存储器708可被加载一个或多个应用模块706(例如,其内编程或配置有时间流变材料构成等式的有限元分析应用模块),所述应用模块706可被一个或多个处理器704执行以实现期望的任务,所述处理器可具有或不具有通过I/O接口73。
31、0输入的用户输入。在运行中,当至少一个处理器704执行一个应用模块706时,结果被计算并存储在辅助存储器710(也就是,硬盘驱动器712)中。肌肉运动的计算机模拟状态(例如有限元分析结果)以文字或者图形表示的方式通过I/O接口报告给用户。0068 虽然参照特定的实施例对本发明进行了描述,但是这些实施例仅仅是解释性的,并不用于限制本发明。本技术领域的人员可得到暗示,对具体公开的示范性实施例做出各种修改和改变。例如,虽然在说明书中示出和描述将人手臂的肌肉和关节作为桁架单元和滚轮进行建模,但也可以对其他肌肉和关节建模,比如腿部肌肉和膝关节或踝关节。此外,虽然示出和描述了非线性Hill型肌肉生物机械性能模型,也可以采用其他合适的数字模型来仿效肌肉生物机械性能。此外,虽然示出和描述了三个桁架单元和一个滚轮用于“滑动”和“交换”调节,本发明并不限于有多少个桁架单元和滚轮来表示肌肉和关节。总之,本发明的范围不限于在此公开的特定示范性实施例,对本技术领域人员来说暗含的所有修改都将被包括在本申请的精神和范围以及后附权利要求的范围内。说 明 书CN 103077260 A1/6页10图1说 明 书 附 图CN 103077260 A10。