• Publicidad

Función geco en PDL

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Función geco en PDL

Notapor nemest » 2010-09-28 17:49 @784

Buenas a todos.

Tengo una duda sobre la función geco, o gefa, si es que estoy usando la incorrecta.

Necesito resolver un sistema de ecuaciones:
a1x + b1y + c1z = i
a2x + b2y + c2z = j
a3x + b3y + c3z = k

Para eso uso la eliminación de Gauss, para hallar los valores de x,y,z.

El problema es que en la documentación la función no la entiendo muy bien.
Dice más o menos esto:
Signature: (a(n,n);int [o]ipvt(n);[o]rcond();[o]z(n))

Lo que entiendo es que le ingresa una matriz cuadrada(n,n) y me da 3 resultados: ipvt[n], rcond y z[n].

Esto es lo único que he logrado hacer hasta éste momento :(

¿Alguien me podría decir cómo obtengo los valores x,y,z?

Gracias por cualquier aporte, es mi primera vez con esta librería matemática.

EDIT:
Añado el enlace de geco
http://pdl.perl.org/PDLdocs/Slatec.html#geco
Avatar de Usuario
nemest
Perlero nuevo
Perlero nuevo
 
Mensajes: 12
Registrado: 2009-09-18 21:25 @934

Publicidad

Re: Función geco en PDL

Notapor explorer » 2010-09-28 18:43 @821

Las dos funciones factorizan una matriz por eliminación Gausiana y estima el llamado número de condición de la matriz. Como son dos funciones que PDL importa desde la librería SLATEC, lo mejor es buscar dentro de la documentación de esa librería:

http://www.maths.bris.ac.uk/~marp/slate ... .htm#CGECO

Ahí indica que si no vas a necesitar calcular el número de condición, gefa() es más rápida.

La documentación de PDL es escasísima (porque se supone que vas a leer la documentación en otros sitios), así que solo va a indicar los parámetros de entrada y los resultados.

En el caso de int [o]ipvt(n);[o]rcond();[o]z(n), todos los valores son enteros, e ipvt y z son vectores, mientras que rcond solo devuelve un entero.

En PDL (sin slatec) hay también la función simq, para resolver ecuaciones lineales.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Función geco en PDL

Notapor nemest » 2010-09-28 20:01 @875

Muchísimas gracias.

Al final usé simq (hice pruebas a mano para ver si si era lo que buscaba :lol: )

Gracias por la información de PDL. Estoy pensando si hacer los proyectos con perl+PDL o brincar a TNT+C

Me ha quedado grande leer sobre PDL.
Avatar de Usuario
nemest
Perlero nuevo
Perlero nuevo
 
Mensajes: 12
Registrado: 2009-09-18 21:25 @934

Re: Función geco en PDL

Notapor explorer » 2010-09-29 03:29 @187

Para trabajar con PDL, lo mejor es apuntarse a la lista de correo. Recuerdo que me respondían muy rápida y amablemente.

Al principio, la curva de aprendizaje es fortísima. Apenas hay documentación con introducción y ejemplos.

Pero una vez que entiendes la filosofía de la librería, se ve la ventaja de manejar una librería matemática con la velocidad de Perl.

Por ejemplo, si queremos filtrar los datos de vegetación, quitando aquellos que sabemos que están debajo de una nube, vale con hacer una multiplicación (donde hay nube, $nube vale 0, con lo que realmente estamos rellenando de ceros aquellos datos que sabemos que están ocultos detrás de la nube).

my $mapa_de_índice_vegetación_diario = $índice_vegetación * $nube;

Lo bueno de una librería matemática es que no indicamos las dimensiones de los objetos. $nube e $indice_vegetación pueden ser 1536x1000 (dos dimensiones) o 16000x10240x32 (tres dimensiones). Para nosotros es una simple multiplicación.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Función geco en PDL

Notapor nemest » 2010-09-29 16:19 @721

explorer escribiste:Para trabajar con PDL, lo mejor es apuntarse a la lista de correo. Recuerdo que me respondían muy rápida y amablemente.

Al principio, la curva de aprendizaje es fortísima.

Creo que eso lo leí acá en un documento sobre PDL, creo que suyo.

En cuanto a la lista de correos, mi inglés es bastante regular, y ahora si se junta con jerga matemática en inglés... :?

PD. Es un placer ver que todavía sigues tan presente en éste sitio web, y respondiendo rápida y eficazmente las dudas de todos los newbies de Perl.

Muchas gracias por su tiempo invertido.
Avatar de Usuario
nemest
Perlero nuevo
Perlero nuevo
 
Mensajes: 12
Registrado: 2009-09-18 21:25 @934

Re: Función geco en PDL

Notapor explorer » 2010-09-29 16:52 @744

Bueno, yo cuando empecé también tenía un nivel de inglés pésimo (más o menos, como ahora :) ).

Pero con el traductor de Google se consiguen maravillas.

No sé si Xavier Calbet seguirá con el tema (su dirección de correo lo puedes obtener de su libro Beginning PDL y otro en su artículo Comenzando con PDL: un lenguaje para el cálculo numérico (en HTML) (y en español)).
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Función geco en PDL

Notapor nemest » 2010-09-29 18:25 @809

El documento ya lo había visto hace unos días.

El problema es que yo siempre espero encontrarme algo como la API de Java o la de Qt.

Igual, gracias por los enlaces. Luego miro cómo es con la lista de correos.
Avatar de Usuario
nemest
Perlero nuevo
Perlero nuevo
 
Mensajes: 12
Registrado: 2009-09-18 21:25 @934


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 9 invitados