Числа Бернулли и полиномы
0-й номер Бернулли 1
. Следующий номер Бернулли может быть -1/2
или 1/2
, в зависимости от определения. bernoulli
функция использует -1/2
. Числа Бернулли с четными индексами n > 1
чередуйте знаки. Любое число Бернулли с нечетным индексом n > 2
является 0
.
Вычислите четные индексированные числа Бернулли с индексами от 0
на 10
. Поскольку эти индексы не являются символическими объектами, bernoulli
возвращает результаты с плавающей точкой.
bernoulli(0:2:10)
ans = 1.0000 0.1667 -0.0333 0.0238 -0.0333 0.0758
Вычислите те же числа Бернулли для индексов, преобразованных в символические объекты:
bernoulli(sym(0:2:10))
ans = [ 1, 1/6, -1/30, 1/42, -1/30, 5/66]
Вычислите нечетные индексированные числа Бернулли с индексами от 1
на 11
:
bernoulli(sym(1:2:11))
ans = [ -1/2, 0, 0, 0, 0, 0]
Для полиномов Бернулли используйте bernoulli
с двумя входными параметрами.
Вычислите первый, второй и третий полиномы Бернулли в переменных x
, y
, и z
, соответственно:
syms x y z bernoulli(1, x) bernoulli(2, y) bernoulli(3, z)
ans = x - 1/2 ans = y^2 - y + 1/6 ans = z^3 - (3*z^2)/2 + z/2
Если второй аргумент является числом, bernoulli
вычисляет полином при этом числе. Здесь результатом является число с плавающей запятой, потому что входные параметры не являются символьными числами:
bernoulli(2, 1/3)
ans = -0.0556
Чтобы получить точный символьный результат, преобразуйте по крайней мере одно из чисел в символьный объект:
bernoulli(2, sym(1/3))
ans = -1/18
Постройте график первых шести полиномов Бернулли.
syms x fplot(bernoulli(0:5, x), [-0.8 1.8]) title('Bernoulli Polynomials') grid on
Многие функции, такие как diff
и expand
, обрабатывает выражения, содержащие bernoulli
.
Найдите первую и вторую производные полинома Бернулли:
syms n x diff(bernoulli(n,x^2), x)
ans = 2*n*x*bernoulli(n - 1, x^2)
diff(bernoulli(n,x^2), x, x)
ans = 2*n*bernoulli(n - 1, x^2) +... 4*n*x^2*bernoulli(n - 2, x^2)*(n - 1)
Разверните эти выражения, содержащие полиномы Бернулли:
expand(bernoulli(n, x + 3))
ans = bernoulli(n, x) + (n*(x + 1)^n)/(x + 1) +... (n*(x + 2)^n)/(x + 2) + (n*x^n)/x
expand(bernoulli(n, 3*x))
ans = (3^n*bernoulli(n, x))/3 + (3^n*bernoulli(n, x + 1/3))/3 +... (3^n*bernoulli(n, x + 2/3))/3