如何显示最大位移点的坐标????
用什么命令可以位移图中显示最大位移点的坐标呀???? 根据chuohuo420大哥的fish,我做了一下改动,def get_gp_maxdisp
gp0_disp = 0
p_gp=gp_head
loop while p_gp # null
gp_disp = gp_xdisp(p_gp)*gp_xdisp(p_gp)
gp_disp = gp_disp + gp_ydisp(p_gp)*gp_ydisp(p_gp)
gp_disp = gp_disp + gp_zdisp(p_gp)*gp_zdisp(p_gp)
gp_disp = sqrt(gp_disp)
if gp0_disp<gp_disp
gp0_disp=gp_disp
x=gp_xpos(p_gp)
y=gp_ypos(p_gp)
z=gp_zpos(p_gp)
id=gp_id(p_gp)
endif
p_gp = gp_next(p_gp)
endloop
end
get_gp_maxdisp
pri fish
根据pri以后的fish变量,gp0_disp即为最大位移,x、y、z、id分别为最大位移节点坐标和节点编号
有不当的地方,还请指正
Re:如何显示最大位移点的坐标????
smartljs2005 wrote:用什么命令可以位移图中显示最大位移点的坐标呀????
用fish编了一个,算法好像有点烦,不过目的可以实现
你可以参考一下。
def get_gp_maxdisp
gp0_disp = gp_xdisp(gp_head)*gp_xdisp(gp_head)
gp0_disp = gp0_disp + gp_ydisp(gp_head)*gp_ydisp(gp_head)
gp0_disp = gp0_disp + gp_zdisp(gp_head)*gp_zdisp(gp_head)
gp0_disp = sqrt(gp0_disp)
p_gp=gp_head
;找最大值
loop while p_gp # null
gp_disp = gp_xdisp(p_gp)*gp_xdisp(p_gp)
gp_disp = gp_disp + gp_ydisp(p_gp)*gp_ydisp(p_gp)
gp_disp = gp_disp + gp_zdisp(p_gp)*gp_zdisp(p_gp)
gp_disp = sqrt(gp_disp)
if gp_disp>gp0_disp
gp0_disp=gp_disp
endif
p_gp = gp_next(p_gp)
endloop
;找最大值的坐标
p_gp=gp_head
ss=0
loop while p_gp # null
gp_disp = gp_xdisp(p_gp)*gp_xdisp(p_gp)
gp_disp = gp_disp + gp_ydisp(p_gp)*gp_ydisp(p_gp)
gp_disp = gp_disp + gp_zdisp(p_gp)*gp_zdisp(p_gp)
gp_disp = sqrt(gp_disp)
if gp_disp=gp0_disp
ss=ss+1
xtable(1,ss)=gp_xpos(p_gp)
ytable(1,ss)=gp_ypos(p_gp)
endif
p_gp = gp_next(p_gp)
endloop
end
get_gp_maxdisp 支持一下elite1218兄弟,看着你的FISH没有问题,思路很清晰。继续努力,呵呵。 哈哈,谢谢benjackxu 兄
改动之后还是有点问题,如果最大位移处有几个或一系列节点的话,就只能得到一个gp的坐标值,推荐还是用chuohuo420版友的fish,用table来处理较好 在2D中该函数中变量该怎么表示? 我看过chunhuo420版主 和elite1218 写的都不错。我有两个问题想问版主chunhuo420:
1、xtable(1,ss)和ytable(1,ss)中的数据怎么显示出来呀,有那个命令呀?
2、你的程序能得出z坐标吗?
望不吝赐教,在此先行谢过! 怎么没有人回答我的问题呀,心急的等待中.......:'( :'( 我也想知道怎么显示table中的内容?另外我在做动力计算中引入此函数,得出来的值怎么是0啊? if gp_disp>gp0_disp
请问楼主,这是啥意思呀? 怎么都没有人回答问题了,我也遇到同样的问题。
if gp_disp>gp0_disp是不是chunhuo420大哥疏忽写错了,应该是if gp_disp<gp0_disp么?
显示所定义表格中的内容的命令是plot table?
请大牛指导,谢谢。 学习了,谢谢。 看了一下,还是有些不懂。谢谢 张见识了,谢谢各位 怎么都没有人回答问题了,我也遇到同样的问题。
if gp_disp>gp0_disp是不是chunhuo420大哥疏忽写错了,应该是if gp_disp
whlxpp521 发表于 2009-4-1 15:58 http://forum.simwe.com/images/common/back.gif
应该是 if gp_disp>gp0_disp
2#是对的,可能是没显示出来,回复的时候能看到 顶一个啊
顶一个啊 非常感激!谢谢!:) 学习了,谢谢 呵呵,谢谢各位!! fish操作起来比较麻烦.
页:
[1]
2