exponenta event banner

newknt

Новое распределение пропуска

Синтаксис

newknots = newknt(f,newl)
newknt(f)
[...,distfn] = newknt(...)

Описание

newknots = newknt(f,newl) возвращает последовательность узлов, внутренние узлы которой отрезают основной интервал f в newl части таким образом, что определенная кусочно-линейная монотонная функция связана с высокой производной f равнораспределяется.

Цель состоит в том, чтобы выбрать последовательность узлов, подходящую для точного приближения функции g грубое приближение которой в f принято, что содержит достаточно информации о g, чтобы сделать это допустимым.

newknt(f) использует для newl его значение по умолчанию, а именно количество полиномиальных частей в f.

[...,distfn] = newknt(...) также возвращается, в distfn, ppform этой кусочно-линейной монотонной функции равнораспределяется.

Примеры

Если ошибка в наименьших квадратах приближения sp к некоторым данным x,y сплайном порядка k кажется неровным, вы можете попробовать для более справедливого распределения узлов при помощи

spap2(newknt(sp),k,x,y);

Другой пример см. в разделе Решение нелинейной ОДУ с граничным слоем путем коллокации.

Алгоритмы

Это стандартная программа Фортрана NEWNOT в PGS. С k порядком кусочно-полиномиальной функции f в pp, функция |Dkf| аппроксимируется кусочно-постоянной функцией, полученной локальной, дискретной, дифференциацией изменения Dk–1f. Новая последовательность пропуска выбрана, чтобы подразделить основной интервал кусочно-полиномиальной f таким образом, что

newknots(i)newknots(i+1)|Dkf|1/k=const, я=k:k+newl1