В настоящее время я работаю над программой для выполнения расчетов Рунге Кутты 4-го порядка для обыкновенных дифференциальных уравнений. Одно из требований к программе заключается в том, что пользователь вводит уравнение, которое он хочет вычислить для операции 4-го порядка. Есть ли способ взять введенное пользователем уравнение из определенной ячейки и использовать его в VBA sub для вычисления новых значений y?
Уравнения будут представлять собой многозначные многочленные уравнения, содержащие x и y. Это цикл, который я надеюсь использовать для выполнения вычислений, где equa в настоящее время является функцией с заранее установленным уравнением для тестирования, но планируется, чтобы оно было введено пользователем.
n = (xf - xi) / h
For i = 1 To n
k1 = equa(x, y)
y1 = y + k1 * h / 2
k2 = equa(x + h / 2, y1)
y2 = y + k2 * h / 2
k3 = equa(x + h / 2, y2)
y3 = y + k3 * h / 2
k4 = equa(x + h, y3)
yf = y + ((k1 + 2 * k2 + 2 * k3 + k4) * (1 / 6) * h)
Cells(7 + i, 1).Value = y
x = x + h
Next i