On 11/21/12, Damian Montaldo <[email protected]> wrote:
> Hola, estoy buscando algo para la cursada que supuse que iba a ser más
> fácil encontrar, por eso recurro a la lista.
>
> Alguno sabe como, dada una función, generar un mapa de gradientes?
> Empecé por el gnuplot pero luego me di cuenta que no quiero calcular
> el gradiente en cada punto.
> Estoy buscando algo del estilo octave, meter la función y que me haga
> un lindo plot con los gradientes...
>
> Alguna sugerencia?

Buenas,

No soy un experto en Octave ni nada por el estilo, pero te mando algo.
Tal vez sirva:

Suponete que tenés una función de R^2 en R y le querés calcular el
gradiente. Podés hacer algo así:

%Generar la cuadrícula de puntos en R^2. Ponele que estés en el
[0,1]x[0,1]. pasoEnX y pasoEnY es cuan fina querés la cuadrícula

[a,b] = meshgrid( 0:pasoEnX:1 , 0:pasoEnY:1 );

%Definís la función
f = @(x,y) x+y ; %por poner un ejemplo

%Le calculás el gradiente a f (aproximadamente pues la evaluás en la
cuadrícula [a,b])
[dx,dy] = gradient( f(a,b) , pasoEnX , pasoEnY );

%Y graficás
quiver(a,b,dx,dy);


Espero sirva de algo. Por las dudas igual no confiés y chequealo.

Saludos,
Sebas

P.D.: lo que empieza con "%" es comentario.
_______________________________________________
Glug mailing list
[email protected]
http://glugcen.dc.uba.ar/cgi-bin/mailman/listinfo/glug

Responder a