Коэффициенты Тейлора
taylor = fntlr(f,dorder,x)
taylor = fntlr(f,dorder,x) возвращает ненормализованные коэффициенты Тейлора до заданного порядка dorder и при заданных x, функции, описанной в f .
Для одномерной функции и скаляра x, это вектор
Если, в целом, функция в f является d-значен с d>1 или даже prod(d)>1 и/или m-variate для некоторых m>1, затем dorder ожидается, что это будет m-вектор положительных целых чисел, x ожидается, что это будет матрица с m строки, и, в этом случае, выход имеет размер [prod(d)*prod(dorder),size(x,2)], с его j-м столбцом, содержащим
для i1=1:dorder(1)..., im=1:dorder(m). Здесь Dif является частной производной f относительно его i-го аргумента.
Если f содержит одномерную функцию и x является скаляром или матрицей с 1 строкой, затем fntlr(f,3,x) создает тот же выход, что и операторы
df = fnder(f); [fnval(f,x); fnval(df,x); fnval(fnder(df),x)];
Как более сложный пример, посмотрите на векторы Тейлора порядка 3 в 21 с равными интервалами точках для рационального сплайна, график которого является модулем окружностью:
ci = rsmak('circle'); in = fnbrk(ci,'interv');
t = linspace(in(1),in(2),21); t(end)=[];
v = fntlr(ci,3,t);
Строим график ci наряду с точками v(1:2,:)чтобы убедиться, что это действительно точки на модуль круге.
fnplt(ci), hold on, plot(v(1,:),v(2,:),'o')
Далее, чтобы проверить, что v(3:4,j) - вектор тангенс окружности в точке v(1:2,j), мы используем MATLAB®
quiver команда, чтобы добавить соответствующие стрелы к нашему графику:
quiver(v(1,:),v(2,:),v(3,:),v(4,:))
Наконец, как насчет v(5:6,:)? Это вторые производные, и мы добавляем соответствующие стрелы следующими quiver команда, таким образом заканчивая Первую и Вторую производные Рационального сплайна, Дающего Круг.
quiver(v(1,:),v(2,:),v(5,:),v(6,:)), axis equal, hold off
Первая и вторая производные рационального сплайна, дающие круг

Теперь, наша кривая является кругом, вы могли ожидать, что 2-ые производные стрелы будет указывать быть на центр этого круга, и это было бы действительно так, если бы функция в ci использовала arclength в качестве своей независимой переменной. Поскольку используемый параметр не является arclength, мы используем формулу, приведенную в Примере: B-форма Сплайн Приближение к кругу, чтобы вычислить кривизну кривой, заданную ci в этих выбранных точках. Для удобства сравнения переключаемся на используемые там переменные и затем просто используем команды оттуда.
dspt = v(3:4,:); ddspt = v(5:6,:); kappa = abs(dspt(1,:).*ddspt(2,:)-dspt(2,:).*ddspt(1,:))./... (sum(dspt.^2)).^(3/2); max(abs(kappa-1)) ans = 2.2204e-016
Численный ответ успокаивает: во всех проверенных точках кривизна составляет от 1 до в пределах округления.