找回密码
 注册
Simdroid-非首页
查看: 188|回复: 6

[用户自编子程序] 同一个模型中的同一个subroutine能用几次?

[复制链接]
发表于 2011-3-15 09:25:03 | 显示全部楼层 |阅读模式 来自 大连理工大学
问题是这样的:
我自己编了一个VFORCE的用户子程序,而且在同一个模型中有多个地方需要用这个子程序。单个调试的时候子程序时没有问题的,和我理想中的情况是一样的。

首先,在模型中建立了一个VFORCE,和调试的时候一样很理想,但是当我继续完善模型的时候,加了第二个VFORCE(也是调用同一个子函数,只是传递的参数不一样),这时候两个VFORCE都不对了,就连刚才还好用的第一个VFORCE测量出来的力也是乱七八糟的。

会不会是两个VFORCE,在调用同一个subroutine时,函数内部的参数混乱了呢?为了避免出现这种情况应该怎么做?或者说这种情况能不能避免呢?

谢谢了!!!
 楼主| 发表于 2011-3-22 08:40:21 | 显示全部楼层 来自 大连理工大学
Simdroid开发平台
问题已解决,把subroutine调用时的id号作为一个参数就可以了。
VOID_FUNCTION VFOSUB(int *id,REAL *time,REAL *par,int *nPar,BOOL *dflag,BOOL *iflag,REAL *value)
{
//*id---为ID号
//*time---为时间
//*par---为接收数组
//*nPar---为数组维数
//*dflag---为微分标志
//*iflag---为积分标志
//*value---为返回值
//在子程序中*id、*time、*nPar、*dflag、*iflag自动传递数据
//ADAMS中的数据是通过*par数组接收的
……
……
……


……
}
回复 不支持

使用道具 举报

发表于 2011-8-12 08:55:56 | 显示全部楼层 来自 广东广州
我练子程序都还不会写啊!
回复 不支持

使用道具 举报

发表于 2011-12-28 23:05:56 | 显示全部楼层 来自 辽宁锦州
高手, 学习了
回复 不支持

使用道具 举报

发表于 2014-12-17 15:22:04 | 显示全部楼层 来自 北京

高手, 学习了
回复 不支持

使用道具 举报

发表于 2014-12-28 22:56:36 | 显示全部楼层 来自 河北秦皇岛
果然是高手,拜了。我现在还在挣扎着弄单独一个的过程呢。。。。。。问题不断啊。慢慢学习中。。。。。。。。。。。。。网站上的帖子不能收藏确实不太好,我怕看过,再回头就找不到了。
回复 不支持

使用道具 举报

发表于 2015-7-26 16:20:05 | 显示全部楼层 来自 陕西西安
dlutpeng 发表于 2011-3-22 08:40
问题已解决,把subroutine调用时的id号作为一个参数就可以了。
VOID_FUNCTION VFOSUB(int *id,REAL *time,R ...

请问楼主,是不是添加了多个vforce,调用同一个子程序,只是输入的参数不同,对吧?
然后,你说的把id作为调用的一个参数是怎么回事,是将id的值赋值给子程序中的那个变量吗?能不能说明一下,感谢~
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-11-2 03:39 , Processed in 0.037447 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表