On this page

Supported FEM Constraint Types

The following constraint types are supported only by the FEM Solver:

Built-in Target Constraints for the FEM Objects (distributed)

FEM Target Constraint (lumped)

FEM Fuse Constraint

FEM Region Constraint

FEM Surface Attach Constraint

In addition, the following constraint types are recognized both by FEM and the Wire Solver:

SBD Pin Constraint

SBD Spring Constraint

FEM Object Built-In Target Constraints (distributed)

Each FEM Solid Object and FEM Hybrid Object has a target constraint built in. This target constraint is designed to be used for smooth deformation. This gives you the best possible result with FEM if you are trying to guide a sim with a previously existing animation on the exact same topology. Instead of pulling exclusively on the primitive vertices, the solver distributes the pull of the target constraint evenly over all the interior points of the tetrahedra and triangles. Continuous target constraints are useful when you want to smoothly guide or influence a simulation with a previously existing animation for the same topology.

The distributed soft target constraints are completely distributed over an entire object. The Solid Object and the Hybrid Object have Target Strength and Target Damping controls. These controls the densities of the soft constraint forces (per cubed unit of length). This is very useful when you want to mix simulation with pre-existing animation, but you don’t want any visible artifacts between constrained and unconstrained regions. The solver recognizes point attributes targetstrength and targetdamping that act as multipliers for the corresponding parameters. These can be used to paint a smooth falloff from constrained regions to unconstrained regions.

The target animation may be specified in two ways. The easiest way is by pointing the Target Deformation of your Solid Object or Hybrid Object to the target animation. At each solve step, the finite element solver will look up the animated geometry for you at the corresponding times. In a more advanced setup, you may you may specify a 'targetP' point attribute on the simulation geometry instead of using the Target Deformation. However, to animate 'targetP' over time a SOP solver will be needed in the DOP network.

When using the built-in target constraints it is recommended that you choose Target Strength as low as possible without making the constrained simulated points diverge too much from the animation. Pick the lowest value that will give you good looking results. Picking excessively large values will do the job in theory, but this is not recommended in practice because this may adversely affect the performance and robustness of the solver. When a near exact match is needed instead of a loose match, hard constraints may often a more practical option.

FEM Target Constraints (lumped)

FEM Target Constraint: In contrast to the built-in continuous target constraint, this DOP constraint allows individual points to be pulled by target positions. The impact of these forces are local to the speficied points only; in contrast to the smooth built-in target constraint, FEM Target Constraints only affect the points that are specified (not their neighboring points). Discrete Target Constraints are most useful when you want to constrain individual vertices of your simulation geometry to an animation.

The lumped target soft constraints are soft constraints where the force is concentrated in individual points instead of being distributed over the entire continuum of the Solid or Hybrid Object. Such constraints can be created by putting down an Finite Element Target Constraints and setting its Type to SOFT. When the SOFT type is used, the parameters under the Soft Controls tab can be used to control the strength of the soft constraints. The higher the Target Strength, the larger the forces on the constrained points will be an the closer the simulation will try to match the animation. The Target Damping may need to be fine tuned in order to prevent the soft constraints from overshooting and oscillating around the target positions. Lumped soft constraints are the preferred option when a discrete selection of points need to be constrained (instead of a smooth region). An example use case is when you want to constrain a few corners of a box object.

Hard target constraints may be created in two ways. The easiest way is to create an Finite Element Target Constraint and set its Type to HARD. You may use the Constrain Points to Target shelf tool to create an Finite Element Target Constraint. The other, more advanced option, is to create an integer point attribute that is called pintoanimation, all points that have the value 1 will follow the target animation exactly.

FEM Region Constraints

FEM Region Constraint allows regions within a simulated FEM object to be constrained without requiring a matching topology. This constraint may work in both directions, because both objects involved in an FEM Region Constraint may be FEM Solid Object or FEM Hybrid Objects. This constraint currently works between tets and tets (not between triangles and tets or triangles and triangles).

Region constraints are a type of soft constraint that can be used to virtually merge multiple solid objects and hybrid objects together. For example, using region constraints objects can be put inside each other without actually merging their geometries into a single geometry. As an example, region constraints are used in the muscle system to put muscles and bones into a surrounding organic tissue, where each of these objects are simulated by the finite element solver. The Strength and Damping parameters on the Region constraints have the same units as the Target Strength and Target Damping parameters on the Solid/Hybrid Object, respectively.

FEM Surface Attach Constraint

This allows points of your FEM Solid Object or FEM Hybrid Object to be constrained to a polygonal surface. Each point in the constrained point group is constrained to a barycentric position on a goal object. This polygonal surface has to be part of a Static Object.

SBD Pin Constraint

In addition to constraints between simulation and animation, there are also constraints that have other simulated points as a goal. For example, the Finite Element Fuse Constraint can be used to connect pairs of points. When this constraint is set to HARD, then each pair of constrained points effectively becomes a single point. This feature may be used to form a single connected object from multiple objects or multiple connected components within a simulated object. In SOFT mode, the stitch constraint acts more like a spring between the points, but without a directional bias.

SBD Spring Constraint

Springs between points of simulated objects are supported as well, by means of the SBD Spring constraint.

Using Soft Constraints for Reducing Relative Velocities

In the most common use cases of soft constraints, the constraints act on the positions of simulation objects; we want the positions of the vertices (FEM nodes) to loosely match the position of other vertices or positions in an existing animation. However, sometimes it may be useful for match the velocities instead of positions. For example, if an object is attached to a fast moving object, we may want to use the damping feature of the soft constraint to make the constrained object match the velocity of the other object.

Hard versus Soft Constraint Modes

Finite elements support two main types of constraints: hard and soft constraints. In the case of hard constraints, the constrained points are made to follow the prescribed target animation exactly. Soft constraints are a method of constraining that mixes simulation and animation - the constrained points do not follow the target animation exactly. You can control how closely the soft constraints follow the target animation by means of a Target Strength parameter. Hard constraints have the advantage that you are guaranteed that the constrained points follow the animation exactly. When soft constraints are used, it is often necessary to try multiple different values of the Target Strength before the right amount of matching is achieved.

Finite Elements

Getting Started

Next steps

Solver Technology