*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.
Data type: varname
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.
If RIGHT is specified, the properties are assigned to the right field, and the left field properties are made symmetric to the right 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.
Data type: string
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.
Data type: boolean
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.
Data type: string

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()

Context

*BeginMdl()

*DefineAnalysis()

*DefineSystem()