【发布时间】:2017-03-10 05:44:29
【问题描述】:
我有一个非常简单的代码来计算垂直运动。我已经设置了一些初始条件(在本例中为 v0s)。而不是在每个v0s 上运行for 循环,是任何将每个v0“应用”到x linspace 并拥有一个numpy 数组 的方法。
import numpy as np
v0s = [1, 2, 3]
g = 9.81
def VerticalPosition(v0,g,t):
return(v0*t - 0.5 * g * t**2)
def Solution(v0,g):
return(2*v0/g)
def Apex(v0,g):
return(VerticalPosition(v0,g,v0/g))
x=np.linspace(0,Solution(max(v0s),g),101)
y=[]
for v0 in v0s:
y.append(VerticalPosition(v0,g,x))
【问题讨论】:
-
frompyfunc可能是你想在这里尝试的 -
array of arrays不明确。你的意思是一个 2d numpy 数组(浮点数)?还是带有数组元素的一维对象数组?VerticalPosition适用于可广播数组。走对象数组路线更棘手也更慢。