program derivada c..... c.....Este programa calcula una funcion y su derivada c..... implicit none c.....Declaracion de variables real*8 x,xi,xf,h,step integer npoints,i c..... c..... Aqui se declaran las FUNCIONES que estan definidas mas c..... abajo. Si estas funciones estan definidas en otro archivo c..... hay que declararlas como c..... real*8,external fun,der c..... real*8 fun,der c.....numero de puntos npoints = 1000 c.....dominio de la funcion xi = 0d0 xf = 2d0 c.....parametro para calcular la derivada h = 1d-5 c.....paso step = (xf-xi)/npoints do i=1,npoints ! Actualizo x x = i*step+xf ! Escribo la derivada en la pantalla write(*,'(3f20.10)') x,fun(x),der(fun,x,h) end do end c c Funcion que quiero dibujar c real*8 function fun(x) implicit none real*8 x fun = x**2+x return end c c Funcion que calcula la derivada de la funcion fx c real*8 function der(fx,x,h) implicit none real*8 fx,h,x der = (fx(x+h)-fx(x))/h return end |