Advertisement
cuantozombi

diferencias divididas

Oct 22nd, 2012
264
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lisp 0.81 KB | None | 0 0
  1. /* Este código fuente está escrito para Maxima, no para Lisp */
  2.  
  3. /*
  4.     difdiv: diferencias divididas
  5.     Método para el cálculo de diferencias divididas a partir de unos datos de entrada
  6.     m: matriz de 2 columnas y n filas, que contiene en cada fila los valores (xi,f(xi))
  7.     output: matriz de diferencias divididas, contiene los valores (xi,f(xi),fi(x...)...)
  8.     autor: @cuantozombi
  9.     http://elescribamatematico.wordpress.com
  10.     ejemplo uso:
  11.         m:matrix([3.2,22],[2.7,17.8],[1,14.2],[4.8,38.3],[5.6,51.7]);
  12.         r: difdiv(m);
  13. */
  14. difdiv(m):= block(
  15.     [j,l,r],
  16.     r: copymatrix(m),
  17.    
  18.     for j:1 thru (length(r)-1) do  block(
  19.         l:makelist((r[i+1][j+1]-r[i][j+1])/(r[i+j][1]-r[i][1]),i,1,length(r)-j),
  20.         l:append(l,makelist(0,k,1,j)),
  21.     r:addcol(r,l)
  22.     ),
  23.     r
  24. )$
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement