nTopology 3.11 - What's New?

nTopology 3.11 is here! This release features an important update to the Overhang Constraint block, which now has an “Include Passive” input for including passive regions, a new Boundary by Body block, which enables you to scope boundary conditions to an implicit body, and a new overload for the FE Lattice Component block, which enables you to create an FE Component directly from a Lattice Body without having to explicitly create an FE Mesh. As with every release, nTopology’s dedicated support team is ready to answer your questions. Please visit support.ntopology.com to gain access to helpful tutorials and support articles.

Overhang Constraint Improvements

  • Based on your feedback, we’ve made improvements to how the Overhang Constraint block handles passive regions. A new input option, Include passive, includes passive regions in the overhang constraint calculation. The optimizer will add the necessary support to those regions as permitted by the volume fraction constraint. If Include passive is not selected, the optimizer ignores the passive regions in the overhang constraint calculation. 


  • Block Name: Overhang Constraint 

    Location: Beta->Topology Optimization 

    Description:  Defines a maximum overhang constraint for the topology optimization process. The constraint precludes designs with an inclination angle below a specified amount with respect to the build plate.   

    Input 1: Build direction

    • Type: Vector
    • Required
    • Description: Build direction and normal to the build plate. 

    Input 2: Max angle

    • Type: Scalar
    • Required
    • Description: Max overhang (inclination) angle of material with respect to the build plate.

    Input 3: Support boundaries

    • Type: FE Boundary List
    • Optional
    • Description: Support boundaries material can be placed onto. 

    Input 4: Auto-detect support

    • Type: Bool
    • Optional
    • Description: Option to automatically detect boundary faces of the design space that can provide support for a given print direction and overhang angle.

    Input 5: Include passive

    • Type: Bool,
    • Default: True
    • Description: Option to include passive regions in the overhang constraint calculation.  If selected, the optimizer will try to add the necessary support to the passive regions as dictated by the Max angle input.  If not selected, the optimizer will ignore the passive regions in the overhang constraint.

    Output: Optimization constraint

Boundary by Body Block

  • Release 3.11 debuts the Boundary by Body block which allows scoping Boundary Conditions to an Implicit Body without referencing an FE Mesh. The association to the mesh is made in the analysis blocks when the Boundary Conditions are combined with the FE Model. This allows boundary conditions to be re-used on multiple meshes and eliminates the need to copy boundary conditions from a topology optimization to a downstream simulation.  


  • Block Name: Boundary by Body

    Location: Simulation->Utilities 

    Description:  Selects boundary entities of the FE Mesh (faces/edges/nodes) that lie within a desired tolerance of an Implicit Body.    

    Input 1: Entity

    • Type: FE Boundary Enum
    • Required
    • Description: The type of mesh entity to select. 

    Input 2: Body

    • Type: Implicit Body
    • Required
    • Description: The implicit body used to select the mesh entities. 

    Input 3: Reverse

    • Type: Bool
    • Default: False
    • Description: Option to select entities outside the implicit body instead of inside. 

    Input 4: Tolerance

    • Type: Scalar
    • Required
    • Description: The tolerance for checking at the implicit body’s boundary. A positive value will effectively extend the region while a negative value will shrink it.

    Output: FE Boundary

New FE Lattice Component Overload

  • An overload has been added to the FE Lattice Component block which creates an FE Component directly from a Lattice Body without having to explicitly create an FE Mesh. In addition, all overloads of this block have been promoted from a toolkit custom block to a built-in custom block.


  • Block Name: FE Lattice Component

    Location: Design Analysis->Model Assembly 

    Description: Meshes a Lattice Body using either beam or shell elements and creates an FE Component with the given material properties.    

    Input 1: Lattice

    • Type: Lattice Body
    • Required
    • Description: The lattice body to be meshed. 

    Input 2: Geometric order

    • Type: Geometric Order Enum
    • Required
    • Description: The geometric order of the finite elements. 

    Input 3: Subdivisions

    • Type: Scalar Field
    • Required
    • Description: The number of finite elements along a lattice beam.  Shell elements cannot be subdivided.

    Input 4: Material

    • Type: Isotropic Material
    • Required
    • Description: The isotropic material specification for the component.

    Output: FE Component

Usage Improvements

  • With GPU Acceleration (Beta) enabled, Plane, Axis, and Point types are now interactive, meaning you can change their values and see changes occur in the viewport in real time. To enable GPU Acceleration, go to File > Settings > General and check Enable GPU acceleration (beta). Note: Interactivity is not enabled for point lists, plane lists, and axis lists.
  • We’ve updated the Mesh from Implicit Body by Voxels (beta) block, changing the Min. feature size input from a required input to an optional input.
  • The Natural Frequency Response block used with topology optimization now supports free vibration by making the Load case input optional.  
  • The FE Lattice Mesh block now accepts a Scalar Field for the Subdivisions input. This allows you to vary the discretization of the lattice beams.    

Bug Fixes

  • We fixed a bug in the Volume Lattice block where incorrect tessellation happened when the scale was small.
  • We fixed an issue with the Pore Diameter from Lattice Body (beta) block that was causing the Point Map output to have a non deterministic order. Now the pore diameters are sorted according to their size, from smallest to largest. If the sizes are equal, they will be sorted by the point’s coordinates.


 whats new 3.11 
Was this article helpful?