0
Я выполняю экспериментальную программу. Мне нужно найти высоту из набора экспериментальных данных. Я записываю только данные о времени и ускорении, и я использовал метод Forward Euler для решения двойной интеграции. Код, который я написал, это.Метод Forward-Euler
public void forward_method(double[] acceleration, double[] time){
double deltaT = time[1] - time[0];
double velocity[] = new double[time.length];
double displacement[] = new double[time.lenght];
velocity[0] = 0;
displacement[0] = 0;
for(int i = 0; i < acceleration.length - 1; i++){
velocity[i + 1] = velocity[i] * acceleration[i] * deltaT;
displacement[i + 1] = displacement[i] * velocity[i] * deltaT;
}
}
Правильно ли это для определения скорости и смещения? Как я могу изменить его, чтобы найти высоту?
Вы пробовали что-нибудь, чтобы найти высоту? –
Я читал о движении снаряда. Я не знаю, если это одно и то же приложение для моей проблемы, я записываю также значение угла ориентации из моего датчика, я думаю, что это полезно для моей проблемы. Потому что, если я делю вектор скорости вдоль его y компонентов: vyf = vyi-gt = vi sen Θi - gt и подставить g ai (которые представляют – traveller
мое вертикальное ускорение в момент i), я считаю, что возвышение можно рассчитать как следует yf = (vi sen Θi) t - ½ ai t^2, но я не знаю, могу ли я заменить sen Θi на азимут сена в момент времени ti – traveller