Python 我的程序不能解决奇数函数?
我终于得到了这段代码“工作”,它甚至可以用于强大的功能。然而,它不会给奇数功能提供任何答案 我在跟踪物体沿曲线移动时的位置。看来 给我好的数据。但它不会因奇数功能而终止 我正在使用python 3.5Python 我的程序不能解决奇数函数?,python,math,physics,Python,Math,Physics,我终于得到了这段代码“工作”,它甚至可以用于强大的功能。然而,它不会给奇数功能提供任何答案 我在跟踪物体沿曲线移动时的位置。看来 给我好的数据。但它不会因奇数功能而终止 我正在使用python 3.5 import sympy from sympy import * from numpy import * import numpy as np import matplotlib.pyplot as plt x = Symbol('x') FuncY = input("Enter a fun
import sympy
from sympy import *
from numpy import *
import numpy as np
import matplotlib.pyplot as plt
x = Symbol('x')
FuncY = input("Enter a function: Y(x) = ")
F = sympy.sympify(FuncY)
################### Defined Variables ########################
Vo = 0
Xo = -3
Yo = F.subs(x,Xo)
Xf = 3
Yf = F.subs(x,Xf)
A = -10
t = .01
Xi = Xo
Yi = Yo
Vi = Vo
XI = []
YI= []
VI = []
#########################
while Xi <= Xf:
dy_dx = float(F.diff(x).subs(x,Xi)) #derive function F
theta = float(atan(dy_dx)) # find angle of slope
a = A * sin(theta) # find acceleration along curve
V = Vi + a*t # find velocity along curve
Vi = V # update initial velocity
VI.append(Vi)
##################### position and velocity in X
Vx = V*cos(theta) # velocity in x
X = Xi + Vx*t # new position of do to velocity
Xi = X
XI.append(Xi)
################################### position and velocity in y
Vy = V*sin(theta)
Y = Yi + Vy*t
Yi = Y
YI.append(Yi)
#################################
print(XI)
print(YI)
print('Velocity')
print(VI)
plt.plot(XI, YI,'bo')
plt.show()
导入sympy
从sympy进口*
从numpy进口*
将numpy作为np导入
将matplotlib.pyplot作为plt导入
x=符号('x')
FuncY=输入(“输入函数:Y(x)=”)
F=同构。同构(函数)
###################定义变量########################
Vo=0
Xo=-3
Yo=F.subs(x,Xo)
Xf=3
Yf=F.subs(x,Xf)
A=-10
t=.01
席= XO
Yi=Yo
Vi=Vo
席=
YI=[]
VI=[]
#########################
而席普:你要做很多额外的工作来重建这个函数;为什么不让辛皮来做呢
import sympy as sp
import numpy as np
import matplotlib.pyplot as plt
XMIN, XMAX, DATAPOINTS = -3., 3., 100
# get a recognizable equation (in terms of x)
x = sp.Symbol('x')
while True:
try:
s = input("Enter a function: Y(x) = ")
y = sp.sympify(s)
break
except sp.SympifyError as se:
print(se)
# generate points to plot
xs = np.linspace(XMIN, XMAX, DATAPOINTS)
ys = [y.evalf(subs={"x":xval}) for xval in xs]
# plot points
plt.plot(xs, ys, 'bo')
plt.show()
也许因为席总是好的,我只是哑巴哈哈,我必须在时间上运行它。不是通过将x范围打破到间隔。你们会得到类似的答案,但对于某些路径,我需要跟踪x不会改变。这就是为什么我要把它展开成一组参数方程。。。。那么,一对方程,x(t)和y(t)?或者你要尝试隐式解算器?我会使用一对方程,因为我可以得到更复杂的路径。我可以独立地跟踪x和y的变化,这样我就可以找到物体移动的距离,即使垂直移动。