CDFAM CD/DC 26 · Washington DC · 16 July 2026

Fast and Robust Design with Implicit Functions and Direct Simulation

Abstract

Current Computer Aided Design systems excel in static detailed design but are too fragile and slow to support Design Exploration and Multidisciplinary Design Optimization for conceptual and preliminary design. This talk introduces a new approach to modeling products that overcomes these shortcomings based on implicit functions popularized in the animation industry. The main benefits of the approach is that is responsive to the need to design and redesign products in days or weeks and not month or years because of absolute robustness to parametric change minimizing human intervation; lightning fast evaluations leveraging GPUs; and performing analysis directly from the representation w/o the need of human intervention to generate cumbersome and error prone meshes.

Transcript

From the speaker’s corrected captions. Each timestamp opens the video at that moment.

Read the full transcript · 2,547 words

0:02 All right, looks like all my slides are here. Good morning everybody. What I’m hoping that you will get out of this talk is that implicit functions will enable rapid design exploration. So, if there’s one thing you should take away is that there’s a new way to do engineering design. So where are we coming from? Well, the US government has stated that rapid adaptation is a strategic advantage, which basically means that they want new designs or new design variations in days, not months or years.

1:03 Which means that your old processes using legacy systems may not cut it anymore. We need something new to enable this. And so let’s step back and think about what we’re trying to do. We’re trying to do design. Design is solving an inverse problem because you’re starting off on your right hand side with the objectives. We want to achieve a particular mission and now you have to back out what species and what is the best of species that can achieve this particular mission.

1:43 And this is really hard because there’s no closed form solution that typically gives you the answer. This is what engineering design is all about and you know basically the subject of part of this conference. Now one thing we can do really well and a lot of you are working on that already and that is if you have gi if you’re given a shape you can actually compute its performance.

2:10 How far will it fly? What it’s what’s it how much lift does it produce if you talk about airplanes what’s its range and so on and the question is how do you turn this around how do you flip this to solve the inverse problem well it so happens that math shows the way and you can use optimization to figure out what the inverse how to compute the inverse solution and so how do you how do you do this well it’s actually very simple You start off to create a function box and what you put inside the function box is for example parametric geometry where you can generate different versions of a vehicle.

2:51 You can analyze it against multiple physics, aerodynamics, structures, thermal whole host of other things. What you and what you have achieved with this function box is that you have a set of inputs wingspan cord whatever have you and out comes lift drag range runway length and so on. Obviously I’m very focused on aerospace which is what my background is but essentially what you need to do is start off with creating this function box and then the next step is you wrap this into or you embed this into an optimization scheme where in essence what you do is you jiggle around the parameters until you get close to your objectives.

3:38 That’s essentially what the whole optimization loop allows you to do. Now we’re talking a lot about AI. There may be different ways of doing this, but fundamentally this is how you can solve an inverse problem. So the optimization isn’t there necessarily to find the best god vehicle. It’s really to minimize the difference between the performance of what you have with your stated objectives. Now what is important is what happens in this function box because you want this to execute reliably quickly and you don’t want to have any human intervention while you exercise this because you you will be looking at thousands possibly tens of thousands of different instances of all of this.

4:34 Another thing that you want ideally is that this is differentiable. So you want to know the sensitivities of the input parameters against the performance parameters. So if you change span, how will it change lift? For example, this is not always easy to achieve. But it is an important factor. And let’s dive deeper into what this function box needs to satisfy to enable this entire process. And what you see here are the basic requirements.

5:10 The top three you have direct control over because it comes down to how do you parameterize the vehicle so that any point in your design space generates a valid vehicle. Ideally, you don’t want to create nonsense, which you see here with the wing platform that crosses itself over. And you would also would like to embed some of the underlying physics. Wings produce lift. You don’t want to start off with a brick if you already know that the wing needs to be in a particular shape.

5:43 This reduces your search base. But then the remainder, you’re at the mercy of the system that you’re using. And what it really comes down to is you want predictable shape control. You don’t want to have unintended bumps and wiggles appear. You don’t want it to fail. You want to be able to feed all your analysis codes. And ideally, you would also like to use the latest hardware, for example, GPUs.

6:16 And if you look at the current incumbent systems, they’re based on something called boundary representations. This was developed in the 80s or late 70s early 80s and it’s a very explicit representation where you have a bunch of faces that are connected by edges which means that each time you do a design update all of these edges all of these surfaces need to be recomputed. And if you look at the fragility of this process, there are a whole bunch of them.

6:47 There are a whole bunch of trap doors that exist. Surface surface intersections fail. Here you see an example of coincident faces. There’s a lot of fragility with topology, especially to do with blends. And you have a whole bunch of other problems that appear with it. In addition, they’re all based on old style program, old style code that don’t necessarily leverage the latest hardware. The consequence is that there is if there is one failure in any of these computations, your system doesn’t your model doesn’t update.

7:28 And if you want to do thousands and thousands of these, you cannot afford a lot of failures. You really want this to be highly reliable. And the current incumbent systems have some difficulties with this and so the geometry is basically the bottleneck. So I just mentioned bre failures. I will be talking about so bre failures models that break stop your system. You also want to feed downstream codes.

8:00 I’ll be talking about that later. And you also want to use the latest hardware. So those are the three things we’re targeting right here. And so where does the inspiration come from on how to do it differently? And sometimes it’s necessary to step back and see who has solved this problem already. Well, it so happens that the animation and gaming world have already solved a very similar problem.

8:28 And if you look at the space that they work in, if you look at the engineering space, we have to deal with millions of different parts. Trip 7 has 5 million. And you know, we’re talking a spatial scale of about 100 m. If you look at the animation industry, they’re also dealing with millions of entities in a scene that’s typically also on the size of 100 m, 2 kilometer, whatever have you.

9:06 But then you look at the systems that we use. As I mentioned earlier, engineering is largely based on boundary representation, which has all these fragilities. You have unreliable updates and it’s slow. If you look at the animation industry, they’re based on something called implicit functions, more specifically signed distance functions. And I’ll tell you what that is in a minute. And it’s specifically aimed to have reliable morphing.

9:30 So they have embedded, they have embraced that things have to change and they have to change reliably because they want an update every 25 they want to have 25 updates to the image per second or more. And so you cannot afford for this to fail. You really want this to be highly reliable. And so based on that, what is an implicit function? Well, here’s a recap of your high school math.

10:06 An implicit function is nothing more than than a function that takes a bunch of inputs, in this particular case, the coordinates of a point, and returns a value. And based on the value and in fact based on the sign of the vi value you can determine where the point is with respect to the geometry that the function represents. So if you look at a representation of a plane, which you see written down right there, if you plug in the point that says P out into this equation, you will get an answer that’s greater than zero because it’s along the normal of the plane.

10:51 That means that the point is outside. We chose it this way that the point is outside of the half space that this plane represents. If the result is zero, you are actually on the plane. And then finally, if the result is less than zero, then you’re basically in the material of the of the of the object you’re trying to represent. And this is very remin reminiscent of something called point membership classification.

11:28 Happy to talk about that more but once you can determine where a point is you can build an entire modeling system based on that and how do you do that how do you combine these things let’s suppose we have two planes f_sub_1 and f_sub_2 if you want to compute the intersection all you have to do is compute the max of the values returned and then you know whether the point is inside both of the half spaces that are represented by these equations.

11:41 If you want to compute the union between those two, all you have to compute is the minimum of the values returned given a particular point. And that’s it. There’s really not much more to it than that. Of course, there’s a bunch more mathematics that do with it, but there’s no explicit computation of edges, which means this evaluates very reliably unless you do something stupid like a division by zero, but you have control over that.

And essentially this scheme is failafe. And if you go to the next step, here’s a representation of basically the nTop logo. It’s a basically a math tree. It’s really nothing more than a math tree. And the beauty of this is you can shove this entire entirely in all the different GPU cores and you flood it with a bunch of points and all the points that return zero are the ones that you display.

13:07 And all the points that are less than zero are inside that you can then use for other computations that you need to do. And so this is extremely fast and extremely reliable. And here you see an example of how an object is built in Ntopology. You start with a bunch of shapes and this is actually real time. And as you can see things move very quickly, very smoothly.

13:37 You can make changes very rapidly. It’s all very reliable. Here you see some interior. We’re just going to walk through some of this here. And you see a little bit of display latency with some fragments. And here you see adding what I would call winglets. And the winglets are being blended as you can see. And all updates very rapidly and very reliably. Now enthropology got its origins in topology optimization.

14:11 And so you can actually combine parametric optimization with topology optimization to generate structures. It’s something we haven’t really explored extensively as yet. I just wanted to offer to the community to say look there are multiple ways in which you can use this system to generate your structures and the objects you’re trying to model. Now another thing that I alluded to earlier is you still need to analyze this and currently the state-of-the-art is you have to mesh things and that also introduces a bunch of fragilityities people have u bunch of workarounds but according to Ted Blacker at Sandia who wrote a paper on this he did a study 70% 73% of all design effort is actually spent on fixing meshes.

15:13 And so the question is how can we do better? Well, one way is to get to eliminate confformal measures. So I’m not necessarily saying that all meshes fail or all analysis fails because of meshing, but a lot of them do and it’s something to be careful for. So anyway, and topology has invested into a number of codes that eliminate the need for conformal measures, which means meshes that follow the surfaces and replaced it with essentially volume measures that embed the entire model and they have a lattice boltsman method with large Eddie simulation that works directly from this representation.

And for those of you who were here yesterday it also leverages intact solutions meshless method and it’s very clever. They used a paper that was written in 1958 by Ktoovich who received actually the Nobel Prize in economics not in this in economics. So he’s a smart guy. He reformulated linear elastics in terms of properties around the point mostly the distance to to the boundary and I believe it also includes the moments once you can evaluate a point with respect to the distance to these points and compute some other properties you can actually perform linear elastics and it’s independent of the representations no conformal meshes needed and so I’m just trying to tell the community.

16:52 Here are some interesting new ways of doing performing analysis that enthropology is leveraging. Of course, anthropology is also working together with how can I say incumbent systems. And usually whenever we talk to a customer, they have a whole host of internally built systems that we have to interface with. But the the main thing is we have put some thought into well how can we eliminate all of these complications.

17:28 Here you see the result of some structural analysis. I think that was also demonstrated yesterday. And then finally here you see MDO in action. This is a group three drone. And as you can see as it’s exploring the design space, it’s also building the pareto curve which is the boundary between infeasible designs and nonoptimal designs. And so the pareto curve is really important because it provides information to the engineer to pick a point along this paro curves to basically trade off different kinds of properties.

18:15 The output is essentially a browsable document. For those of you who can capture the the QR code on the on your upper right hand side, you can actually look and browse on this data. You can click on the results and look what the geometry looks like. But in essence what I try to convey to you that NTOP is the next generation CAD system built on a different set of mathematics to enable rapid and reliable design exploration to respond to basically the needs of the community, the needs of the government. Anyway, thank you so much and happy to talk to you more.

Register for Updates and Discounts on CDFAM events.