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

[边界讨论区] 求助:帮看一下编的测 测量圆的应力的函数有没有问题

[复制链接]
发表于 2011-9-17 20:50:57 | 显示全部楼层 |阅读模式 来自 江苏南京
本帖最后由 benbenmoon 于 2011-9-17 20:57 编辑

发一个低级的问题 求助一下。。。

在模型里设置了多个测量圆 想求出其水平和竖直向的平均应力值  编了个小函数如下:

DEF messs
    mp=circ_head
    mms11=0
    mms22=0
    m_number=0
    LOOP while mp # null
         mms11=mms11+m_s11(mp)
         mms22=mms22+m_s22(mp)
;       ii=out((string(m_s11(mp))) + string('   ') + string(m_id(mp)))
;       abcd=m_id(mp)
;       command
;            print meas abcd
;       end_command
    m_number=m_number+1
    mp=m_next(mp)
    END_LOOP
    mms11=mms11/m_number
    mms22=mms22/m_number
    ii=out(string('mms11=')+string(mms11))
    ii=out(string('mms22=')+string(mms22))
END
测出来很离谱 于是加上了";"后面的那几行想看一下问题出在哪儿   加上之后发现用command下的print meas id 测出来的应力值和m_s11/22的值不一样 相差很多 但如果再运行一下这个函数就一样了 但如果不加那几行 运行几遍都是错的。。。  
请朋友们帮看一下这个问题出在哪儿 谢谢。。。
 楼主| 发表于 2011-9-17 21:58:33 | 显示全部楼层 来自 江苏南京
Simdroid开发平台
本帖最后由 benbenmoon 于 2011-9-17 22:01 编辑

精简了一下。。。问题在这里。。。  
DEF mssss
  mmp=find_meas(11)
  mmmmm=m_s11(mmp)
  ii=out(string(mmmmm))
END

这样显示出来的也很离谱  不知道是程序本身的问题还是啥。。。
回复 不支持

使用道具 举报

 楼主| 发表于 2011-9-18 10:42:37 | 显示全部楼层 来自 江苏南京
本帖最后由 benbenmoon 于 2011-9-18 10:47 编辑

找到原因了 加上 measure(mp,code)就好了。。。
fish手册没看仔细啊。。。上面说要先调用这个程序 然后m_ed11(code值取2)和m_s11(code值取1)之类的函数才能有值
修改后的如下:
DEF mssss
  mp=find_meas(11)
  ii=measure(mp,1)
  mmmmm=m_s11(mp)
  ii=out(string(mmmmm))
END

前面加了command    print meas 那几句之所以也能得到结果可能是 print之后m_s11也赋值了。。。瞎猫碰死耗子了。。。
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-18 15:44 , Processed in 0.033337 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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