Расчет многочленов легенд, обучение - PullRequest
0 голосов
/ 12 марта 2020

Я пытаюсь выполнить это упражнение из курса, который я нашел в Интернете. (если вы узнаете вопрос, скажите мне, что вы думаете о курсе). Я смотрю, как решить эту проблему, но у меня все еще есть ошибки в моих вычислениях, и я думаю, что это в основном потому, что я не уверен в том, как будет вывод, а также как писать определенные части функции. Я смиренно приму любое любопытное объяснение и совет, мне еще далеко до go, поэтому я буду рядом.

Вот вопрос,

Многочлены Лежандра определяется как:

?? (?) = ∑?? = 0 (−1) ? (2? − 2?)! 2??! (? − ?)! (? − 2?)! ?? − 2?

где ? = ? / 2, если n четное, или (? − 1) / 2, если ? нечетное. ?! Означает «факториал m», например, 4! = 1 * 2 * 3 * 4 = 24 Вы можете вычислить это так: из математического импорта факториал факториал (4) 24

Вот полезная функция для вычисления ?:

import numpy as np
def M(n):
    if np.mod(n, 2) == 0:  # this means n is even.
        return int(n / 2)
    else:
        return int((n - 1) / 2)

Напишите функцию, которая вычисляет P (x, n) и нанесите на график функцию для n = 3 и n = 4 в диапазоне от x = -1 до x = 1.

import scipy as sp
P_tot = []
x = np.linspace(-1,1,10)
n = [3,4]
def P(x,n):
    return ((-1)**M(n))*((factorial(2*n-2*M(n)))/((2**n)*factorial(M(n))*factorial(n-M(n))*factorial(n-2*M(n))))*(x**(n-2*M(n)))
x = np.linspace(-1,1,10)
n = [3,4]
Px,pn = P(x,n)
P_tot += [Px,pn]

ValueError Traceback (большинство недавний вызов last ValueError: Истинное значение массива с более чем одним элементом неоднозначно. Используйте a.any () или a.all ()

Я не могу дождаться, чтобы увидеть, насколько легко это было и было Я пропустил.

Спасибо за или ваше время.

...