*SetField() - symmetric field pair with user subroutine
Sets the properties of a symmetric field pair with a user subroutine.
Syntax
*SetField(field_name, LEFT|RIGHT,USER, `solver_expression`)
*Set(field_name.l.use_local_dll, TRUE|FALSE)
*Set(field_name.r.use_local_dll,TRUE|FALSE)
*Set(field.l.local_dll, "string")
*Set(field.r.local_dll, "string")
Arguments
- field_name
- The variable name of an existing field pair.
- LEFT RIGHT
- If LEFT is specified, the properties are assigned to the left field, and the right field properties are made symmetric to the left field.
- USER
- Set to USER for the field pair to be represented by a user subroutine.
- `solver_expression`
- A solver expression enclosed in back quotes to specify arguments for the user subroutine.
- field_name.l.use_local_dll field_name.r.use_local_dll
- Specifies if a user subroutine DLL specific to the instance of one field pair entity is to be used.
- field_name.l.local_dll field_name.r.local_dll
- The path and filename for the user subroutine DLL to be used with an instance of the user defined field pair.
Example
*BeginMDL(model, "The Model")
*BodyPair(b_5, "Body 5")
*BodyPair(b_6, "Body 6")
*PointPair(p_5, "Point 5")
*PointPair(p_6, "Point 6")
*PointPair(p_7, "Point 7")
*VectorPair(v_5, "Vector 5")
*VectorPair(v_6, "Vector 6")
*FieldPair(fi_5, "Field 5 - Pair", b_5, b_6, p_5)
*SetOrientation(fi_5.l, TWOAXES, XY, v_5.l, v_6.l)
*SetOrientation(fi_5.l, TWOAXES, XY, p_6.l, p_7.l)
*SetOrientation(fi_5.l, ONEAXIS, X, p_5.l)
*SetOrientation(fi_5.l, ONEAXIS, X, v_5.l)
*SetOrientation(fi_5.r, TWOAXES, XY, v_5.r, v_6.r)
*SetOrientation(fi_5.r, TWOAXES, XY, p_6.r, p_7.r)
*SetOrientation(fi_5.r, ONEAXIS, X, p_5.r)
*SetOrientation(fi_5.r, ONEAXIS, X, v_5.r)
*SetField(fi_5, LEFT, USER, `USER( 300, 1, 2)`)
*Set(fi_5.l.use_local_dll, TRUE)
*Set(fi_5.l.local_dll, "c:/mypath/my_left_field_dll")
*Set(fi_5.r.use_local_dll, TRUE)
*Set(fi_5.r.local_dll, "c:/mypath/my_right_field_dll")
*EndMDL()