Hello everyone,
I’m working a contact force problem in MotionSolve where the normal force is implemented via a CNFSUB. I’m trying to confirm whether SYSARY and SYSFNC functions can be used inside CNFSUB (or CFFSUB). From my tests, it seems that these functions always return zero (or no valid value) when called inside CNFSUB. This, combined with the documentation excerpt I've reviewed (which lists the specific subroutines where SYSARY/SYSFNC are supported and does not mention CNFSUB or CFFSUB), led me to the conclusion that they might not be supported here. Could someone please confirm whether this understanding is correct and if such a limitation is officially documented, or if it could instead be related to the way I am using the syntax in my model/routine?
The second issue is with the vector containing input parameters (USER(…)). I attempted to pass MotionSolve functions like WZ, DX and DY, directly inside the USER(…) definition in my contact force, instead of using SYSARY/SYSFNC, for example: "USER(100000, 10, 0.02, 1.7, WZ({b_Gear1.cm.idstring}), DX({b_Gear1.cm.idstring}), DY({b_Gear1.cm.idstring}))". When I include these function calls in USER(…), the "par" array appears empty at runtime. If I remove these expressions, "par" is populated correctly. Could someone please clarify why this is happening? Is this a syntax issue, or is there a different recommended method to access velocities and displacements inside CNFSUB?
Any insight, documentation references, or best-practice recommendations would be greatly appreciated.
Thanks in advance!
Regards,
Nefeli Gkirtziki