K-я производная в Python [закрыто]Python

Программы на Python
Ответить
Anonymous
 K-я производная в Python [закрыто]

Сообщение Anonymous »

Мой код для k-й производной, использующий прямую разность для численного дифференцирования, не работает. У меня получается -38, а не -2,8, и я не могу найти причину
#kth order derivative

#f'(x) = 1/h * (yn+1 - yn)
#looks nice,untested

import math as mt
import numpy as np

k = 4
A = 0
B = 2.5
h = 0.5

nodes =int((B - A) / h) + 1
xn = np.linspace(A, B, nodes)
yn = (np.cos(xn))**2

print(xn)
print(yn)

def KthDeriv (A, B, k, h):
nodes =int((B - A) / h) + 1
xn = np.linspace(A, B, nodes)
yn = (np.cos(xn))**2
derivative = 0
for i in range(k + 1): #if we want first deriv we need two points
if i + k < len(yn):
term = (-1)**i * mt.comb(k, i) * yn[i + k]
derivative += term
derivative /= h**k
return derivative
test = KthDeriv (A, B, k, h)
print(test)


Подробнее здесь: https://stackoverflow.com/questions/793 ... -in-python
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»