问题描述
我想模拟第 n 级钟摆(双、三等)。我在此页面上找到了第 n 个钟摆的加速度方程:https://www.researchgate.net/publication/336868500_Equations_of_Motion_Formulation_of_a_Pendulum_Containing_N-point_Masses 但我无法将其更改为代码。我的主要问题是我不知道某些索引来自哪里。这是我想更改为代码的等式: 这是我的代码:
int sigma(int j,int k)
{
return int(j<=k);
}
int phi(int j,int k)
{
return int(!(j==k));
}
void calculateacceleration()
{
float dividend = 1,divider = 0;
float[] copyacceleration = new float[bob.size()];
for (int i = 0; i <bob.size() - 1; i++)
{
copyacceleration[i] = angleacceleration.get(i);
}
for (int i = 0; i <bob.size() - 1; i++)
{
for (int j = 0; j <bob.size() - 1; j++)
{
dividend+= angles.get(j);
}
for (int k = 0; k <bob.size() - 1; k++)
{
divider += bob.get(k).mass * lenghts.get(bob.size() - 1) * lenghts.get(bob.size() - 1) * sigma(bob.size(),k);
}
copyacceleration[i] = -dividend/divider;
}
for (int i = 0; i <bob.size() - 1; i++)
{
angleacceleration.set(i,copyacceleration[i]);
}
}
这是我的整个项目:https://pastebin.com/mAi1aNSL。有人可以帮我解决这个问题吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)