Diferencia entre revisiones de «Matriz2fortran.sed»

De FJWiki
Saltar a: navegación, buscar
Línea 1: Línea 1:
Script [[sed]] para transformar una matriz texto separada por tabulaciones a una expresión de creación de matriz en fortran, sólo hay que reemplazar al final las dimensiones. Devuelve los números con "d0" para expresar doble precisión.
+
Script [[sed]] para transformar una matriz texto separada por tabulaciones a una expresión de creación de matriz en fortran, sólo hay que reemplazar al final las dimensiones. Devuelve los números con ''d0'' para expresar doble precisión. Los números que ya tengan notación científica son cambiados a notación científica con ''d''.
  
  

Revisión del 21:09 24 abr 2008

Script sed para transformar una matriz texto separada por tabulaciones a una expresión de creación de matriz en fortran, sólo hay que reemplazar al final las dimensiones. Devuelve los números con d0 para expresar doble precisión. Los números que ya tengan notación científica son cambiados a notación científica con d.


matriz2fortran.sed

#Convierte una matriz por tabs en formato para mathematica

1 i = reshape((/ \&
s/[0-9.][0-9.]*/&d0/g
s/d0[eEdD]\([-+]\?[0-9]*\)d0/d\1/g
s/\t/,/g
$! s/^.*$/\t&, \&/g
$ {
s/^.*$/\t&\/), \&/g
a\
	(/n, n/) )
}


Ejemplo

Ejemplo usando math2matriz.sed:

$ echo "{{1.5,2E-5},{3e4,4}}" | sed -f math2matriz.sed | sed -f matriz2fortran.sed
= reshape((/ &
        1.5d0,2d-5, &
        3d4,4d0/), &
        (/n, n/) )


Ver también