Fortran Coder

标题: 变减速运动编程 [打印本页]

作者: yb6231290    时间: 2018-4-3 21:01
标题: 变减速运动编程
本帖最后由 yb6231290 于 2018-4-3 21:27 编辑

请问下用fortran怎么设置if语句,能实现位置x的初值在x0<-3.29或x0>0的时候加速度为0,而当位置x初值x0>=-3.29且x0<=0时,a=-0.162。t秒后,位置到xt时,xt=x0+v0t+0.5*a*t^2满足xt<-3.29或xt>0的时候加速度为0,xt>=-3.29且xt<=0时,a=-0.162。加速度随时间t自动更新。v0=2,x0=-13.29
编完能实现5秒时,xt=-3.29
6.772秒时,xt=-3.387*10^-4实际上是在-3.29<=x<=0处有一个恒加速度a,其他地方都是匀速直线运动。
if怎么调都不对,求解!!



作者: vvt    时间: 2018-4-4 07:56
从加速度到速度,到距离,是一个数值积分问题。可以看数值计算的书,关于梯形法、辛普森等积分方法。




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2