IP Library Granted Patent US 10,943,037
Granted Patent B2
US 10,943,037 · App. 14/765,425 · Granted Mar 9, 2021

Generating a CAD model from a finite element mesh

Inventors: Manish Chauhan (Pune, IN); Dhiraj Nahar (Pune, IN); Sumit Pal (Pune, IN); Sameer Shah (Pune, IN)
Assignee: DASSAULT SYSTEMES SIMULIA CORP.
G06F30/23
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,943,037
App. No.
14/765,425
Granted
Mar 9, 2021
Kind
B2
Abstract

The present invention relates to a method and corresponding system for generating a computer-aided design (CAD) model from a finite element mesh. The method of the invention begins with selecting one or more mesh-element-faces on a finite element mesh that represents a geometric object to be formed of one or more geometric faces. Next, from the one or more selected mesh-element-faces, respective geometric faces are generated. Finally, any generated geometric faces are stitched together to make a geometric shell of the geometric object that the finite element mesh represents.

Claims (67)

1. A computer-based method for generating a computer-aided design (CAD) model of a real-world object from a finite element mesh, the CAD model employed in finite element simulations of the real-world object and the method comprising:

selecting one mesh-element-face on a finite element mesh for each respective geometric face of a geometric object, the finite element mesh representing the geometric object to be formed of each respective geometric face wherein, the geometric object represents the real-world object and each selected mesh-element-face corresponds to a different respective geometric face of the geometric object and each different respective geometric face is represented by a plurality of respective mesh-element-faces;

in response to selecting one mesh-element-face for each respective geometric face, generating geometric faces, including, for a given geometric face, detecting the plurality of respective mesh-element-faces that represent the given geometric face to be generated from the selected one mesh-element-face;

stitching together the generated geometric faces to make a geometric shell of the geometric object representing the real-world object; and

performing a finite element simulation using the geometric shell to determine behavior of the real-world object;

the generating, stitching, and performing being automatically implemented by a processor.

2. The method of claim 1 further comprising:

converting the geometric shell into a solid geometric model; and

generating a finite element mesh from the solid geometric model.

3. The method of claim 1 wherein generating the geometric faces comprises:

determining respective geometric surfaces corresponding to each selected mesh-element-face;

using each selected mesh-element-face and the finite element mesh, identifying bounding edges of each geometric face to be generated; and

generating each geometric face using the determined geometric surfaces and identified bounding edges.

4. The method of claim 3 wherein each determined geometric surface is a non-analytical geometric surface or an analytical geometric surface, wherein an analytical geometric surface has a type which is one of: a plane, a cone, a cylinder, a sphere, and a torus.

5. The method of claim 1 further comprising:

selecting one or more mesh-element-faces for a geometric face to be generated; and

from the selected one or more mesh-element-faces, detecting neighboring mesh-element-faces that represent the geometric face to be generated.

6. The method of claim 1 further comprising:

selecting one or more mesh-element-faces for a geometric face to be generated; and

specifying a number of mesh-element-face layers surrounding the selected one or more mesh-element-faces that represent the geometric face to be generated.

7. The method of claim 1 further comprising:

selecting a mesh-element-face for a geometric face to be generated, the selected mesh-element-face having a respective normal;

specifying an angle; and

detecting neighboring mesh-element-faces, each with a respective normal, starting

from the selected mesh-element-face, wherein the respective normal of each detected mesh-element-face intersects the respective normal of adjacent mesh-element-cells at an angle less than the specified angle, the detected mesh-element-faces representing the geometric face to be generated.

8. The method of claim 1 further comprising:

selecting a mesh-element-face for a geometric face to be generated, the selected mesh-element-face having a respective normal;

specifying an angle; and

detecting mesh-element-faces each with a respective normal, wherein the respective normal of each detected mesh-element-face intersects the respective normal of the selected mesh-element-face at an angle less than the specified angle, the detected mesh-faces representing the geometric face to be generated.

9. The method of claim 1 further comprising:

importing the finite element mesh.

10. The method of claim 1 wherein selecting one mesh-element-face on the finite element mesh for each geometric face of a geometric object comprises:

selecting a node, an edge, and/or a mesh-element-face.

11. A system for generating a computer-aided design (CAD) model of a real-world object from a finite element mesh, the CAD model employed in finite element simulations of the real-world object and the system comprising:

an interface configured to allow a user to select one mesh-element-face on a finite element mesh for each respective geometric face of a geometric object, the finite element mesh representing the geometric object to be formed of each respective geometric face wherein, the geometric object represents the real-world object and each user selected mesh-element-face corresponds to a different respective geometric face of the geometric object and each different respective geometric face is represented by a plurality of respective mesh-element-faces;

a geometry generation module configured to:

generate geometric faces from each user selected mesh-element-face, including, for a given geometric face, detecting the plurality of respective mesh-element-faces that represent the given geometric face to be generated from the user selected one mesh-element-face;

stitch together the generated geometric faces to make a geometric shell of the geometric object representing the real-world object; and

perform a finite element simulation using the geometric shell to determine behavior of the real-world object.

12. The system of claim 11 wherein the geometry generation module is further configured to convert the geometric shell into a solid geometric model and further comprising:

a mesh generation module configured to generate a finite element mesh from the solid geometric model.

13. The system of claim 11 wherein the geometry generation module is further configured to:

determine respective geometric surfaces corresponding to each selected mesh-element-face;

identify bounding edges of each geometric face to be generated using each selected mesh-element-face and the finite element mesh; and

generate each geometric face using the determined geometric surfaces and identified bounding edges.

14. The system of claim 13 wherein each determined geometric surface is a non-analytical geometric surface or an analytical geometric surface, wherein an analytical geometric surface has a type which is one of: a plane, a cone, a cylinder, a sphere, and a torus.

15. The system of claim 11 further configured to:

allow a user to select one or more mesh-element-faces for a geometric face to be generated; and

detect neighboring mesh-element-faces of the selected one or more mesh-element-faces that represent the geometric face to be generated.

16. The system of claim 11 further configured to:

allow a user to select one or more mesh-element-faces for a geometric face to be generated; and

allow a user to specify a number of mesh-element-face layers surrounding the selected one or more mesh-element-faces that represent the geometric face to be generated.

17. The system of claim 11 further configured to:

allow a user to select a mesh-element-face for a geometric face to be generated, the selected mesh-element-face having a respective normal;

allow a user to specify an angle; and

detect neighboring mesh-element-faces, each with a respective normal, starting from the selected mesh-element-face, wherein the respective normal of each detected mesh-element-face intersects the respective normal of adjacent mesh-element-faces at an angle less than the specified angle, the detected mesh-element-faces representing the geometric face to be generated.

18. The system of claim 11 further configured to:

allow a user to select a mesh-element-face for a geometric face to be generated, the selected mesh-element-face having a respective normal;

allow a user to specify an angle; and

detect mesh-element-faces each with a respective normal, wherein the respective normal of the selected mesh-element-face intersects the respective normal of each detected mesh-element-face at an angle less than the specified angle, the detected mesh-element-faces representing the geometric face to be generated.

19. The system of claim 11 wherein the interface is configured to allow a user to select each mesh-element-face on the finite element mesh for each geometric face of a geometric object by selecting a node, an edge, and/or a mesh-element-face.

20. A computer program product generating a computer-aided design (CAD) model of a real-world object from a finite element mesh, the CAD model employed in finite element simulations of the real-world object, the computer program product executed by a server in communication across a network with one or more clients and comprising:

a non-transitory computer readable medium, the computer readable medium comprising program instructions which, when executed by a processor causes:

selecting one mesh-element-face on a finite element mesh for each respective geometric face of a geometric object, the finite element mesh representing the geometric object to be formed of each respective geometric face wherein, the geometric object represents the real-world object and each selected mesh-element-face corresponds to a different respective geometric face of the geometric object and each different respective geometric face is represented by a plurality of respective mesh-element-cells faces;

in response to selecting one mesh-element-face for each respective geometric face, generating geometric faces, including, for a given geometric face, detecting the plurality of respective mesh-element-faces that represent the given geometric face to be generated from the selected one mesh-element-face;

stitching together the generated geometric faces to make a geometric shell of the geometric object representing the real-world object; and

performing a finite element simulation using the geometric shell to determine behavior of the real-world object.

Assignments (2)
MERGER Recorded Jan 31, 2024
From: DASSAULT SYSTEMES SIMULIA CORP.
To: DASSAULT SYSTEMES AMERICAS CORP.
Reel/Frame 066383/0536 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2015
From: CHAUHAN, MANISH; NAHAR, DHIRAJ; PAL, SUMIT; SHAH, SAMEER
To: DASSAULT SYSTEMES SIMULIA CORP.
Reel/Frame 036238/0857 →
Continuity (1)
Related Publication 20160042106A1 · Feb 11, 2016