SmartForm is a component that is used for applying dynamic relaxation on a SmartMesh. A SmartMesh can be created from a mesh or a list of lines. SmartForm should be considered as a conceptual tool for modeling structural efficient forms. Since it is a conceptual tool input and outputs should not be considered as exact values, by exact values meaning for instance exact forces, stiffness.

To be able to use SmartForm you will need to:

- Supply a geometry that is possible to convert to a SmartMesh.
- Supply geometry that will constrain the geometry during the relaxation.
- Apply a force on the geometry that you want to relax.

Input Parameters:

- SmartMesh (1) - Input parameter for a SmartMesh that is to be used for relaxation.
- Constrain Geometry (2) - Input parameter for geometry that is to be used as constraints during relaxation.
- Stiffness (3) - Slider input for determining the stiffness of the bar elements, default value is 1.
- Slack Length (4) - Slider input for determining the slack length of the bar elements, default value is 1.
- Weight (5) - Slider input for determining the strength of the gravity force in the nodes, default value 1.
- Inflation (6) - Slider input for determining the strength of the inflation force on the panels,default value 0.
- Max Iterations (7) - Slider input for number for determining the maximum amount of iterations of relaxation. The timer button must be turned off(black) for this to work.

Output Parameters:

- Relaxed SmartMesh (16) - parameter for the relaxed SmartMesh.
- Iterations (17) - Number of iterations needed until convergence.
- Total Force (18) - Returns the total force in all nodes in at the specific time.

Interior Parameters:

- Play (8)- Play button and Pause button used for starting and pausing relaxation.
- Reset (9) - Reset button for reseting relaxation to initial state.
- Timer (10) - Timer button deciding if you want real time response(on,green) or if you want the relaxation to work in the background(off, black). While timer is off you need to use the iterations input parameter to decide how many iterations of relaxation.
- Constrain Points (11) - Tick box for turning on and off point constraints supplied.
- Constrain Curves (12) - Tick box for turning on and off curve constraints supplied.
- Constrain Surfaces (13) - Tick box for turning on and off surface constraints supplied.
- Time Step (14) - Slider that determines the time step used for relaxation.
- Damping (15) - Slider that determines how big damping is on the nodes during relaxation.

**Constraints**

*Point Constraints*

For a successful relaxation you will need to apply constraints to the model. These constraints will act as counter forces to the applied forces on the model.

There are three possible constrain options:

- Point Constraints
- Curve Constraints
- Surface Constraints

To use the Point constraints you will need to supply a point that is on a vertex on the mesh.

This vertex will then be fixed in X,Y,Z direction during the relaxation.

*Curve Constraints*

*To use the Curve constraints you will need to supply a curve that aligns with the model edges. During the relaxation the elements close to curve will be able to slide along the curve. *

During relaxation the nodes that are close to the constrained curved are fixed but can slide along curve.

*Surface Constraints*

To use the Surface constraints you will need to supply a Surface to the constrain geometry input. During the relaxation the elements will be pulled and will slide on the surface.

The weight value is set to zero and the grid is pulled and relaxed on surface.

**SlackLength**

The Slack length is the length used for calculating the axial force in the bar when it elongates. It is in default setting the initial length of the bar.

If you scale down the slack length it will act as it has smaller initial length than it actually has and it will contract.

An example illustrating with springs how the magnitude of the spring force is affected with different slack length. The one above has a slack length of the initial length of the spring, and the one below where the slack length is smaller than the initial length.

The weight force is set to zero and slack length is 1. No force is applied to the relaxation.

The weight force is set to 0 and slack length is 0.8. The grid is contracting.

The weight force is set to 0 and slack length is 0.3. The grid's contraction has increased.

**Forces**

To be able to perform any sort of relaxation you will need to apply a force on the geometry. This can be done in different ways.

1. Weight Force - this will base the relaxation on the node self weight and will act as a gravity force.

2. Inflation Force - this will apply a force in the direction of the panel normal.

3. Slack length - reducing the slack length you add a tension to the geometry that makes it contract.

4. Surface constraint - when supplying a surface constraint the geometry will be pulled and slided on the surface.

*Weight Force*

The Weight Force will act as gravity force. A weight is applied on all nodes of the model.

*Inflation Force*

The inflation force is a force applied in the direction of the normal to the mesh face. The inflation force is based on the total area of the mesh and is the same on all mesh faces.

**Stiffness**

The stiffness in the bars is needed to be able to calculate any axial forces in the bars. The higher stiffness in the bar the more force needed to elongate a bar.

Stiffness is calculated using hooks law such that:

Stiffness = EA / L

Where:

A is the cross-sectional area,

E is the (tensile) elastic modulus (or Young's modulus),

L is the length of the element.

The stiffness can then be scaled by using the stiffness slider.

Stiffness = sldbrValue * EA / L

The EA value is scaled based on the size of the initial geometry.

**Timestep**

The Timestep refers to Δt when calculating the location of the node.

Using a high number on the Timestep will make the simulation go faster but it might also make it less stable.

**Damping**

The damping value refers to z when calculating the velocity of the node. When you have calculated the velocity of the node you can add a damping factor to make the relaxation more stable.

Velocity1 = Velocity0 x (1-z)

where z <= 1

Using a low number on the damping will make the simulation go faster but it might also make it less stable.

**Analyser Extras**

To perform a relaxation more information and properties of the SmartMesh will need to be generated. Some of this information can be accessed through the SmartAnalyser during the relaxation process.

*Velocity*

The velocity is the magnitude of the vector derived from the force of node.

*Displacement*

Displacement is the distance from the nodes initial position to the current.

*AbsoluteForce*

The Absolute Force is the magnitude of the resulting force vector of all forces applied on the node.

© 2020 Created by Dr. Shrikant B. Sharma. Powered by