Почему первые две вычисленные точки данных в моем «рабочем сценарии» равны нулю? - PullRequest
0 голосов
/ 14 июня 2019

Я следую руководству по анализу SMD, чтобы написать скрипт на R для вычисления и построения графика в направлении Z. Когда мой скрипт запускается, первые два значения равны нулю, и они не должны быть ... help?

#calcwork1.tcl#

n_time_steps <- 200

repeat {
   dz <- 0.1
  dW = dz*Fz
  W <- rep(0, n_time_steps + 1)
  W[1]
  dW[1]
  for (i in 2:n_time_steps + 1){
    W[i] <- W[i - 1] + dW[i - 1]
  }
  if (i == 201)
    break
}  


dz = 0.1
Fz = the force in the z direction
W = output work calculated
dW = change in work
n_time_steps = 200

1 Ответ

1 голос
/ 14 июня 2019

Вам не нужно повторять.Предполагая, что Fz является нормальным, это работает:

n_time_steps <- 200
Fz=rnorm(n_time_steps)

dz <- 0.1
dW = dz*Fz
W <- rep(0, n_time_steps + 1)
W[1]
dW[1]
for (i in 2:(n_time_steps + 1)){
  W[i] <- W[i - 1] + dW[i - 1]
}

plot(W[-1]~Fz)
plot(dW~W[-1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...