exponenta event banner

fnval

Выполните функцию сплайна

Синтаксис

v = fnval(f,x)
fnval(x,f)
fnval(...,'l')

Описание

v = fnval(f,x) и v = fnval(x,f) оба вводят значение f (x) в точках в x из функции сплайна f, описание которого содержится в f.

Примерно говоря, выход v получен, заменив каждую запись x значением f при той записи. Это буквально верно в случае, если функция в f является со скалярным знаком и одномерным, и намерение во всех других случаях, за исключением того, что, для d- ценный m- изменитесь функция, это означает заменять m- векторы dВекторы. Полное изложение следующие.

Для одномерного f:

  • Если f со скалярным знаком, то v одного размера с x.

  • Если f является [d1,...,dr]- ценный, и x имеет размер [n1,...,ns], затем v имеет размер [d1,...,dr, n1,...,ns], с v(:,...,:, j1,...,js) значение f в x(j1,...,js), – за исключением того, что

    (1) n1 проигнорирован, если это - 1 и s 2, т.е. если x вектор-строка; и

    (2) MATLAB® игнорирует любые запаздывающие одноэлементные размерности x.

Для m- изменитесь f с m>1, с f [d1,...,dr]- ценный, x может быть или массив или иначе массив ячеек {x1,...,xm}.

  • Если x массив, размера [n1,...,ns] скажите, затем n1 должен равняться m, и v имеет размер [d1,...,dr, n2,...,ns], с v(:,...,:, j2,...,js) значение f в x(:,j2,...,js), – за исключением того, что

    (1) d1..., dr проигнорирован в случае, если f со скалярным знаком, т.е. оба r и n1 1;

    (2) MATLAB игнорирует любые запаздывающие одноэлементные размерности x.

  • Если x массив ячеек, затем он должен иметь форму {x1,...,xm}, с xj вектор, длины nj, и, в этом случае, v имеет размер [d1,...,dr, n1,...,nm], с v(:,...,:, j1,...,jm) значение f в (x1(j1)..., xm(jm)), – за исключением того, что d1..., dr проигнорирован в случае, если f со скалярным знаком, т.е. оба r и n1 1.

Если f имеет разрыв скачка в x, затем значение f (x +), т.е. предел справа, возвращено, кроме тех случаев, когда x равняется правильному концу основного интервала формы; для такого x, значение f (x –), т.е. предел слева, возвращено.

fnval(x,f) совпадает с fnval(f,x).

fnval(...,'l') обработки f как непрерывный слева. Это означает это, если f имеет разрыв скачка в x, затем значение f (x –), т.е. предел слева, возвращено, кроме тех случаев, когда x равняется левому концу основного интервала; для такого x, значение f (x +) возвращено.

Если функция многомерна, то вышеупомянутые операторы относительно непрерывности слева и права применяют coordinatewise.

Примеры

Выполните функции в заданных точках

Интерполируйте некоторые данные и постройте и выполните получившиеся функции.

Задайте некоторые данные.

 x = [0.074 0.31 0.38 0.53 0.57 0.58 0.59 0.61 0.61 0.65 0.71 0.81 0.97];
 y = [0.91 0.96 0.77 0.5 0.5 0.51 0.51 0.53 0.53 0.57 0.62 0.61 0.31]; 

Интерполируйте данные и постройте получившуюся функцию, f.

f = csapi( x, y )
fnplt( f )

Найдите значение функционального f в x = 0.5.

fnval( f, 0.5 )

Найдите значение функционального f в 0, 0.1, ..., 1.

fnval( f, 0:0.1:1 )

Создайте функциональный f2 это представляет поверхность.

x = 0.0001+(-4:0.2:4);
y = -3:0.2:3;
[yy, xx] = meshgrid( y, x );
r = pi*sqrt( xx.^2+yy.^2 );
z = sin( r )./r;
f2 = csapi( {x,y}, z ); 

Постройте функциональный f2.

fnplt( f2 )
axis( [-5, 5, -5, 5, -0.5, 1] ); 

Найдите значение функционального f2 в x = -2 и y = 3.

fnval( f2, [-2; 3] ) 

Алгоритмы

Для каждой записи x, соответствующий пропуск - или интервал узла определяется и собранная релевантная информация. В зависимости от ли f находится в ppform или в B-форме, вложенном умножении или повторении B-сплайна (см., например, [PGS; X. (3)]), затем используемый векторный вид для одновременной оценки при всех записях x. Оценка многомерной полиномиальной функции сплайна в полной мере пользуется структурой продукта тензора.

Оценка рационального сплайна развивает оценку соответствующего сплайна с векторным знаком делением всех кроме его последнего компонента его последним компонентом.

Оценка функции в stform делает существенное использование stcol, и попытки сохранить матрицы включенными к разумному размеру.

Смотрите также

| | | |