gpt4 book ai didi

python - 为 Spring 质量力创建 python 代码

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:51:45 24 4
gpt4 key购买 nike

我正在尝试创建一个函数来计算 F1+F2+Gravity 力的总和。根据我的计算,我要创建的公式是 Here

到目前为止我已经完成了基础 -

import numpy

#varibles from example problem
a1 = numpy.array([0,0])
a2 = numpy.array([1,1])
s1,s2 = 10,10
L1,L2=1,2
m=1
def SpringForces(a1,a2,s1,s2,l,m):
G = numpy.array([0,-9.81*m])
#algorithm
return F1+F2+G

我真的不知道从哪里开始创建公式。我应该为 k 等于 1 和 2 创建一个小的 for 循环吗?

编辑:我的新代码是

  def SpringForces(a1,a2,s1,s2,L1,L2,m):
G = numpy.array([0,-9.81*m])
F1 = s1 * ((L1)/numpy.abs(x-a1)-1) * (x-a1)
F2 = s2 * ((L2)/numpy.abs(x-a2)-1) * (x-a2)
return F1+F2+G

最佳答案

您应该定义 SpringForce 函数来分别计算每个 Spring 力,然后在最后将这些力相加。

def springForce(x, s, a, l):
return s*((l/abs(x-a))-1)*(x-a)

F = springForce(x, s1, a1, l1) + springForce(x, s2, a2, l2) + G

值得注意的是,您在初始代码示例中对函数所做的操作有点毫无意义。您可能想要创建一个函数有两个原因:

  1. 避免多次重复完全相同的代码
  2. 抽象出代码块,潜在地提高可读性

您编写的函数不会做这两件事中的任何一件,所以没有它您会过得更好。

关于python - 为 Spring 质量力创建 python 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48776611/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com