Siguiente: Gr�ficas sencillas Superior: Comenzando con PDL: un Anterior: Creando PDLs |
PDL acepta varios operadores y funciones conocidas. Los siguientes s�mbolos suman, restan multiplican y dividen varios ``piddles''.
+ - * /
Con estos operadores, al igual que el resto en este art�culo, PDL act�a elemento a elemento. Por ejemplo, si multiplicamos dos PDLs del mismo tama�o y dimensiones obtenemos un PDL equivalente con cada uno de los elementos siendo el producto de cada uno de los elementos de los otros dos.
perldl> $a=pdl([1,2]) perldl> $b=pdl([3,4]) perldl> p $a*$b [3 8]
Podemos por ejemplo calcular los puntos de una par�bola.
perldl> $x=zeroes(5)->xlinvals(-2,2); perldl> $y=$x**2; perldl> p $x [-2 -1 0 1 2] perldl> p $y [4 1 0 1 4]
El operador de exponenciaci�n
es igual que el de FORTRAN **
.
Podemos tambi�n realizar una operaci�n con PDLs o n�meros de diferentes dimensiones. Por ejemplo,
perldl> $a=pdl[0,1,2,3] perldl> p $a [0 1 2 3] perldl> $b=2*$a perldl> p $b [0 2 4 6]
En este caso estamos multiplicando
un ``piddle'' de dimensi�n uno y longitud cuatro
por un n�mero. PDL lo que hace es ``expandir''
el n�mero hasta abarcar el n�mero de dimensiones
del PDL de mayor tama�o. Y devuelve un ``piddle''
de igual tama�o que el original pero multiplicando
elemento a elemento su contenido original por el n�mero.
Aqu� radica la potencia de PDL, ya que no s�lo
tiene reglas ``l�gicas'' para vectores y matrices,
sino para todo tipo de matrices n-dimensionales.
Para m�s informaci�n en este
tema le�se la p�gina de manual
con el siguiente comando
help Indexing
.
Los operadores relaciones y l�gicos son muy similares de los de C
> < >= <= == != !
N�tese que estos operadores act�an elemento a elemento. Es decir, si un ``piddle'' se compara con un n�mero, el resultado es un ``piddle'' del mismo tama�o que el original.
perldl> $a=pdl([0,1,2,3,4]) perldl> p $a > 2 [0 0 0 1 1]
Las funciones matem�ticas tambi�n act�an elemento a elemento, algunas de ellas son las siguientes
sin log abs atan2 sqrt cos exp