|
| |
Interpolación y aproximación de Funciones
Resumen: Lenguaje utilizado3. Polinomio de interpolación de diferencias divididas de Newton. Interpolación cuadrática. Polinomio de interpolación de Lagrange.
Publicación enviada por Petersen Alberto M.
Indice
1.
Introducción
2.
Lenguaje utilizado
3.
Polinomio de interpolación dediferencias divididas de Newton
4.
Interpolación cuadrática
5.
Polinomio de interpolaciónde Lagrange
6.
Bibliografía consultada
1. Introducción
La interpolación y la
aproximación de funciones se aplican en la informáticaen diversos campos:
Tratamientos de imágenes mediante una animación interpolada:
La animación se crea mediante el cambio del contenido de imágenes
sucesivas.Puede hacer que un objeto se desplace, aumente o disminuya de tamaño,
gire,cambie de color, aparezca o desaparezca, o cambie de forma. Los cambios
puedenocurrir por separado o combinados entre sí.
- Interpolación de movimiento, se definen
propiedades como la posición, el tamaño y la rotación de una instancia,
un grupo o un bloque de tipos en un punto en el tiempo, y estas propiedades
se cambian en otro punto.
- Interpolación de forma: se dibuja una forma en
un punto del tiempo y se cambia o se dibuja una nueva en otro punto. Al
interpolar formas se crea un efecto similar al de transformación y las
formas parecen cambiar en el transcurso del tiempo.
La animación interpolada es una forma eficaz de crear
movimiento y cambios alo largo del tiempo y de reducir al mínimo el tamaño del
archivo. Al contrariode la animación imagen a imagen, sólo necesita almacenar
los valores de loscambios de la imagen, no la imagen completa.
Mediciones de temperaturas y precipitaciones
Los datos iniciales utilizados en este trabajo son las medias mensuales
detemperatura (máxima, mínima y media) y precipitaciones. Para realizar
lainterpolación de los valores de las estaciones hacia una rejilla de 15
minutoslatitud/longitud (Figura 1), se utilizó un Sistema de Visualización y
Análisisen Rejilla (GrADS), un software desarrollado por el Centro para
Estudios delsistema Tierra-Océano-Atmósfera de la Universidad de Maryland de
los EstadosUnidos. El esquema de interpolación incorporado en GrADS es el método
deCressman, el cual ha sido ampliamente utilizado en aplicaciones de la
meteorología.
La disminución del número de estaciones reduce la calidad
de lasinterpolaciones y esta variación en el número de puntos puede
introducirmovimientos irreales en las series temporales de los campos generados,
conindependencia del método de interpolación que se utilice; así los
camposinterpolados con menos estaciones no serán capaces de captar todas las
característicasespaciales del fenómeno. Este inconveniente hizo necesario que
se utilizara unaestrategia para garantizar que los campos de temperatura y
precipitacióninterpolados, pudieran representar las características espaciales
y temporalesde ambas variables durante todo el período considerado. De esta
forma lasseries de tiempo en rejilla se estimaron utilizando el método
propuesto porWillmott y Robeson (1995). Este método, denominado por esos
autores comoInterpolación Climatológicamente Asistida (ICA), parte de la idea
de realizarla interpolación, separando las componentes espaciales y temporales.
Tratamiento de imágenes:
La interpolación es el método por el que se calculan más puntos de muestra,de
acuerdo con un algoritmo del software de imágenes -programa de escaneado,para
compensar las limitaciones de la resolución óptica. Por lo tanto, si
laresolución óptica es de 1000 dpi, la interpolación sólo se utilizará
siresoluciones mayores de 1000 dpi se requieren. Esto es especialmente útil
alescalar imágenes para erradicar trazos que no se quieren y que parecen
comoefectos de eslabones en los contornos de la imagen.
Por ejemplo, para escanear a 600 dpi una fotografía y doblar el tamaño
desalida de la imagen sin perder detalles, la imagen tiene que contener el
mismonivel de detalles que la fotografía original. Si la imagen se aumenta
sininterpolación, el espacio entre los puntos o las líneas será doblado.
Estosignifica que el mismo números de puntos se tendrán que situar en un área
dosveces mayor dando a la imagen una calidad granulada inconsistente. Con
lainterpolación, la densidad de la imagen se preservara introduciendo el númerode
puntos que se requieran en el espacio abierto, dando así a la imagenresultante
una mejor calidad. La interpolación se realiza durante los procesostanto de
reducción como de aumento.
Reconstrucción de una señal a partir de sus muestras usando
interpolación:
La interpolación es un proceso de empleo común en la reconstrucciónaproximada
o exacta de una señal a partir de sus muestras. Para una señal debanda
limitada, si los instantes de muestreo están bastante cerca, entonces laseñal
puede reconstruirse exactamente, es decir, mediante el empleo de unfiltro se
puede efectuar la interpolación exacta entre los puntos de muestreo.La
interpretación de la reconstrucción de una señal como un proceso
deinterpolación se hace evidente cuando se considera el efecto en el dominio
deltiempo del filtro.
La utilización de la interpolación como una técnica tiene un amplio
espectrode utilización tanto es así que es reformulada en cada campo que
aplica. Lainterpolación también es usada en:
Topografías, tecnologías de comunicación, genética, biotecnologías,reconstrucción
tridimensional de imágenes medicas, etc.
Contenido:
Este manual cumple con el objetivo de enseñar la instalación y utilizacióndel
lenguaje PDL - Perl data Language - en su versión 2.3.4, utilizando
lainterpretación de PERL con el paquete ActivePerl versión 5.8.0.805.
Partiendo desde una base teórica se intenta familiarizar a el usuario con
losconceptos fundamentales para su desarrollo. Se hace referencia de como
utilizarlos comandos para solucionar un determinado problema, además se
incluyenejemplo de su resolución, así como también de la puesta en marcha de
losmismos.
Requerimientos Mínimos
|
Sistema operativo
|
Microprocesa-dor
|
Navegador
|
Memoria RAM
|
Adaptador de vídeo
|
|
Windows 9x / NT / 2000.
|
IBM PC Intel Pentium
100Mhz y compatibles o mayores.
|
Internet Explorer de
Windows, versión= 5.5+
|
16 Mb de RAM
|
Adaptador SVGA con 1
Mb de RAM.
|
|
Linux / Unix
|
Arquitectura
x86
+
libc-2.1.x
|
Konqueror 2.2.21 o
compatible con el motor Mozilla/5.0
|
12 Mb de RAM
|
Adaptador SVGA con 1
Mb de RAM.
|
Nota:
Los siguientes componentes mencionados deben estar presentes en el equipo:
* Perl versión 5.6.1
* Perl ISAPI: Compatible con
servidores Web IIS 4.0+ o
PWS 4.0+
* PerlScript: ActiveX scripting host
como IE 4.0+, o Windows
Scripting Host
* Windows 95: DCOM para Windows 95
* Windows NT: Service Pack 5+ y Windows Installer
1.1+
* Espacio disponible en disco: aproximadamente 55 Mb para la instalación típica.
En todas las versiones Windows debe estar presente Windows Installer 2.0+
2. Lenguaje utilizado
Conocimientos Básicos
PDL es un lenguaje de programación orientado tratamiento numérico de datos.Sus
siglas significan Perl Data Language, y como su nombre indica está basadoen el
lenguaje de programación Perl, esto quiere decir que es un modulo delprograma,
por lo tanto es necesario tenerlo ya instalado a la hora de colocarPDL. Perl es
gratuito y además es Software Libre, esto quiere decir que el códigofuente está
disponible para que cualquiera lo pueda ver o modificar.
Perl es la abreviación de Practical Extraction and Report Language. Es lo quese
conoce como un lenguaje script, es decir, uno en el que no hace faltacompilar el
programa escrito.
El fuerte de PDL es la posibilidad de manipular matrices n-dimensionales y ademásde
poder resolver cálculos numéricos matriciales de una forma rápida.
Una de las características centrales de PDL es poder relacionarse fácilmentecon
el sistemas.
Tal como hemos mencionado, PDL es un lenguaje de cálculo numérico basado
enPerl Está disponible en múltiples plataformas y sistemas operativos. De
hechofunciona en diferentes versiones de Unix, Linux y todo tipo de Windows.
Unprograma que se escriba teniendo en cuenta la compatibilidad puede ser
escritoen una plataforma y ejecutado en otra.
Se pueden conseguir el modulo para cálculo numérico de PDL y otros a travésde
el CPAN -Comprehensive Perl Archive Network.
El proyecto PerlDL apunta a convertir Perl en un eficiente lenguaje numéricopara
computadoras. El modulo PDL le da al Perl
estándar la habilidad de manipular rápidamente y guardar compactamentematrices
de N-dimensiones. Uno puede escribir expresiones simples en PERL ymanipular
cadenas numéricas enteras todo de una sola vez.
PDL convierte a PERL en un lenguaje numérico gratuito similar al
paquetecomercial MATLAB.
Con el paquete es provisto un SHELL llamado PERLDL el cual se usa en la líneasde
comando y un modulo llamado PDL para el uso en los SCRIPT de PERL.
La distribución PDL para PERL es gratuita y proporciona una ampliafuncionalidad
numérica con soporte para visualización de dos y tresdimensiones, así también
como una gran variedad de rutinas de entrada/salida.El objetivo de PDL es
permitir una interactividad con una gran variedad depaquetes numéricos, gráficos
y de sistemas de visualización.
A continuación se proporcionará una breve reseña sobre el manejo deoperadores
relacionales y lógicos, así como también de las funciones quecompeten al
lenguaje.
|
Operador
|
Descripción
|
|
> < >= <=
== != !
|
Operadores relaciones
y lógicos actúan elemento a elemento
Ejemplo
$a = pdl([0,1,2,3,4])
p $a > 2 [0 0 0 1 1]
|
|
y= x**2;
|
Operador de
exponenciación ( ^ )
|
|
sin, log, abs, atan2,
sqrt, cos, exp
|
Funciones matemáticas
también actúan elemento a elemento
|
|
#
|
Toma a la línea como
un comentario, no se ejecuta.
|
|
Funciones
|
Descripción
|
|
print ""; p
"";
|
Muestra un mensaje en
pantalla.
|
|
x = nº
|
Asigna un valor a la
variable, no se debe poner punto y coma al final.
|
|
$a=pdl([ [1,2,3],
[9,8,7] ])
|
Crea una matriz
bidimensional con valores: 1 2 3 9 8 7
|
|
$a=sequence(9)
|
Crea un vector con una
secuencia de valores (del 0 al 9)
|
|
$a=zeroes(2,4);
|
Crea una matriz 2 x 4
rellena de ceros
|
|
$x=xvals(3,2) ;
|
Crea una matriz 3 x 2
y incrementa en uno los valores de las columnas partiendo desde 0
|
|
$y=yvals(3,2);
|
Crea una matriz 3 x 2
y incrementa en uno los valores de las filas partiendo desde 0
|
|
$a=zeroes(3,2); $x=$a->xlinvals(0.5,1.5); $x=xlinvals($a,0.5,1.5)
|
Crea una matriz de 3 x
2 y la incrementa partiendo desde 0,5 hasta 1,5
|
|
$y=$a->ylinvals(0.3,1.3);
|
lo mismo pero para las
columnas
|
|
$y=zeroes(2,3)
->ylinvals(0.3,1.3);
|
Concatena funciones,
primero crea con ceros y después incrementa
|
|
$gaus=exp(
-($x**2)/0.05 - ($y**2)/0.02 );
|
Calcula los valores de
una función gaussiana
|
|
$r=random(2,3)
|
Crea una matriz de 2 x
3 con valores al azar entre 0 y 1
|
|
$b=$a->copy
|
Cuando asignamos un
contenido a una variable de PDL con el símbolo igual, = , no siempre se
crea una copia nueva de los datos, sino que a menudo utiliza la mismas
posiciones de memoria que la variable original, para realmente crear una
copia nueva e independiente hay que usar el comando copy
|
|
Line3d(x,y)
|
Dibuja una línea o un
conjunto de líneas
|
|
points3d
|
Dibuja un vector como
un conjunto de puntos.
|
|
mesh3d
|
|
|
imag3d
|
Muestra una imagen.
|
Instalación en Linux / Unix
Puedes utilizar el modulo CPAN de Andreas König para que automáticamenteejecute
los procesos de descompresión y instalación.
Instalación de archivos comprimidos
tar.gz
A)- Descompresión
Descomprimir el archivo con gzip -d moduloPDL.tar.gz
Puedes obtener el descompresor gzip de ftp://prep.ai.mit.edu/pub/gnu.
O puedes combinar este paso con el siguiente para guardar en disco
gzip -dc moduloPDL.tar.gz | tar -xof
B)- DESEMPAQUETANDO
Desempaquetar el resultado con tar -xof moduloPDL.tar
C)- COMPILANDO
Entrar en el directorio nuevo y escribir:
perl Makefile.Plmake
make test
D)- INSTALANDO
Sin salir del directorio, escribimos:
make install
Asegurese de tener los permisos apropiados para instalar en
el directorio dela librería de PERL. Después necesitara ser el root.
Esto es todo lo que necesitas hacer con las conexiones dinámicas.
Muchos sistemas Unix tienen conexiones dinámicas, si usted no las tiene o sipor
cualquier razón tiene conexiones estáticas en PERL, y el modulo requiereser
compilado, usted necesitara una versión binaria que incluya el modulo. Denuevo
usted necesitara ser el root
Instalando los paquetes RPM
- Instalación del paquete Perl
- rpm
--install -nodeps ActivePerl-5.8.0.805-i686-linux.rpm
- Instalación del paquete MESA
- rpm
--install -nodeps Mesa-3.4-13.i386.rpm
- Instalación dl paquete PGPLOT
- rpm
--install -nodeps pgplot-5.2.0-2.i386.rpm
- Instalación del paquete OPENGL
- rpm
--install -nodeps oss-opengl-glu-20000925-1.i386.rpm
- Instalación del paquete PDL
- rpm
--install -nodeps pdl-2.2.3-1.i386.rpm
Compilación / instalación de PDL
Utilizar los pasos de compilación e instalación anteriormente ya
descriptos(sección 1.2 Instalación de archivos comprimidos tar.gz)
Instalación en Windows
- Descomprimir el archivo
- Usar el manejador de paquetes para instalar PDL:
ppm install --localización=. PDL
Los documentación de PDL en HTML son instalados en el directorio html.
Casisiempre debido a un defecto del la versión actual del manejador de
paquetes(ppm), no son reflejados en el índice de la documentación de perl. Por
favorcopia en el directorio html/lib/pdl los archivos. Las referencias cruzadas
en ellos archivos html son actualmente borradas. El script de post instalación
esnecesario par corregir esto en el futuro.
Ante cualquier consulta dirigirse a:
pdl-porters@jach.hawaii.edu
Interpolación de funciones
Los valores de las funciones polinomiales se pueden determinar efectuando
unnumero finito de sumas y multiplicaciones. Sin embargo, existen otras
funciones,tales como la logarítmica, la exponencial y las funciones trigonométricas
,que no se pueden evaluar tan fácilmente. En esta sección demostraremos
quemuchas funciones se pueden calcular en forma aproximada por polinomios y
quepuede usarse el polinomio en vez de la función original, para los cálculos,cuando
la diferencia entre los valores de la función y la aproximaciónpolinomial es
suficiente pequeña.
Interpolación
3. Polinomio de interpolación de diferencias divididas
deNewton
Interpolación lineal:
Enunciado Teórico:
Teniendo dos puntos como datos X0 ^ X1 la interpolaciónlineal
consiste en conectarlos con un polinomio de primer orden (una recta)
f1 (x) = f(x0)
+ f(x1) - f(x0) *(x - x0)
x1 - x0
f1 (x) = b0
+ b1 (x - x0)
Antes de explicar la interpretación geométrica,
comenzaremos resolviendo unejemplo:
Ejemplo1:
Se quiere aproximar f(x) = sen x en el intervalo [0,∏], con:
|
X
|
0
|
0.7
|
1.5
|
2.3
|
|
Y
|
0
|
0.64
|
0.99
|
0.74
|
Calcule s en 1 con cada una de las curvas encontradas y
compare con el valor verdadero.
Interpretación geométrica
Figura 1: Interpretación grafica del resultado de la función
a evaluar.
Figura 2: Interpretación
grafica de la interpolación lineal de Newton
.
Figura 3: Interpretación grafica de la función a evaluar (
f(x)=sen x ).
Código Fuente
- # EJEMPLO 1 - INTERPOLACION LINEAL DE NEWTON
- use
PDL;
- use
PDL::Graphics::TriD;
- #defino los valores iniciales
- print "\n\n Inserte un numero perteneciente
al intervalo : ";
- $coeficiente = <STDIN>;
- print "\n Ingrese el primer numero: ";
- $x0 = <STDIN>;
- print "\n Ingrese el segundo numero: ";
- $x1 = <STDIN>;
- print "\n Ingrese el tercer numero: ";
- $x2 = <STDIN>;
- print "\n Ingrese el cuarto numero: ";
- $x3 = <STDIN>;
- #calculo las funciones
- $resultado = pdl([ [$x0,$x1,$x2,$x3], [sin
$x0,sin $x1,sin $x2, sin $x3] ]);
- $original
= zeroes(50,50)->xlinvals(-4,4);
- #calculo la función aproximada
- $f1= sin $x0 + ((sin $x1-sin
$x0)/($x1-$x0))*($coeficiente-$x0);
- $f2= sin $x1 + ((sin $x2-sin
$x1)/($x2-$x1))*($coeficiente-$x1);
- $f3= sin $x2 + ((sin $x3-sin
$x2)/($x3-$x2))*($coeficiente-$x2);
- $aproximado = pdl([ [0,0.7,1.5,2.3],
[$f1,$f2,$f3] ]);
- print
"\n\n";
- print "La matriz resultante es: \n";
- print $resultado;
- print "\n \n";
- print "Cuando aparezcan las graficas
presionar la TECLA Q para pasar a la siguiente \n\n";
- print " 1 - Resultado del intervalo
\n";
- print " 2 - Resultado Aproximado del
intervalo\n";
- print " 3 - Función Original \n";
- print " \n";
- print "Presione ENTER para continuar
...";
- <STDIN>;
- imag3d ([$resultado]);
- imag3d ([$aproximado]);
- imag3d ([sin $original]);
- hold();
4. Interpolación cuadrática
Enunciado Teórico:
Teniendo tres puntos como datos X0, X1 ^ X2.
Lainterpolación cuadrática consiste en conectarlo con en polinomio de
segundoorden (una parábola) de la siguiente manera:
f2 (x) = b0 + b1 (x - x0) + b2(x
- x1)
b0 = f(x0) b1 = f(x1) - f(x0)
x1 - x0
f(x2) - f(x1) - f(x1) - f(x0)
b2 = x2 - x1 x1 - x0
x2 - x0
Interpretación geométrica
Como resolvemos el ejemplo 1 por interpolación cuadrática de Newton
entonceslas figuras 1 y 3 se mantienen constantes.
Figura 4: Interpretación grafica de la interpolación cuadrática
de Newton
Código Fuente
- # EJEMPLO 2 - INTERPOLACION CUADRATICA DE NEWTON
- use
PDL;
- use
PDL::Graphics::TriD;
- #defino los valores iniciales
- print "\n\n Inserte un numero perteneciente
al intervalo : ";
- $x = <STDIN>;
- print "\n Ingrese el primer numero: ";
- $x0 = <STDIN>;
- print "\n Ingrese el segundo numero: ";
- $x1 = <STDIN>;
- print "\n Ingrese el tercer numero: ";
- $x2 = <STDIN>;
- print "\n Ingrese el cuarto numero: ";
- $x3 = <STDIN>;
- #calculo las funciones
- $resultado = pdl([ [$x0,$x1,$x2,$x3], [sin
$x0,sin $x1,sin $x2, sin $x3] ]);
- $original
= zeroes(50,50)->xlinvals(-4,4);
- #calculo la función aproximada
- #calculo f0(x)
- $b0 = sin $x0;
- $b1 = (sin $x1 - sin $x0) / ($x1-$x0);
- $b2 = ((sin $x2 - sin $x1) - (sin $x1 - sin
$x0))/($x2-$x0);
- $f0
= $b0 + ($b1*($x - $x0)) + ($b2 * ($x - $x0) * ($x - $x1));
- #calculo f1(x)
- $b0 = sin $x1;
- $b1 = (sin $x2 - sin $x1) / ($x2-$x1);
- $b2 = ((sin $x3 - sin $x2) - (sin $x2 - sin
$x1))/($x3-$x1);
- $f1
= $b0 + ($b1*($x - $x1)) + ($b2 * ($x - $x1) * ($x - $x2));
- $aproximado = pdl([ [0,0.7,1.5,2.3], [$f0,$f1]
]);
- print
"\n\n";
- print "La matriz resultante es: \n";
- print $resultado;
- print "\n \n";
- print "Cuando aparezcan las graficas
presionar la TECLA Q para pasar a la siguiente \n\n";
- print " 1 - Resultado del intervalo
\n";
- print " 2 - Resultado Aproximado del
intervalo\n";
- print " 3 - Función Original \n";
- print " \n";
- print "Presione ENTER para continuar
...";
- <STDIN>;
- imag3d ([$resultado]);
- imag3d ([$aproximado]);
- imag3d ([sin $original]);
- hold();
5. Polinomio de interpolación de Lagrange
Es una reformulación del polinomio de Newton, este polinomio
de interpolaciónevita el cálculo de las diferencias divididas y vine dado por:
Forma general:
Este es el único polinomio de n-esimo orden que pasa exactamente por los n +
1puntos.
Si tenemos n=1 2 puntos
Forma lineal:
Enunciado Teórico:
f1 (x) = x - x1
f (x0) + x - x0 f(x1)
x0 - x1
x1 - x0
l0 (x) = x - x1
l1 (x) = x - x0
x0 - x1
x1 - x0
Interpretación geométrica
Como resolvemos el ejemplo 1 por interpolación lineal de lagrange entonces las
figuras 1 y 3 se mantienen constantes.
Figura 5: Interpretación grafica de la interpolación lineal
de Lagrange.
Código Fuente
- # EJEMPLO 3 - INTERPOLACION LINEAL DE LAGRANGE
- use
PDL;
- use
PDL::Graphics::TriD;
- #defino los valores iniciales
- print "\n\n Inserte un numero perteneciente
al intervalo : ";
- $x = <STDIN>;
- print "\n Ingrese el primer numero: ";
- $x0 = <STDIN>;
- print "\n Ingrese el segundo numero: ";
- $x1 = <STDIN>;
- print "\n Ingrese el tercer numero: ";
- $x2 = <STDIN>;
- print "\n Ingrese el cuarto numero: ";
- $x3 = <STDIN>;
- #calculo las funciones
- $resultado = pdl([ [$x0,$x1,$x2,$x3], [sin
$x0,sin $x1,sin $x2, sin $x3] ]);
- $original
= zeroes(50,50)->xlinvals(-4,4);
- #calculo la función aproximada
- $f1 = (($x - $x1)/($x0 - $x1) * sin $x0) + (($x -
$x0)/($x1 - $x0) * sin $x1);
- $f2 = (($x - $x2)/($x1 - $x2) * sin $x1) + (($x -
$x1)/($x2 - $x1) * sin $x2);
- $f3 = (($x - $x3)/($x2 - $x3) * sin $x2) + (($x -
$x2)/($x3 - $x2) * sin $x3);
- $aproximado = pdl([ [0,0.7,1.5,2.3],
[$f1,$f2,$f3] ]);
- print
"\n\n";
- print "La matriz resultante es: \n";
- print $resultado;
- print "\n \n";
- print "Cuando aparezcan las graficas
presionar la TECLA Q para pasar a la siguiente \n\n";
- print " 1 - Resultado del intervalo
\n";
- print " 2 - Resultado Aproximado del
intervalo\n";
- print " 3 - Función Original \n";
- print " \n";
- print "Presione ENTER para continuar
...";
- <STDIN>;
- imag3d ([$resultado]);
- imag3d ([$aproximado]);
- imag3d ([sin $original]);
- hold();
Forma cuadrática:
Enunciado Teórico:
Interpretación geométrica
Como resolvemos el ejemplo 1 por interpolación cuadrática de Lagrange
entonceslas figuras 1 y 3 se mantienen constantes.
Figura 6: Interpretación grafica de la interpolación cuadrática
deLagrange
Código Fuente
- # EJEMPLO 4 - INTERPOLACION CUADRATICA DE
LAGRANGE
- use
PDL;
- use
PDL::Graphics::TriD;
- #defino los valores iniciales
- print "\n\n Inserte un numero perteneciente
al intervalo : ";
- $x = <STDIN>;
- print "\n Ingrese el primer numero: ";
- $x0 = <STDIN>;
- print "\n Ingrese el segundo numero: ";
- $x1 = <STDIN>;
- print "\n Ingrese el tercer numero: ";
- $x2 = <STDIN>;
- print "\n Ingrese el cuarto numero: ";
- $x3 = <STDIN>;
- #calcuo las funciones
- $resultado = pdl([ [$x0,$x1,$x2,$x3], [sin
$x0,sin $x1,sin $x2, sin $x3] ]);
- $original
= zeroes(50,50)->xlinvals(-4,4);
- #calculo la función aproximada
- $f1 = (((($x - $x1)*($x - $x2)) / (($x0 - $x1) *
($x0-$x2))) * sin $x0) + (( (($x - $x0)*($x - $x2)) / (($x1 - $x0) *
($x1-$x2)) ) * sin $x1) + (( (($x - $x0)*($x - $x1)) / (($x2 - $x0) *
($x2-$x1)) ) * sin $x2);
- $f2 = (((($x - $x2)*($x - $x3)) / (($x1 - $x2) *
($x1-$x3))) * sin $x1) + (( (($x - $x1)*($x - $x3)) / (($x2 - $x1) *
($x2-$x3)) ) * sin $x2) + (( (($x - $x1)*($x - $x2)) / (($x3 - $x1) *
($x3-$x2)) ) * sin $x3);
- $aproximado = pdl([ [0,0.7,1.5,2.3], [$f1,$f2]
]);
- print
"\n\n";
- print "La matriz resultante es: \n";
- print $resultado;
- print "\n \n";
- print "Cuando aparezcan las graficas
presionar la TECLA Q para pasar a la siguiente \n\n";
- print " 1 - Resultado del intervalo
\n";
- print " 2 - Resultado Aproximado del
intervalo\n";
- print " 3 - Función Original \n";
- print " \n";
- print "Presione ENTER para continuar
...";
- <STDIN>;
- imag3d ([$resultado]);
- imag3d ([$aproximado]);
- imag3d ([sin $original]);
- hold();
6. Bibliografía consultada
"El calculo con geometría Analítica" - Luis
Leithold -Sexta edición
Paginas Web Consultadas:
Pagina Oficial:
o
http://pdl.perl.org/
Lista de Archivos para descargar:
o
http://sourceforge.net/project/showfiles.php?group_id=612
Paquete para la versión de Linux Debian:
o
http://packages.debian.org/pdl
o
http://fink.sourceforge.net/pdb/package.php/pdl
Servidor CVS (cvsweb):
o
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/pdl/
Paginas relacionadas:
o
http://glub.ehu.es/recursos-castellano/
Linux_en_castellano-6.html
o
http://www.perl.com
o
http://aspn.activestate.com/ASPN/CodeDoc/PDL/Basic/Pod/Tips.html
o
http://www.met.inf.cu/sometcuba/Boletin/v07_n01/art_abel04.htm
o
http://www.servicios-graficos.com/home/Usuarios/Tutoriales/TeoCol/interpol/body_interpol.html
o
http://www.mappinginteractivo.com/plantilla-ante.asp?id_articulo=128
o
http://itzamna.uam.mx/pilar/rec_3d.html
Autor:
Petersen Alberto M.
matiaspetersen@yahoo.com.ar
Compartir 
Publicación enviada por Petersen Alberto M.
Contactar mailto:matiaspetersen@yahoo.com.ar
Código ISPN de la Publicación EpypVyAVAEWwOzFLGE
Publicado Sunday 10 de August de 2003
Ultimas Publicaciones en ilustrados.com
ilustrados.com nace con el fin difundir el conocimiento publicando trabajos de investigación, monografias, tesis, presentaciones powerpoint y afines. Publicar trabajos en ilustrados.com ha alcanzado prestigio y reconocimiento internacional siendo cada vez más el número de académicos, empresas, investigadores, científicos que consultan las publicaciones de nuestro portal.
|