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

[动力学分析] PFC中能否建立程序让墙按椭圆的轨迹运动?

[复制链接]
发表于 2012-5-22 09:43:02 | 显示全部楼层 |阅读模式 来自 江苏南京
出于仿真的确切性的需要,墙体的运动轨迹应是一个椭圆,我自己编写的程序如下:
def wall_motion
array data(8)
        data(1)=4
        data(2)=6
        data(3)=7
        data(4)=9       
        data(5)=9       
        data(6)=7
        data(7)=6
        data(8)=4
loop e (1, 8)
        q = data(e)*2
        _par=q       
loop i (1,100)
        if i<=25 then
                k=pi/2-pi/2*sin(pi/50*i);
                ;y_v= _par*cos(k)
                ;z_v= _par*sin(k)
        else
                if i <= 50 then
                        k=3*pi/2+pi/2*sin(pi/50*i)
                        ;y_v= _par*cos(k)
                        ;z_v= _par*sin(k)
                                       
                else
                        if i <= 75 then
                                k= 3*pi/2+pi/2*sin(pi/50*i)
                                ;y_v= _par*cos(k)
                                ;z_v= _par*sin(k)
                        else
                                        k=pi/2-pi/2*sin(pi/50*i)
                                        ;y_v= _par*cos(k)
                                        ;z_v= _par*sin(k)
                        end_if
                end_if
        end_if
        y_v= _par*cos(k)
        z_v= _par*sin(k)               
        command
                wall id=1 yvel y_v
                wall id=1 zvel z_v
                cycle 30
        end_command
end_loop
end_loop
end
这个程序是用平移代替了转动(因为之前用转动的方法没做出来),将一个椭圆的轨迹分成100个截点,理论上讲这样的轨迹是可以了,但在仿真的时候效果与想要的还相差甚远,而且随着速度大小的变化,它的运动轨迹也是跟着变的,这是我仿真的时候不想看到的,最好能过使轨迹不受速度变化的影响,因此觉得还是用转动的形式来表达的好;但始终没有找到一个比较好的方法表示出来,望各位前辈、高手指点指点。
发表于 2012-5-22 09:57:16 | 显示全部楼层 来自 湖北武汉
Simdroid开发平台
试一试用椭圆的标准方程,让墙按时步在方程x^2/a^2+y^2/b^2=1上面运动
回复 不支持

使用道具 举报

发表于 2012-5-22 09:58:04 | 显示全部楼层 来自 湖北武汉
ziyefeng2015 发表于 2012-5-22 09:57
试一试用椭圆的标准方程,让墙按时步在方程x^2/a^2+y^2/b^2=1上面运动

可以用whileshtep函数
回复 不支持

使用道具 举报

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

本版积分规则

Simapps系列直播

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

GMT+8, 2024-9-29 11:37 , Processed in 0.032020 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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