Solver Differential Equations

Use the Diff Equations tool to set solver differential equations. These equations can be used to add additional states to the mechanical system being modeled.

Create Solver Differential Equations

  1. From the Project Browser, select the system to which the solver differential equation is to be added.
  2. Right-click on a system in the Project Browser and select Add > Control Entity > Solver Differential Equation from the context menu.
    OR
    Right-click on a solver differential equation folder in the Project Browser and select Add Solver Differential Equation from the context menu.
    OR
    From the Model ribbon, click the arrow next to the Controls tool set name, then select Diff Equations icon.
    The Add SolverDiff dialog is displayed.
  3. Specify a label for the solver differential equation.
    The label can be changed at any time.
  4. Specify a variable name for the solver differential equation.
    By default, variables names of entities in MotionView follow a certain convention. For example, all solver differential equation entities have a variable name starting with “diff_”. This is the recommended convention to follow when building models in MotionView since it has many advantages in model editing and model manipulation.
  5. Click OK to close the window or Apply to continue creating entities.
    Once a solver differential equation entity has been added to the model, the panel for the equation will automatically be displayed in the panel area.

Edit Solver Differential Equations

These equations can be used to add additional states to the mechanical system being modeled.

  1. If the Solver Differential Equations panel is not currently displayed, select the desired solver diff by clicking on it in the Project Browser or in the modeling window.
    The Solver Differential Equations panel is automatically displayed.
  2. Select Static Hold if the state of the solver differential equation is not permitted to change during static or quasi-static analysis of the solver. Otherwise, deselect the option.
  3. Select Implicit if the differential equation is of type implicit. If the equation is explicit, leave the option unselected.
  4. Enter a value for the initial condition of the differential equation in the IC text box.
  5. Enter a value for the initial condition for the first derivative of the user defined variable in the IC dot text box.
    This option is usually used in conjunction with an implicit variable.
  6. Select an option from the drop-down menu at the bottom of the panel.
  7. Define the properties associated with your choice.
    If Linear is chosen, enter a value in the text box.
    If Curve is chosen:
    1. Select AKIMA, CUBIC, LINEAR, or QUINTIC as the interpolation method.
    2. Enter a value under Independent variable.
      The independent variable should be specified in Templex syntax.
    3. Resolve the curve by double-clicking the Curve collector and selecting a curve from the Select a Curve dialog.
      Note: To use a curve, you first need to define a curve (using the Curves panel) which represents the behavior of the solver differential equation.
    If Spline3D is chosen:
    1. Select AKIMA, CUBIC, LINEAR , or QUINTIC under as the method of interpolation.
    2. Specify an expression for Independent variable X and Independent variable Z.
    3. Resolve the 3D spline by double-clicking on the Spline3D collector and selecting a Spline3D entity from the Select a Spline3D dialog.
      Note: To use a Spline3D entity, you first need to define a spline using the Spline3D panel.
    If Expression is chosen, enter an expression.

Use User-Defined Properties for a Solver Differential Equation

If desired, define the solver differential equation using the User-Defined tab, which will allow you to specify the properties of the equation using user subroutines.

  1. From the Properties tab, click the User-defined properties check box.
  2. Click the newly added User-Defined tab.
  3. Define the user subroutine.
    1. Provide an expression with the USER solver function with parameters being passed to the user subroutine.
    2. Alternatively, activate the Use local file and function name check box to specify a local file where the subroutine code can be accessed by the solver.
      If this option is not specified, MotionSolve will search for a subroutine following its user subroutine loading rules.
    3. Select a function type from the drop-down menu.
    4. Select the local file for the subroutine.
      The type of file to be specified will depend on the selected function type. For example, if DLL/SO is selected, you can specify a file with a .dll extension (for Windows) or an .so extension (for Linux).
    5. Specify the function name in the subroutine that defines the entity, or accept the default name provided by MotionView.