CN113378435B - 粒子生成方法、装置、设备及存储介质 - Google Patents

粒子生成方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN113378435B
CN113378435B CN202110644214.2A CN202110644214A CN113378435B CN 113378435 B CN113378435 B CN 113378435B CN 202110644214 A CN202110644214 A CN 202110644214A CN 113378435 B CN113378435 B CN 113378435B
Authority
CN
China
Prior art keywords
particle
model
determining
particle generation
boundary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110644214.2A
Other languages
English (en)
Other versions
CN113378435A (zh
Inventor
张维杰
江民圣
鲁效平
景大智
于晓义
王玉梅
高亚琼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kaos Digital Technology Qingdao Co ltd
Karos Iot Technology Co ltd
Cosmoplat Industrial Intelligent Research Institute Qingdao Co Ltd
Original Assignee
Haier Digital Technology Qingdao Co Ltd
Cosmoplat Industrial Intelligent Research Institute Qingdao Co Ltd
Haier Cosmo IoT Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Haier Digital Technology Qingdao Co Ltd, Cosmoplat Industrial Intelligent Research Institute Qingdao Co Ltd, Haier Cosmo IoT Technology Co Ltd filed Critical Haier Digital Technology Qingdao Co Ltd
Priority to CN202110644214.2A priority Critical patent/CN113378435B/zh
Publication of CN113378435A publication Critical patent/CN113378435A/zh
Application granted granted Critical
Publication of CN113378435B publication Critical patent/CN113378435B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/25Design optimisation, verification or simulation using particle-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/28Design optimisation, verification or simulation using fluid dynamics, e.g. using Navier-Stokes equations or computational fluid dynamics [CFD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/08Fluids
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/14Force analysis or force optimisation, e.g. static or dynamic forces

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Fluid Mechanics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请属于计算机技术领域,具体涉及一种粒子生成方法、装置、设备及存储介质。该方法包括:显示粒子生成界面;接收用户在粒子生成界面上的输入操作,输入操作用于确定待粒子化的实体模型、粒子分网尺度以及数据文件的保存路径;确定实体模型的边界;根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元;确定网格单元的质心为SPH粒子模型的数据;在保存路径中保存包含有SPH粒子模型的数据的数据文件。通过本申请可以一键生成并保存对实体模型进行粒子化后的数据文件,操作简便且通用性强。

Description

粒子生成方法、装置、设备及存储介质
技术领域
本申请属于计算机技术领域,具体涉及一种粒子生成方法、装置、设备及存储介质。
背景技术
随着科技的发展,光滑粒子流体动力学(Smoothed Particle Hydrodynamics,简称SPH)算法开始广泛用于游戏开发、计算机图形学及可视化、冲击、切削等涉及大变形大扭曲的场景中,是近20年发展起来的一种无网格分析方法。SPH算法的前提是实现实体模型的粒子化,以继续后续的分析计算。
目前,常见的粒子化技术包括基于Delaunay三角划分算法和沃若诺伊(Voronoi)图算法、无网格法等,也提出了专门针对某类结构实现粒子化的算法研究。但这些粒子化技术在技术实现上都比较繁杂,而且通用性较差。因此迫切需要一种操作简单,且通用的粒子生成方法。
发明内容
为了解决现有技术中的上述问题,本申请提供了一种操作简单且通用的粒子生成方法、装置、设备及存储介质。
第一方面,本申请提供一种粒子生成方法,包括:
显示粒子生成界面;
接收用户在粒子生成界面上的输入操作,输入操作用于确定待粒子化的实体模型、粒子分网尺度以及数据文件的保存路径;
确定实体模型的边界;
根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元;
确定网格单元的质心为SPH粒子模型的数据;
在保存路径中保存包含有SPH粒子模型的数据的数据文件。
一种可能的实施方式中,上述根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元,可以包括:根据实体模型的边界以及粒子分网尺度,确定实体模型的切割参考面;根据切割参考面,获取实体模型对应的网格单元。
一种可能的实施方式中,上述根据实体模型的边界以及粒子分网尺度,确定实体模型的切割参考面,可以包括:根据实体模型的边界在预设维度的边界值以及粒子分网尺度,确定实体模型在预设维度的两相邻切割参考面的距离;基于实体模型在预设维度的边界以及距离,得到实体模型的切割参考面。
一种可能的实施方式中,上述根据实体模型的边界在预设维度的边界值以及粒子分网尺度,确定实体模型在预设维度的两相邻切割参考面的距离,包括:确定实体模型的边界在预设维度的最大值和最小值的差为第一中间值;将第一中间值与粒子分网尺度的商取整数作为第二中间值;确定第一中间值和第二中间值的商为实体模型在预设维度的两相邻切割参考面的距离。
一种可能的实施方式中,上述保存网格单元的质心数据为SPH粒子模型的数据之前,还包括:确定实体模型的材料密度;根据材料密度确定网格单元的质心。
一种可能的实施方式中,上述粒子生成界面包括用于反映当前粒子生成进度的粒子生成进度条,粒子生成方法还包括:确定当前粒子生成进度;将当前粒子生成进度呈现在粒子生成进度条上。
第二方面,本申请提供一种粒子生成装置,包括:
显示模块,用于显示粒子生成界面;
交互模块,用于接收用户在粒子生成界面上的输入操作,输入操作用于确定待粒子化的实体模型、粒子分网尺度以及数据文件的保存路径;
处理模块,用于确定实体模型的边界;根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元;以及,确定网格单元的SPH粒子模型的数据;
保存模块,用于在保存路径中保存包含有SPH粒子模型的数据的数据文件。
一种可能的实施方式中,处理模块具体用于:根据实体模型的边界以及粒子分网尺度,确定实体模型的切割参考面;根据切割参考面,获取实体模型对应的网格单元。
一种可能的实施方式中,处理模块还用于:根据实体模型的边界在预设维度的边界值以及粒子分网尺度,确定实体模型在预设维度的两相邻切割参考面的距离;基于实体模型在预设维度的边界以及所述距离,得到实体模型的切割参考面。
一种可能的实施方式中,处理模块还用于:确定实体模型的边界在预设维度的最大值和最小值的差为第一中间值;将第一中间值与粒子分网尺度的商取整数作为第二中间值;确定第一中间值和第二中间值的商为实体模型在预设维度的两相邻切割参考面的距离。
一种可能的实施方式中,处理模块还用于:确定实体模型的材料密度;根据材料密度确定网格单元的质心。
一种可能的实施方式中,粒子生成界面包括用于反映当前粒子生成进度的粒子生成进度条。处理模块还用于:确定当前粒子生成进度;通过显示模块将当前粒子生成进度呈现在粒子生成进度条上。
第三方面,本申请提供一种电子设备,包括:处理器和存储器;
其中,存储器用于存储程序指令;处理器用于调用存储器中的程序指令执行如第一方面所述的粒子生成方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时用于实现第一方面所述的粒子生成方法。
第五方面,本申请提供一种计算机程序产品,计算机程序产品包含计算机程序,计算机程序被处理器执行时用于实现第一方面粒子生成方法。
本领域技术人员能够理解的是,本申请中,在将实体模型转换为粒子模型时,通过在粒子生成界面上进行待粒子化的实体模型的确定、设定粒子分网尺度以及数据文件的保存路径收后,可以一键生成并保存转化后的SPH粒子模型至数据文件中,操作简单,不需要掌握粒子生成算法的基本理论,适合包含初学者在内的任意相关人员;且,本方案不限定实体模型的具体结构,具有通用性。
附图说明
下面参照附图来描述本申请的粒子生成方法、装置、设备及存储介质的优选实施方式。附图为
图1是本申请实施例提供的一应用场景示意图;
图2是本申请的一实施例提供的粒子生成方法的流程示意图;
图3是本申请的一实施例提供的粒子生成方法的一键式粒子文件生成插件的界面示例图;
图4是本申请的另一实施例提供的粒子生成方法的流程示意图;
图5是本申请的又一实施例提供的粒子生成方法的流程示意图;
图6是本申请的一实施例提供的粒子生成方法的2D模型的测试结果示例图;
图7是本申请的一实施例提供的粒子生成方法的3D模型的测试结果示例图;
图8是本申请的另一实施例提供的粒子生成方法的3D模型的测试结果示例图;
图9为本申请的一实施例提供的粒子生成装置的结构示意图;
图10为本申请的一实施例提供的电子设备的结构示意图。
具体实施方式
首先,本领域技术人员应当理解的是,这些实施方式仅仅用于解释本申请的技术原理,并非旨在限制本申请的保护范围。本领域技术人员可以根据需要对其做出调整,以便适应具体的应用场合。
在本申请实施例中使用的术语是仅仅处于描述特定实施例的目的,而非旨在限制本发明。在本申请实施例中所使用的单数形式的“一种”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示为:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。
首先,对本申请涉及的部分技术术语进行解释说明:
Voronoi图,又叫泰森多边形或Dirichlet图,是一种多边形组合图形,由一组由连接两邻点直线的垂直平分线组成的连续多边形组成。
德罗内三角剖分算法(Delaunay triangulation algorithm,又称Delaunay三角划分算法),是一种对几何图形、平面图形进行数学分析的基本方法。如可以用于Voronoi图。
无网格法,即在没有网格分布下,进行质子的建模和分析,可以用于粒子生成技术。
SPH算法,这种算法广泛用于计算机图形学以及可视化、冲击、切削等涉及大变形和大扭曲的场景中,实现该算法的前提是实现模型的粒子化,必须完成粒子化之后才能进行SPH算法的计算。
ABAQUS软件,是一种多功能有限元软件,在工程模拟和仿真上具有强大的功能。
应用程序接口(Application Programming Interface,简称API)函数,是一种预先定义的函数,在进行工程运算时,通过调用API函数,可以简单快速的完成某些繁琐的运算。
目前,现有无网格法、基于Delaunay三角划分算法和Voronoi图算法等生成粒子模型技术在实现上都比较繁杂,而且通用性不是特别好,对于初学者而言,需要一定时间的基础理论学习才能完成实体模型的粒子化。
基于上述问题,本申请的实施例提供了一种粒子生成方法、装置、设备及存储介质,以实现以下目标:
1、快速生成光滑粒子,并另存粒子模型的数据文件用于SPH算法的后续使用,相比其它方法更加简单方便。
2、实现插件开发,可以一键生成并保存生成后的SPH粒子模型的数据文件,无需掌握粒子生成算法的基本理论,易于操作,且通用性强。
图1为本申请实施例提供的一应用场景示例图。如图1所示,在该应用场景中,计算机100安装有用于对实体模型进行粒子化的插件,在插件中导入待粒子化的实体模型后,直接在插件中一键生成粒子化模型以及数据,并将数据存储在计算机100中或导出计算机100。
需要说明的是,图1仅是本申请实施例提供的一种应用场景的示意图,本申请实施例不对图1中包括的设备进行限定,也不对图1中设备之间的位置关系进行限定。例如,在图1所示的应用场景中,还可以包括数据存储设备,计算机100既可以是PC,即电脑,也可以是手机或笔记本等终端设备,还可以是服务器或者服务器集群等其他类型的计算机。
下面以具体的实施例对本申请的实施例的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程,可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
图2是本申请的一实施例提供的粒子生成方法的流程示意图。本申请实施例提供一种粒子生成方法,适用于安装有对实体模型进行粒子化的插件的电子设备。如图2所示,该粒子生成方法包括:
S201、显示粒子生成界面。
在实际应用中,当用户有对实体模型进行粒子化的需求时,即可启动插件。电子设备在检测到插件的启动指令时,显示粒子生成界面。
示例地,如图3所示,该粒子生成界面包含以下几部分:打开粒子模型文件选项、保存SPH文件路径选项、粒子分网尺度值的设定框以及确定控件等。
其中,打开粒子模型文件选项用于导入实体模型,保存SPH文件路径用于表示实体模型完成粒子化后的保存路径,粒子分网尺度值的设定框用于人为预设粒子分网尺度值。
通过在粒子生成界面上对上述打开粒子模型文件选项、保存SPH文件路径选项、粒子分网尺度值的设定框进行设置,之后,点击确定控件触发粒子生成过程。
可选地,粒子生成界面还可以包含粒子生成进度条。通过粒子生成进度条可以直观显示生成粒子的进度。该情况下,粒子生成方法还可以包括:确定当前粒子生成进度;将当前粒子生成进度呈现在粒子生成进度条上。以使用户可以直观的获知粒子生成进度,提升用户体验。
S202、接收用户在粒子生成界面上的输入操作,输入操作用于确定待粒子化的实体模型、粒子分网尺度以及数据文件的保存路径。
用户在粒子生成界面中导入希望进行粒子化的实体模型后,输入基于历史经验或实际需求设置的粒子分网尺度,并设置该实体模型完成粒子化后数据的保存路径。
示例地,上述实体模型可以是三维(3D)的或者二维(2D)的任意实体结构。在三维实体模型中,可以是多面体、也可以是曲面体。一般的实际操作中,三维实体模型可以是立方体或者类圆柱体。对于二维实体模型,示例地,导入的二维实体模型可以为凸多边形,且内部存在中空结构,如将矩形内部挖去一个小椭圆部分。
关于粒子分网尺度,可以标识为δ,用于控制粒子数的多少,通常在粒子生成界面中设置的单位为毫米(mm),其物理意义是粒子化后得到的粒子的长度。在图3所示示例中,该长度为统一长度,即粒子沿着任何一个坐标轴的长度是相同的。在后续的操作计算中,用户可以根据实际需要对粒子分网尺度进行调整。可选地,粒子沿着不同坐标轴的长度还可以是不同的,此时需要在粒子生成界面中包含多个不同坐标轴对应的粒子分网尺度,例如,x轴对应的粒子分网尺度δx以及y轴对应的粒子分网尺度δy,等等。由于粒子的长度即两相邻切割参考面的间距,因此δx的物理意义即为在x轴上切割参考面的距离,同理,δy的物理意义为在y轴上切割参考面的距离。
示例地,保存粒子模型数据文件的路径例如为磁盘D中的文件夹中,当完成粒子生成之后,将数据文件保存在该路径中,方便SPH算法的后续使用。
S203、确定实体模型的边界。
根据导入的实体模型,电子设备确定实体模型的边界,包括确定边界的坐标。示例地,对于2D的实体模型而言,坐标轴为x轴以及y轴,其边界的最小值坐标为(xmin,ymin),其边界的最大值坐标为(xmax,ymax)。对于3D的实体模型而言,其边界的最小值坐标为(xmin,ymin,zmin),其边界的最大值坐标为(xmax,ymax,zmax)。该坐标值用于后续的切割面计算,并在粒子生成界面中可以根据边界坐标找到对应的坐标点,如图3所示例。
S204、根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元。
该步骤是基于在步骤S203中确定的实体模型边界与粒子分网尺度的基础上,将实体模型进行切割,从而得到网格单元,该网格单元即为粒子。
可以理解,切割后的每个网格单元大小基本是相同的,即将实体模型进行了等分处理,但实体模型的边界处的网格单元是与实体模型的实际边界形状相关的。
S205、确定网格单元的质心为SPH粒子模型的数据。
该步骤将切割后的网格单元进行数据处理。由于每个粒子都是有大小的,无法直接理想的将其看作一个点,因此,需要确定粒子的质心。具体地,在物理学角度上,当确定了一个物体的质点,则可以对其进行受力分析。在确定了粒子的质心之后,该质心可以等效代替SPH粒子模型,因此可以将粒子看作一个理想的点进行运算。可选地,该过程还需要借助ABAQUS软件中自带的API函数进行实现。
一种具体实现中,在该步骤之前,粒子生成方法还可以包括:确定实体模型的材料密度;根据材料密度确定网格单元的质心。一些实施例中,若实体模型的密度是均匀的,还可以确定网格单元的中心或重心等为SPH粒子模型的数据,例如密度均匀的正四方体的中心。示例地,可以利用ABAQUS软件自带的API函数获取网格单元的质心。
S206、在保存路径中保存包含有SPH粒子模型的数据的数据文件。
将粒子的质心坐标作为保存数据,保存到步骤S202中设定的保存路径中,该数据将会用于后续的SPH算法计算。
本申请实施例中,接收用户在粒子生成界面上的输入操作,输入操作用于确定待粒子化的实体模型、粒子分网尺度以及数据文件的保存路径;确定实体模型的边界;根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元;确定网格单元的质心为SPH粒子模型的数据;在保存路径中保存包含有SPH粒子模型的数据的数据文件。在将实体模型转换为粒子模型时,通过在粒子生成界面上进行待粒子化的实体模型的确定、设定粒子分网尺度以及数据文件的保存路径收后,可以一键生成并保存转化后的SPH粒子模型至数据文件中,操作简单,不需要掌握粒子生成算法的基本理论,适合包含初学者在内的任意相关人员;且,本方案不限定实体模型的具体结构,通用性强。
在上述实施例的基础上,为了实现步骤S204中将实体模型切割为网格单元的操作,可以利用ABAQUS软件中参考面的切割功能对实体模型进行网格化操作。可选地,S204、根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元,可以包括:根据实体模型的边界以及粒子分网尺度,确定实体模型的切割参考面;根据切割参考面,获取实体模型对应的网格单元。
具体地,在对实体模型进行切割时,会产生很多个切割参考面,如在3D实体模型中,需要三个平面来确定一个粒子;在2D实体模型中,需要两个平面来确定一个粒子。
本申请实施例中,通过粒子实体模型的边界和粒子分网尺度,确定切割参考面,根据切割参考面可以将实体模型切割为粒子,相比较其他粒子算法这种网格方法更加简单方便。在上述实施例的基础上,为了确定实体模型的切割参考面,需要先计算相邻切割参考面间的距离。图4是本申请的另一实施例提供的粒子生成方法的流程示意图。如图4所示,上述根据实体模型的边界以及粒子分网尺度,确定实体模型的切割参考面,可以进一步包括:
S401、确定实体模型的边界在预设维度的最大值和最小值的差为第一中间值。
示例地,该步骤用公式表达为(imax-imin),其中i可以为x或y或z,以i为x为例,公式表示实体模型在x轴上的两边界值的差。将同一个坐标轴下的实体模型的边界坐标值的最大值和最小值作差值,得到第一中间值,该第一中间值的物理意义为实体模型在该坐标轴下的总长度。示例地,在3D模型中,预设维度有三个,即x轴、y轴和z轴;在2D模型中,预设维度有两个,x轴、y轴和z轴中的任意两个。
示例地,对于3D模型而言,(xmax-xmin)即为该实体模型在x轴上的长度,(ymax-ymin)即为该实体模型在y轴上的长度,(zmax-zmin)即为该实体模型在z轴上的长度。实体模型在不同坐标轴上的长度可以互不同,即(xmax-xmin)≠(ymax-ymin)≠(zmax-zmin)。
可以理解,粒子分网尺度δ一般无法保证实体模型被切割后全部粒子的个数为整数值,因而需要对该粒子的个数进行数学取整处理。因此本申请实施例通过S403和S403对粒子分网尺度δ进行调整,得到实体模型在预设维度的两相邻切割参考面的距离。具体地:
S402、将第一中间值与粒子分网尺度的商取整数作为第二中间值。
示例地,该步骤用公式表达为int((imax-imin)/δ),其中int表示取整数。将第一中间值与粒子分网尺度δ进行除法运算后,得到是在其中一个坐标轴上的粒子的个数,由于实体模型在不同坐标轴对应的长度不同,因而从数学角度来分析,其对应的粒子个数也不同,并对除法运算之后得到的商取整数,作为第二中间值,该第二中间值的意义是将每个坐标轴上的粒子个数取整。
S403、确定第一中间值和第二中间值的商为实体模型在预设维度的两相邻切割参考面的距离。
具体地,该步骤公式表达为δi=(imax-imin)/int((imax-imin)/δ)。
由于总长度除以总数量等于单位长度,因此将上述求得的第一中间值除以第二中间值得到的是取整之后的粒子的长度。又因为切割参考面的相邻距离即为粒子的长度,因此,该除法运算后得到的δi即为相邻切割参考面的间距。在不同坐标轴下,该切割参考面的间距可以是不同,需要分别进行运算。
其中,S401至S403即如何根据实体模型的边界在预设维度的边界值以及粒子分网尺度,确定实体模型在预设维度的两相邻切割参考面的距离的一种具体实现。
S404、基于实体模型在预设维度的边界以及距离,得到实体模型的切割参考面。
在完成了确定坐标轴下的切割参考面的间距之后,沿着该确定的坐标轴,对实体模型进行等间距的切割,对于3D模型,需要3个相互垂直的切割参考面,对于2D模型,需要两条相互垂直的切割参考线。
示例地,用公式对切割参考面进行表示为xcoor=xmin+n*δx,ycoor=ymin+n*δy,zcoor=zmin+n*δz,其中n为正整数。δx为粒子在x轴上的长度,即相邻切割参考面在x轴上的距离;δy为粒子在y轴上的长度,即相邻切割参考面在y轴上的距离;δz为粒子在z轴上的长度,即相邻切割参考面在z轴上的距离。n的最大值是在该坐标轴上的粒子的个数。示例地,当n取值为0时,该参考参考面为实体模型的最小边界坐标。当n取值为1时,则该切割参考面切割出了第一个粒子,以此类推。
具体地,对于同一个坐标轴而言,每个切割参考面都是等间距的,该间距为粒子在该坐标轴上的对应长度。示例地,以3D实体模型为例,若该粒子在z轴上的长度为m,则每个切割参考面在z轴上的间距为m。再进一步地,不同坐标轴上的切割参考面间距是可以不同的,示例地,若粒子在y轴上的长度为n,则在y轴上,每个切割参考面的间距为n,且m≠n。上述计算方法同样适用于2D模型。
本申请实施例中,通过将预设的粒子分网尺度进行数学处理,先通过预设的粒子分网尺度求得在某个坐标轴上的粒子的数量,由于预设的粒子分网尺度无法保证切割后得到的粒子数量一定为整数,因此需要对粒子数量进行取整,重新计算某个坐标轴上的粒子的长度。由于粒子数量被进行了取整处理,因此该长度也是归一化长度。该方法中,将手动预设的粒子分网尺度通过数学取整处理后,换算出软件内切割后的粒子个数和粒子长度,不但对于使用者来说无需考虑复杂运算,还兼容了软件的粒子建模算法。
在具体应用中,可以基于ABAQUS软件自身强大的几何模型处理以及丰富的API脚本函数,实现本申请提供的粒子生成方法,能够通用于各类实体模型,而且实现过程比较快捷方便。
图5是本申请的又一实施例提供的粒子生成方法的流程示意图。本实施例实现模型粒子化主要利用ABAQUS软件作为脚本代码的运行依托,通过其自带的API函数实现粒子化。由于类似的操作已经在图2的实施例中进行详细叙述,因此此处不再赘述。具体实现的技术思路如下:
S501、通过软件导入实体模型(2D或3D)。
S502、对实体模型进行边界提取。
S503、进行粒子分网尺度δ设定。
S504、切割参考面生成。
S505、实体模型切割。
S506、材料设定。
S507、确定粒子的质心坐标。
S508、保存粒子化模型文件。
本申请实施例中,通过在软件中导入实体模型,人为设定粒子分网尺度后,软件即可自动完成粒子生成并用于后续SPH算法的计算。对于使用者来说,操作简单,无需进行复杂的粒子算法操作。
接下来通过如上所述的粒子生成方法对2D模型和3D模型进行粒子化测试。其中,图6是本申请的一实施例提供的粒子生成方法的2D模型的测试结果示例图;图7是本申请的一实施例提供的粒子生成方法的3D模型的测试结果示例图;图8是本申请的另一实施例提供的粒子生成方法的3D模型的算法测试结果示例图。参考图6、图7和图8,可见通过本申请提供的粒子生成方法,可以快捷高效地完成对实体模型的粒子化。其中,图6中的横纵坐标轴用于表示对实体模型粒子化后得到的粒子模型在两个坐标轴方向的尺寸信息;图7中分别示出对实体模型粒子化后得到的粒子模型的X方向投影视图、Y方向投影视图、Z方向投影视图以及ISO视图;图8中分别示出对实体模型粒子化后得到的粒子模型的在两个方向的投影视图以及其中一个方向的投影视图的局部放大示意图。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图9为本申请的一实施例提供的粒子生成装置的结构示意图。如图9所示,该粒子生成装置900包括:
显示模块901,用于显示粒子生成界面;
交互模块902,用于接收用户在粒子生成界面上的输入操作,输入操作用于确定待粒子化的实体模型、粒子分网尺度以及数据文件的保存路径;
处理模块903,用于确定实体模型的边界;根据实体模型的边界以及粒子分网尺度,获取实体模型对应的网格单元;以及,确定网格单元的质心为SPH粒子模型的数据;
保存模块904,用于在保存路径中保存包含有SPH粒子模型的数据的数据文件。
本申请实施例提供的装置,可用于执行如上所述实施例中的方法,其实现原理和技术效果类似,在此不再赘述。
一些实施例中,处理模块903还具体用于:根据实体模型的边界以及粒子分网尺度,确定实体模型的切割参考面;根据切割参考面,获取实体模型对应的网格单元。
可选地,处理模块903还可以用于:根据实体模型的边界在预设维度的边界值以及粒子分网尺度,确定实体模型在预设维度的两相邻切割参考面的距离;基于实体模型在预设维度的边界以及距离,得到实体模型的切割参考面。
一些实施例中,处理模块903还可以用于:确定实体模型的边界在预设维度的最大值和最小值的差为第一中间值;将第一中间值与粒子分网尺度的商取整数作为第二中间值;确定第一中间值和第二中间值的商为实体模型在预设维度的两相邻切割参考面的距离。
或者,处理模块903还可以用于:确定实体模型的材料密度;根据材料密度确定网格单元的质心。
一些实施例中,粒子生成界面包括用于反映当前粒子生成进度的粒子生成进度条。处理模块903还用于:确定当前粒子生成进度;通过显示模块901将当前粒子生成进度呈现在粒子生成进度条上。
图10为本申请的一实施例提供的电子设备的结构示意图。如图10所示,示例性地,电子设备可以被提供为一服务器或计算机。参照图10,电子设备1000包括处理组件1001,其进一步包括一个或多个处理器,以及由存储器1002所代表的存储器资源,用于存储可由处理组件1001的执行的指令,例如应用程序。存储器1002中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1001被配置为执行指令,以执行上述任一方法实施例。
电子设备1000还可以包括一个电源组件1003被配置为执行电子设备1000的电源管理,一个有线或无线网络接口1004被配置为将电子设备1000连接到网络,和一个输入输出(I/O)接口1005。电子设备1000可以操作基于存储在存储器1002的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
存储器1002可以是,但不限于,随机存取存储器(Random Access Memory,简称:RAM),只读存储器(Read Only Memory,简称:ROM),可编程只读存储器(ProgrammableRead-Only Memory,简称:PROM),可擦除只读存储器(Erasable Programmable Read-OnlyMemory,简称:EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,简称:EEPROM)等。
处理组件1001可以是一种集成电路芯片,具有信号的处理能力。上述的处理组件1001可以是通用处理器,包括中央处理器(Central Processing Unit,简称:CPU)、网络处理器(Network Processor,简称:NP)等。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本申请的一实施例还提供了一种芯片,包括:处理器和存储器;存储器上存储有计算机程序,处理器执行存储器存储的计算机程序时,实现上述各方法实施例中粒子生成方法的步骤。
本申请的一实施例还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,计算机程序被处理器执行时用于实现上述各方法实施例中粒子生成方法的步骤。
本申请的一实施例还提供了一种计算机程序产品,计算机程序产品包含计算机程序,所述计算机程序被处理器执行时用于实现上述各方法实施例中粒子生成方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
至此,已经结合附图所示的优选实施方式描述了本申请的技术方案,但是,本领域技术人员容易理解的是,本申请的保护范围显然不局限于这些具体实施方式。在不偏离本申请的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本申请的保护范围之内。

Claims (8)

1.一种粒子生成方法,其特征在于,用于基于ABAQUS软件,一键式生成光滑粒子流体动力学SPH粒子模型的数据文件,所述粒子生成方法包括:
显示粒子生成界面;
接收用户在所述粒子生成界面上的输入操作,所述输入操作用于确定待粒子化的实体模型、粒子分网尺度以及所述数据文件的保存路径;
确定所述实体模型的边界;
根据所述实体模型的边界以及粒子分网尺度,确定所述实体模型的切割参考面;
根据所述切割参考面,获取所述实体模型对应的网格单元;
确定所述网格单元的质心为SPH粒子模型的数据;
在所述保存路径中保存包含有所述SPH粒子模型的数据的数据文件。
2.根据权利要求1所述的粒子生成方法,其特征在于,所述根据所述实体模型的边界以及所述粒子分网尺度,确定所述实体模型的切割参考面,包括:
根据所述实体模型的边界在预设维度的边界值以及所述粒子分网尺度,确定所述实体模型在所述预设维度的两相邻切割参考面的距离;
基于所述实体模型在所述预设维度的边界以及所述距离,得到所述实体模型的切割参考面。
3.根据权利要求2所述的粒子生成方法,其特征在于,所述根据所述实体模型的边界在预设维度的边界值以及所述粒子分网尺度,确定所述实体模型在所述预设维度的两相邻切割参考面的距离,包括:
确定所述实体模型的边界在所述预设维度的最大值和最小值的差为第一中间值;
将所述第一中间值与所述粒子分网尺度的商取整数作为第二中间值;
确定所述第一中间值和所述第二中间值的商为所述实体模型在所述预设维度的两相邻切割参考面的距离。
4.根据权利要求1所述的粒子生成方法,其特征在于,所述确定所述网格单元的质心为光滑粒子流体动力学SPH粒子模型的数据之前,还包括:
确定所述实体模型的材料密度;
根据所述材料密度确定所述网格单元的质心。
5.根据权利要求1至4中任一项所述的粒子生成方法,其特征在于,所述粒子生成界面包括用于反映当前粒子生成进度的粒子生成进度条,所述粒子生成方法还包括:
确定当前粒子生成进度;
将所述当前粒子生成进度呈现在所述粒子生成进度条上。
6.一种粒子生成装置,其特征在于,用于基于ABAQUS软件,一键式生成光滑粒子流体动力学SPH粒子模型的数据文件,所述粒子生成装置包括:
显示模块,用于显示粒子生成界面;
交互模块,用于接收用户在所述粒子生成界面上的输入操作,所述输入操作用于确定待粒子化的实体模型、粒子分网尺度以及所述数据文件的保存路径;
处理模块,用于确定所述实体模型的边界;根据所述实体模型的边界以及所述粒子分网尺度,获取所述实体模型对应的网格单元;以及,确定所述网格单元的质心为SPH粒子模型的数据;
保存模块,用于在所述保存路径中保存包含有所述SPH粒子模型的数据的数据文件;
所述处理模块,具体用于根据所述实体模型的边界以及粒子分网尺度,确定所述实体模型的切割参考面;
根据所述切割参考面,获取所述实体模型对应的网格单元。
7.一种电子设备,其特征在于,包括:存储器和处理器:
所述存储器用于存储程序指令;
所述处理器用于调用所述存储器中的程序指令执行如权利要求1至5任一项所述的粒子生成方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现权利要求1至5中任一项所述的粒子生成方法。
CN202110644214.2A 2021-06-09 2021-06-09 粒子生成方法、装置、设备及存储介质 Active CN113378435B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110644214.2A CN113378435B (zh) 2021-06-09 2021-06-09 粒子生成方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110644214.2A CN113378435B (zh) 2021-06-09 2021-06-09 粒子生成方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN113378435A CN113378435A (zh) 2021-09-10
CN113378435B true CN113378435B (zh) 2023-02-17

Family

ID=77573336

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110644214.2A Active CN113378435B (zh) 2021-06-09 2021-06-09 粒子生成方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN113378435B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113888687B (zh) * 2021-12-07 2022-04-26 南京开博信达科技有限公司 一种粒子动态变换的实现方法及装置
CN115659769B (zh) * 2022-09-15 2023-11-03 深圳十沣科技有限公司 模型粒子生成方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329772A (zh) * 2008-07-21 2008-12-24 北京理工大学 一种基于sph的运动物体与水交互的仿真建模方法
CN112652044A (zh) * 2021-01-05 2021-04-13 网易(杭州)网络有限公司 粒子特效渲染方法、装置、设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765867B (zh) * 2020-12-21 2022-12-09 西安交通大学 一种基于粒子方法的通用光滑边界建模方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101329772A (zh) * 2008-07-21 2008-12-24 北京理工大学 一种基于sph的运动物体与水交互的仿真建模方法
CN112652044A (zh) * 2021-01-05 2021-04-13 网易(杭州)网络有限公司 粒子特效渲染方法、装置、设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
任意区域上的粒子均匀分布方法;倪国喜等;《计算力学学报》;20070815(第04期);全文 *
基于光滑粒子流体动力学算法的海浪建模仿真研究;李婷等;《地球信息科学学报》;20170228(第02期);全文 *

Also Published As

Publication number Publication date
CN113378435A (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
CN111815755B (zh) 虚拟物体被遮挡的区域确定方法、装置及终端设备
CN111639626B (zh) 三维点云数据处理方法、装置、计算机设备和存储介质
CN113378435B (zh) 粒子生成方法、装置、设备及存储介质
TW201616449A (zh) 點雲網格精細化系統及方法
CN113221371A (zh) 一种边坡临界滑动面确定方法、装置及终端设备
CN112199751A (zh) 一种墙体模型的生成方法、装置、电子设备及存储介质
CN110008387B (zh) 流场可视化实现方法、装置及电子设备
JP7262530B2 (ja) 位置情報の生成方法、関連装置及びコンピュータプログラム製品
CN114820980A (zh) 三维重建方法、装置、电子设备和可读存储介质
CN105335118B (zh) 一种电子设备控件的显示方法和装置
US20150032422A1 (en) Computing device and simulation method for processing an object
CN115984440A (zh) 对象渲染方法、装置、计算机设备和存储介质
CN112381773B (zh) 关键截面数据分析方法、装置、设备及存储介质
CN111354070B (zh) 一种立体图形生成方法、装置、电子设备及存储介质
CN113610864A (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
CN112487674A (zh) 晶格结构的模型生成方法和装置
CN108305329B (zh) 一种构建模型的方法及终端
US9858364B2 (en) Computing device and method for processing point clouds
CN110765513B (zh) 墙龙骨模型和l型顶导梁模型的连接节点放置方法和产品
CN110750847B (zh) 网格切分关系的确定方法、装置、设备和介质
CN116071755B (zh) 电子印章中的文字定位方法、装置、设备及存储介质
CN115659769B (zh) 模型粒子生成方法、装置、设备及存储介质
CN116522781B (zh) 样本数据生成方法、模型的训练方法和装置
KR102156336B1 (ko) 3차원 형상 재현 방법
CN115049766B (zh) 构建肌肉纤维模型方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 266000 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Applicant after: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Applicant after: Haier Kaos IOT Technology Co.,Ltd.

Applicant after: Haier digital technology (Qingdao) Co.,Ltd.

Address before: 266555 room 257, management committee of Sino German ecological park, 2877 Tuanjie Road, Huangdao District, Qingdao City, Shandong Province

Applicant before: QINGDAO HAIER INDUSTRIAL INTELLIGENCE RESEARCH INSTITUTE Co.,Ltd.

Applicant before: Haier CAOS IOT Ecological Technology Co.,Ltd.

Applicant before: Haier digital technology (Qingdao) Co.,Ltd.

GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 266000 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Patentee after: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Patentee after: Karos IoT Technology Co.,Ltd.

Patentee after: Kaos Digital Technology (Qingdao) Co.,Ltd.

Address before: 266000 No. 1, Minshan Road, Qingdao area, China (Shandong) pilot Free Trade Zone, Qingdao, Shandong

Patentee before: CAOS industrial Intelligence Research Institute (Qingdao) Co.,Ltd.

Patentee before: Haier Kaos IOT Technology Co.,Ltd.

Patentee before: Haier digital technology (Qingdao) Co.,Ltd.