# Sfsf

Model ElementSfsf defines a higher pair constraint. The constraint consists of a surface on one body rolling and sliding on a surface on a second body. The surfaces are required to have a unique contact point.

Sfsf

## Attribute Summary

Name Property Modifiable by command? Designable?
id Int ()
label Str () Yes
isurface Reference ("Surface") Yes Yes
jsurface Reference ("Surface") Yes Yes
irm Reference ("Marker") Yes Yes
jrm Reference ("Marker") Yes Yes
idisp Double ([0,0,0], count=3)   FD Only
jdisp Double ([0,0,0], count=3)   FD Only
active Bool () Yes

## Usage

Sfsf (isurface=objSurface, irm=objMarker, jsurface=objSurface, jrm=objMarker, optional_attributes)

## Attributes

isurface
Reference to an existing surface.
Specifies the surface that is fixed to the first body.
The attribute isurface is mandatory.
irm
Reference to an existing Marker.
Specifies a fixed marker that defines the coordinate system in which the isurface points are defined. It also implicitly defines the body on which the surface is "etched". The surface moves with the body.
The attribute irm is mandatory.
jsurface
Reference to an existing surface.
Specifies the surface that is fixed to the second body.
The attribute jsurface is mandatory.
jrm
Reference to an existing Marker.
Specifies a fixed marker that defines the coordinate system in which the ISURFACE points are defined. It also implicitly defines the body on which the surface is "etched". The surface moves with the body.
The attribute jrm is mandatory.
id
Integer
Specifies the element identification number. This number must be unique among all the Sfsf objects in the model.
This attribute is optional. MotionSolve will automatically create an ID when one is not specified.
Range of values: id > 0
label
String
Specifies the name of the Sfsf object.
This attribute is optional. When not specified, MotionSolve will create a label for you.
idisp
List of three doubles.
These three values specify the location of the contact point on isurface at the input configuration as measured in the irm coordinate system.
The three values come as a set. All three must be specified or none may be defined.
This attribute is optional.
jdisp
List of three doubles
These three parameters specify the location of the contact point on jsurface at the input configuration as measured in the jrm coordinate system. The three parameters come as a set. All three must be specified or none may be defined.
This attribute is optional.
active
Bool
Select one from True or False.
• True indicates that the element is active in the model and it affects the behavior of the system
• False indicates that the element is inactive in the model and it does not affect the behavior of the system. It is almost as if the entity was removed from the model, of course with the exception that can be turned "ON" when desirable.
The attribute active is optional. When not specified, active defaults to True

## Example

Create two surfaces and define an Sfsf constraint between them.
# Create the first surface object
surf1 = Surface (function="user (10)", routine=Surface1, uclosed=True,
vclosed=False,
minpar=[0, -150], maxpar=[2*pi, 150], label="Surf-1")

# Create the second surface object
surf2 = Surface (function="user (10)", routine= Surface2, uclosed=True,
vclosed=False,
minpar=[0, -1], maxpar=[2, 15], label="Surf-2")

ic1 =[1.466,5.66,0.1]
ic2 = [-0.522,-0.852,-0.453]

sfsf1 = Sfsf (isurface=surf1, irm=m1, jsurface=surf2, jrm=m2, idisp=ic1, jdisp=ic2)