Red de blogs

TuxUbuntu.com

Compartamos conocimiento

Archive for the ‘Mathematica’ Category

El shell de Linux nos ofrece la ventaja de usar todos los programas que puedan emplearse desde la linea de comandos. Esta facilidad puede emplearse incluso con el famoso programa mathematica.

Este es un ejemplo. Por supuesto que cualquier programa puede utilizarse, y su implementación en shell tiene la ventaja de poder correrse remotamente y de optimizar la potencia de la maquina, ya que no tiene necesidad de levantar el modo grafico. Se pueden incluso llamar a cualquier paquete.

En una Terminal abrimos el editor de textos pico con el archivo test.csh de la siguiente forma (es decir estamos creando el archivo test.csh):

pico test.csh

Pegamos los siguiente en el editor:

set imput=$argv[1]
set mathnufile="allexp.nb"
cat > ${mathnufile} <<EOF
datain=Import["${imput}","Table"];
FN[x_]:=SetPrecision[x,11];
var=Fit[datain,{1,x},x]
Export["out.eos",var,"Table"]
EOF
MathKernel < ${mathnufile} >> /dev/null
more out.eos
rm -f ${mathnufile} out.eos
exit 0

hacemos Ctr+o para guardar el archivo y en la terminal le cambiamos los permisos al archivo test:

chmod +x test.csh

Generamos un archivo de prueba (lo que no es necesario, ya que se puede tomar de los datos internos). Por ejemplo test.dat, del siguiente modo, escribimos en la Terminal:

pico test.dat

y le insertamos los siguientes valores:

1 2
2 3
3 4
4 5
5 6

de nuevo Ctr+o para guardar y ahora corremos el script escribiendo en la Terminal:

./test.csh test.dat

Aqui la orden ./ quiere decir que el programa se encuentra en este nivel, y no es un programa del sistema. La salido de esta prueba es:

1.0000000000000007 + 0.9999999999999998*x

Es decir, un ajuste lineal.

Este es solo un sensillisimo ejemplo. Por supuesto que toda la potencia de este programa puede utilizarse en codigos más complejos.

Si alguien desea algo en especifico para trabajar el Mathematica en linea de comandos envíen sus comentarios y así podemos crear mas entradas con ejemplos practicos.