*SetCoilSpring() - single coil spring with user subroutine

Sets the properties of a coil spring with a user subroutine.

Syntax

*SetCoilSpring(spr_name,SFORCE,`solver_expression`) 
*Set(spr_name.use_local_dll,TRUE|FALSE) 
*Set(spr.local_dll,"string")

Arguments

spr_name
The variable name of an existing coil spring.
Data type: varname
SFORCE
This argument indicates the type of user subroutine that is used to compute coil spring properties.
solver_expression
A solver expression enclosed in back quotes to specify arguments for the user subroutine.
Data type: string
spr_name.use_local_dll
Specifies if a user subroutine DLL is specific to the instance of one coupler entity.
Data type: boolean
spr_name.local_dll
The path and filename for the user subroutine DLL to be used with an instance of the user defined coupler.
Data type: string

Example

*CoilSpring( cspr, "Coil spring", b_frame, 
 b_lca, 
 p_spr_upr, 
 p_spr_lwr )
*Curve( crv_spr, "Spring rate")
 
*SetCoilSpring(cspr, SFORCE, `USER(1, { cspr.i.id, %d }, 
 { cspr.j.id, %d }, 
 { cr() }, `
 `-{ crv_spr.id, %d }, 350)`)

Context

*BeginMdl()

*DefineAnalysis()

*DefineSystem()

Comments

Coil spring properties can be computed with user subroutines of type SFOSUB. A user executable must created when using these subroutines.

The solver expression specified follows Templex syntax where all the variables to be evaluated are enclosed in braces {} and the rest of the expression is treated as literal.