Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

fndir

Derivada direccional de una función

Sintaxis

df = fndir(f,y)

Descripción

df = fndir(f,y) es el formato ppform de la derivada direccional de la función f en f, en la dirección del vector (columna) y. Esto significa que df describe la función Dyf(x):=limt0(f(x+ty)f(x))/t.

Si y es una matriz con n columnas y f tiene el valor d, la función de df tiene el valor prod(d)*n. Su valor en x, transformado para que tenga el tamaño [d,n], en su columna número j, cuenta con la derivada direccional de f en x en la dirección de la columna número j de y. Si prefiere df para reflejar explícitamente el tamaño real de f, utilice en su lugar

df = fnchg( fndir(f,y), 'dim',[fnbrk(f,'dim'),size(y,2)] );

Puesto que fndir se basa en el formato ppform de la función en f, no funciona para funciones racionales ni para funciones en el formato stform.

Ejemplos

Por ejemplo, si f describe una función con valor de vector d m-variada y x es un punto en su dominio, por ejemplo, con su formato particular ppform f que describe un polinomio bilineal escalar,

f = ppmak({0:1,0:1},[1 0;0 1]); x = [0;0];
[d,m] = fnbrk(f,'dim','var');
jacobian = reshape(fnval(fndir(f,eye(m)),x),d,m)

es la matriz jacobiana de esa función en ese punto (que, para esta función particular con valor escalar, es su gradiente y es cero en el origen).

Como ejemplo relacionado, las siguientes declaraciones representan los gradientes de (una buena aproximación a) la función Franke en una malla regular:

xx = linspace(-.1,1.1,13); yy = linspace(0,1,11);
[x,y] = ndgrid(xx,yy); z = franke(x,y);
pp2dir = fndir(csapi({xx,yy},z),eye(2));
grads = reshape(fnval(pp2dir,[x(:) y(:)].'),...
    [2,length(xx),length(yy)]);
quiver(x,y,squeeze(grads(1,:,:)),squeeze(grads(2,:,:)))

A continuación se muestra la gráfica resultante.

Algoritmos

La función en f se convierte al formato ppform y se calcula la derivada direccional de sus piezas polinómicas formalmente y en una sola operación vectorial, y se vuelven a unir para obtener el formato ppform de la derivada direccional de la función en f.

Consulte también

| | |