It goes without saying that engineering and physical production need to be intimately related. Engineering without regard for manufacturability makes no sense; at the same time new advances in production capabilities often call into question existing designs, and it’s a challenge to re-engineer the object accordingly. With the adoption of industrial 3D printing, Design for Additive Manufacturing (DfAM) has become a hot topic, but it’s difficult to implement using existing engineering tools and methods, such as CAD.
At LEAP 71, we believe that manufacturing constraints should be an integral input to the process that creates a part using Computational Engineering. Just like growth rules are encoded into the DNA of living organisms. Ideally, the resulting object can be manufactured “as-is”, but even if not, changes to the rules and re-computation of the result can happen very quickly, allowing us to adapt to the real world. This is also important when exploring the actual limits of the production process. It allows us to stay within safe boundaries, but also realize what is possible.
In the past, we have shown examples coming from our computational process. While these parts have attracted attention due to their complex geometry, they don’t tell the full story. Whenever you see one of our objects, you only see one output from an algorithm that takes many parameters into account. Depending on these inputs, the results may look similar or even vastly different.
Evolving metal printer capabilities
Over the past 18 months, we have seen big leaps in the ability of metal printers to produce objects with very shallow overhang angles, even printing almost horizontally. In traditional engineering, taking advantage of these capabilities would require a complete redesign of the object, which, for complex parts, can take weeks or months.
In a computational model, if set up right, it just requires the change of a parameter and instant re-computation of the algorithm.
We have talked about this concept in the past, but we have yet to see a demonstration of a part’s evolution across a full range of possible overhang angles. This highlights the power of a Computational Engineering approach to DfAM, but also showcases how you can do component optimization across various printing systems. As an example, we have chosen to examine an injector head for a rocket engine. This allows us to ask questions like, how it would differ on a copper printer that can do 45º overhangs versus a system that can do 30º overhangs in Inconel. Which version would offer more performance, and which would have lower production costs? What about weight vs. cost vs. performance?
Our algorithm is fed with parameters that dictate the allowed maximum overhang angles or permissible minimum wall thicknesses. This ensures that the resulting 3D-printable object is guaranteed to work on the specified system, and that the component can be realized in analogous ways on different printers.
Building a computational rocket injector head
Injector heads are crucial components of propulsion systems. Our computational model for a rocket injector features co-axial swirlers that are ideal for liquid-liquid propellant types, such as cryogenic oxygen and methane or RP-1. Depending on the selected propellants, the ideal mixing ratio varies, and this is expressed in the geometric outcome. For instance, the respective pipes and swirler elements adapt their cross-sectional areas accordingly. There is also a third fluid volume, called the purge layer, where pressurized nitrogen fills the void between the two propellant volumes. This safety measure ensures that if there is a crack or leak in the printed walls, oxidizer and fuel won’t get in direct contact and risk ignition inside the injector’s piping.
The part was generated using Computational Engineering, which is significantly different from traditional CAD-based workflows. The engineer writes computer code (object-oriented in C#) which runs to produce the geometry within seconds or minutes. The algorithm consists of separate modules, in this example, for piping, swirler elements, outer flange, fluid volumes, volutes and distributers, which “negotiate” the final result. Each module includes an initial set of parameters and rules, based on an engineer’s knowledge, that can be easily fine-tuned and expanded in the future. Computational Engineering reduces the time for every iteration while increasing the possible complexity of the created parts.
Automatically redesigning for printability
For this part evolution, we wrote functions that continuously change the geometries of some of these modules depending on the global overhang constraint. All pipes, for instance, adjust their cross-sectional shape from perfectly round to an increasingly spiky teardrop shape when only steep overhangs can be realized. The injector face changes its curvature, the main flange varies its outer wall steepness, and the internal volutes update their position within the component (so that sub-components don’t clash). A support generator class creates support struts for the specified geometries (e.g., the horizontal volutes) based on inputs for the allowed overhangs and clustering ranges. Note that the supports become an integral part of the design as they not only ensure printability but are also intended to take some of the loads that the injector head is exposed to.
The result is a computational model, that seamlessly adapts to the input parameters, outputting an infinite range of geometries that can be test-printed, evaluated using simulation and physical testing, and further iterated on.
Engineering in a multidimensional parameter space
We believe we are moving towards a future where engineering requirements are continuous spaces of multidimensional input parameters. Computational models will be the portal to probe and sweep through this space, enabling engineers to ask novel questions on system optimization that include not only the part’s performance but also manufacturing constraints and material options.