Using the Constraint Satisfaction Function in a Product Context

You can use a Constraint Satisfaction in a Product context and use the created related parameters in the Formula editor.

  1. Create a physical product containing a representation.
  2. Create a rectangular pad (100 mm * 150 mm).
  3. Click Formula .
    The Formulas editor opens.
  4. From the New Parameter of type scrolling list, select Volume.
  5. Click Add Formula and enter the following formula:Volume.1 = smartVolume(PartBody\Pad.1) Click OK when done.
  6. Double-click the product.
  7. From the Tools section, access the secondary area, and click Knowledge Engineering Specification .
    The Knowledge Engineering Specification dialog box opens.
  8. Type the name of the knowledge engineering specification and click OK.
  9. From the Compass, click 3D Modeling Apps and select Design Optimization.
  10. Click Constraint Satisfaction.
    The Constraint Satisfaction editor opens.
  11. Type the name of the constraint satisfaction you want to create and click OK.
  12. In the Constraint Satisfaction editor, enter the following constraint:
    xxxRepresentationx\Volume.1 == 100000mm3;
    xxxRepresentationx\PartBody\Pad.1\FirstLimit\Length >= 1mm;
    xxxRepresentationx\PartBody\Pad.1\FirstLimit\Length <= 1000mm
  13. Click Parse and Solve. Click OK when done.
  14. Click the Results tab to display the solutions found.

Important: In a Product context, the valuation of a parameter located at the Representation level is not possible directly. You cannot write: Volume.1==smartVolume(Pad); Volume.1==100000mm3

You must first create the formula at the Representation level, then create a Knowledge Engineering Specification containing the Constraint Satisfaction.

After creating such a structure, results are displayed in the Formula editor.

Each parameter involved in the constraint satisfaction is attached to an object of free parameter type (value, inferior bound, superior bound). The value of this free parameter is exactly the value of the corresponding parameter and the bounds correspond to the maximum and minimum value that the constraint satisfaction can deduce from the equalities and inequalities introduced in the constraint satisfaction. For example:

A constraint satisfaction x*x + y*y < 25 provides the following bounds for x and y : [-5, +5]

A constraint satisfaction x*x + y*y < 25; x > 0 provides x: [0, +5] and y : [-5, +5]