Este es el comando PDL :: MATLABp que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
PDL :: MATLAB: una guía para usuarios de MATLAB.
INTRODUCCIÓN
Si es un usuario de MATLAB, esta página es para usted. Explica las diferencias clave entre
MATLAB y PDL para ayudarlo a comenzar lo más rápido posible.
Este documento is no a tutoriales. Para eso, vaya a PDL :: QuickStart. Este documento
Acompañamientos la guía de inicio rápido, ya que destaca las diferencias clave entre MATLAB y
PDL.
Perl
La diferencia clave entre MATLAB y PDL es Perl.
Perl es un lenguaje de programación de propósito general con miles de módulos disponibles gratuitamente
En la red. PDL es una extensión de Perl. Esto le da a los programas de PDL acceso a más funciones.
de lo que la mayoría de las herramientas numéricas pueden soñar. Al mismo tiempo, la mayoría de las diferencias de sintaxis entre
MATLAB y PDL son el resultado de su base Perl.
You do no have a Usted aprende mucho más Perl a be eficaz con PDL. Pero si quieres aprender
Perl, hay una excelente documentación disponible en línea (http://perldoc.perl.org>) o
mediante el comando "perldoc perl". También hay un portal para principiantes.
(<http://perl-begin.org>).
El repositorio de módulos de Perl se llama CPAN (http://www.cpan.org>) y tiene una amplia gama de
módulos. Ejecute "perldoc cpan" para obtener más información.
TERMINOLOGÍA: HACER PIPÍ
MATLAB normalmente se refiere a vectores, matrices y matrices. Perl ya tiene matrices, y el
Los términos "vector" y "matriz" se refieren típicamente a colecciones unidimensionales y bidimensionales de
datos. Al no tener un buen término para describir su objeto, los desarrolladores de PDL acuñaron el término
"hacer pipí"para dar un nombre a su tipo de datos.
A hacer pipí consta de una serie de números organizados como un conjunto de datos N-dimensional. Piddle
proporcionan almacenamiento eficiente y cálculo rápido de grandes matrices N-dimensionales. Son
altamente optimizado para trabajo numérico.
Para más información, ver "Piddle vs Perl Matrices"más adelante en este documento.
COMANDO VENTANA Y IDE
A diferencia de MATLAB, PDL no viene con un IDE dedicado. Sin embargo, viene con un
shell interactivo y puede utilizar un IDE de Perl para desarrollar programas PDL.
PDL interactivo shell
Para iniciar el shell interactivo, abra una terminal y ejecute "perldl" o "pdl2". Como en MATLAB,
el shell interactivo es la mejor manera de aprender el idioma. Para salir del shell, escriba
"salir", al igual que MATLAB.
Escribiendo PDL programas
Un IDE popular para Perl se llama Padre (http://padre.perlide.org>). Es cruz
plataforma y fácil de usar.
Siempre que escriba un programa PDL independiente (es decir, fuera del shell "perldl" o "pdl2")
debe iniciar el programa con "use PDL;". Este comando importa el módulo PDL a
Perl. Aquí hay un programa de PDL de muestra:
utilizar PDL; # Importar módulo PDL principal.
use PDL :: NiceSlice; # Importar módulo PDL adicional.
use PDL :: AutoLoader; # Importar módulo PDL adicional.
$ b = pdl [2,3,4, XNUMX, XNUMX]; # Las declaraciones terminan en punto y coma.
$ A = pdl [[1,2,3], [4,5,6]]; # Matriz bidimensional.
imprimir $ A x $ b-> transponer;
Guarde este archivo como "myprogram.pl" y ejecútelo con:
perl miprograma.pl
Nuevo: Flexibles sintaxis
En las versiones actuales de PDL (versión 2.4.7 o posterior) hay una sintaxis de matriz flexible que
puede parecer extremadamente similar a MATLAB:
1) Utilice un ';' para delimitar filas:
$ b = pdl q [2,3,4, XNUMX, XNUMX];
$ A = pdl q [1,2,3, 4,5,6, XNUMX; XNUMX];
2) Utilice espacios para separar elementos:
$ b = pdl q [2 3 4];
$ A = pdl q [1 2 3; 4 5 6];
Básicamente, siempre que ponga una "q" delante del corchete de apertura, la PDL debería "hacer lo que
quieres decir ". Para que puedas escribir en una sintaxis que te resulte más cómoda.
MÓDULOS PARA MATLAB USUARIOS
Hay dos módulos que los usuarios de MATLAB querrán utilizar:
PDL :: NiceSlice
Da a PDL una sintaxis para cortes (submatrices) que es más corta y más familiar
Usuarios de MATLAB.
%MATLAB
b (1: 5) -> Selecciona los primeros 5 elementos de b.
# PDL sin NiceSlice
$ b-> slice ("0: 4") -> Selecciona los primeros 5 elementos de $ b.
# PDL con NiceSlice
$ b (0: 4) -> Selecciona los primeros 5 elementos de $ b.
PDL :: Autocargador
Proporciona un autocargador estilo MATLAB para PDL. Si se llama a una función desconocida "foo ()",
PDL busca un archivo llamado "foo.pdl". Si encuentra uno, lo lee.
ED. BÁSICA CARACTERÍSTICAS
Esta sección explica en qué se diferencia la sintaxis de PDL de MATLAB. La mayoría de los usuarios de MATLAB querrán
empieza aqui.
General "trampas"
Indices
En PDL, los índices comienzan en '0' (como C y Java), no 1 (como MATLAB o FORTRAN). Para
Por ejemplo, si $ b es una matriz con 5 elementos, los elementos se numerarían de 0 a
4.
Visualización de un objeto
MATLAB normalmente muestra el contenido del objeto automáticamente. En las carcasas de PDL que muestra
objetos explícitamente con el comando "imprimir" o el atajo "p":
MATLAB:
>> a = 12
a = 12
>> b = 23; % Suprime la salida.
>>
Carcasa PDL (perldl o pdl2):
pdl> $ a = 12 # Sin salida.
pdl> print $ a # Imprimir objeto.
12
pdl> p $ a # "p" es una abreviatura de "imprimir" en el shell.
12
pdl>
Creamos Piddle
Variables en PDL
Las variables siempre comienzan con el signo '$'.
MATLAB: valor = 42
PerlDL: $ valor = 42
Sintaxis básica
Utilice el constructor "pdl" para crear un nuevo hacer pipí.
MATLAB:v = [1,2,3,4]
PerlDL: $ v = pdl [1,2,3,4]
MATLAB: A = [1,2,3; 3,4,5]
PerlDL: $ A = pdl [[1,2,3], [3,4,5]]
Matrices simples
PDL de MATLAB
------ ------
Matriz de unos las(5) unos 5,5
Matriz de ceros Ceros(5) ceros 5,5
Matriz aleatoria rand(5) aleatorio 5,5
Vector lineal 1: 5 secuencia 5
Observe que en PDL, los paréntesis en una llamada de función suelen ser opcionales. Está
importante estar atento a posibles ambigüedades. Por ejemplo:
pdl> p ceros 2, 2 + 2
¿Debería interpretarse esto como "ceros (2,2) + 2" o como "ceros 2, (2 + 2)"? Ambos son
declaraciones válidas:
pdl> p ceros (2,2) + 2
[
[2 2]
[2 2]
]
pdl> p ceros 2, (2 + 2)
[
[0 0]
[0 0]
[0 0]
[0 0]
]
En lugar de intentar memorizar el orden de precedencia de Perl, es mejor utilizar
paréntesis para que su código sea inequívoco.
Secuencias espaciadas linealmente
MATLAB: >> linspace (2,10,5)
respuesta = 2 4 6 8 10
PerlDL: pdl> p ceros(5) -> xlinvals (2,10)
[2 4 6 8 10]
Explicación: Comience con un piddle unidimensional de 1 elementos y dele igualmente
valores espaciados de 2 a 10.
MATLAB tiene una sola función llamada para esto. Por otro lado, el método de PDL es más
flexible:
pdl> p ceros (5,5) -> xlinvals (2,10)
[
[2 4 6 8 10]
[2 4 6 8 10]
[2 4 6 8 10]
[2 4 6 8 10]
[2 4 6 8 10]
]
pdl> p ceros (5,5) -> ylinvals (2,10)
[
[2 2 2 2 2]
[4 4 4 4 4]
[6 6 6 6 6]
[8 8 8 8 8]
[10 10 10 10 10]
]
pdl> p ceros (3,3,3) -> zlinvals (2,6)
[
[
[2 2 2]
[2 2 2]
[2 2 2]
]
[
[4 4 4]
[4 4 4]
[4 4 4]
]
[
[6 6 6]
[6 6 6]
[6 6 6]
]
]
Rebanadas e índices
Extraer un subconjunto de una colección de datos se conoce como rebanar. PDL y MATLAB
tienen una sintaxis similar para cortar, pero hay dos diferencias importantes:
1) Los índices PDL comienzan en 0, como en C y Java. MATLAB inicia índices en 1.
2) En MATLAB, piensa en "filas y columnas". En PDL, piense en "xey".
MATLAB PerlDL
------ ------
>> A pdl> p $ A
un = [
1 2 3 [1 2 3]
4 5 6 [4 5 6]
7 8 9 [7 8 9]
]
-------------------------------------------------- -----
(fila = 2, col = 1) (x = 0, y = 1)
>> A (2,1) pdl> p $ A (0,1)
respuesta = [
4 [4]
]
-------------------------------------------------- -----
(fila = 2 a 3, col = 1 a 2) (x = 0 a 1, y = 1 a 2)
>> A (2: 3,1: 2) pdl> p $ A (0: 1,1: 2)
respuesta = [
4 5 [4 5]
7 8 [7 8]
]
advertencia
Cuando escribe un programa PDL independiente, debe incluir el PDL :: NiceSlice
módulo. Ver la sección anterior "MÓDULOS PARA MATLAB USUARIOS" para más
utilizar PDL; # Importar módulo PDL principal.
use PDL :: NiceSlice; # Buena sintaxis para cortar.
use PDL :: AutoLoader; # Cargador automático similar a MATLAB.
$ A = aleatorio 4,4;
imprimir $ A (0,1);
Matrix Operaciones
Multiplicación de matrices
MATLAB: A * B
PerlDL: $ A x $ B
Multiplicación por elementos
MATLAB: A. * B
PerlDL: $ A * $ B
Transponer
MATLAB: A '
PerlDL: $ A-> transponer
Funciones que agregar datos
Algunas funciones (como "suma", "máximo" y "mínimo") agregan datos para un conjunto de datos N-dimensional.
Este es un lugar donde MATLAB y PDL adoptan un enfoque diferente:
En MATLAB, todas estas funciones funcionan en una dimensión.
>> A = [1,5,4; 4,2,1]
A = 1 5 4
4 2 1
>> max (A)
respuesta = 4 5 4
>> max (A ')
respuesta = 5 4
Si desea el máximo para todo el conjunto de datos, puede usar la A (:)
notación que básicamente convierte todo el conjunto de datos en un solo unidimensional
vector.
>> max (A (:))
respuesta = 5
>> A = unos (2,2,2,2)
>> max (A (:))
respuesta = 1
PDL ofrece dos funciones para cada característica.
suma vs sumover
promedio vs promedio
max vs máximo
min vs minimo
El long nombre trabaja sobre una dimensión, mientras que el short nombre funciona en todo
hacer pipí.
pdl> p $ A = pdl [[1,5,4], [4,2,1]]
[
[1 5 4]
[4 2 1]
]
pdl> p $ A-> máximo
[5 4]
pdl> p $ A-> transponer-> máximo
[4 5 4]
pdl> p $ A-> max
5
pdl> p unos (2,2,2) -> max
1
pdl> p unos (2,2,2,2) -> max
1
Nota Observe que PDL se agrega horizontalmente mientras que MATLAB se agrega verticalmente. En otra
palabras:
MATLAB PerlDL
max (A) == $ A-> transponer-> máximo
max (A ') == $ A-> máximo
TIP: En MATLAB, piensa en "filas y columnas". En PDL, piense en "xey".
Más alto dimensional datos conjuntos
Un problema relacionado es cómo MATLAB y PDL entienden los conjuntos de datos de mayor dimensión. MATLAB fue
diseñado para vectores 1D y matrices 2D. Los objetos de mayor dimensión ("matrices ND") se
añadido en la parte superior. Por el contrario, PDL fue diseñado para piddles N-dimensionales desde el principio. Esta
conduce a algunas sorpresas en MATLAB que no ocurren en PDL:
MATLAB ve un vector como una matriz 2D.
MATLAB PerlDL
------ ------
>> vector = [1,2,3,4]; pdl> $ vector = pdl [1,2,3,4]
>> tamaño (vector) pdl> p $ vector-> atenuaciones
respuesta = 1 4 4
MATLAB ve "[1,2,3,4]" como una matriz 2D (matriz 1x4). PDL lo ve como un vector 1D: A
dimensión única de tamaño 4.
Pero MATLAB ignora la última dimensión de una matriz de 4x1x1.
MATLAB PerlDL
------ ------
>> A = unos (4,1,1); pdl> $ A = unos 4,1,1
>> talla (A) pdl> p $ A-> atenuación
respuesta = 4 1 4 1 1
Y MATLAB trata una matriz de 4x1x1 de forma diferente a una matriz de 1x1x4.
MATLAB PerlDL
------ ------
>> A = unos (1,1,4); pdl> $ A = unos 1,1,4
>> talla (A) pdl> p $ A-> atenuación
respuesta = 1 1 4 1 1 4
MATLAB no tiene sintaxis directa para matrices ND.
pdl> $ A = pdl [[[1,2,3], [4,5,6]], [[2,3,4], [5,6,7]]]
pdl> p $ A-> atenúa
3 2 2
Soporte de funciones.
En MATLAB, varias funciones, como la compatibilidad con matrices dispersas, no están disponibles para ND
matrices. En PDL, casi cualquier característica admitida por piddles 1D y 2D, es igualmente
apoyado por piddles N-dimensionales. Por lo general, no hay distinción.
Red ISTE Loop Estructuras
Perl tiene muchas estructuras de bucle, pero solo mostraremos la que le resulte más familiar.
Usuarios de MATLAB:
MATLAB PerlDL
------ ------
para i = 1:10 para $ i (1..10) {
disp (i) imprimir $ i
endfor}
Nota Nunca use bucles for para trabajos numéricos. Los bucles for de Perl son más rápidos que los de MATLAB,
pero ambos palidecen frente a una operación "vectorizada". PDL tiene muchas herramientas que
Facilitar la escritura de programas vectorizados. Estos están más allá del alcance de esta guía. Para
para obtener más información, consulte: PDL :: Indexación, PDL :: Threading y PDL :: PP.
Del mismo modo, nunca use 1..10 para trabajo numérico, incluso fuera de un bucle for. 1..10 es un
Matriz de Perl. Las matrices de Perl están diseñadas para ofrecer flexibilidad, no velocidad. Usar papillas preferiblemente.
Para obtener más información, consulte la siguiente sección.
Piddle vs Perl Matrices
Es importante notar la diferencia entre un Hacer pipí y una matriz de Perl. Perl tiene un
objeto de matriz de uso general que puede contener cualquier tipo de elemento:
@perl_array = 1..10;
@perl_array = (12, "Hola");
@perl_array = (1, 2, 3, \ @ otro_perl_array, secuencia(5));
Las matrices de Perl le permiten crear estructuras de datos poderosas (consulte Data estructuras abajo), but
they están no diseñado for numérico Trabaja. Para eso, usa papillas:
$ pdl = pdl [1, 2, 3, 4];
$ pdl = secuencia 10_000_000;
$ pdl = unos 600, 600;
Por ejemplo:
$ puntos = pdl 1..10_000_000 # 4.7 segundos
$ puntos = secuencia 10_000_000 # milisegundos
TIP: Puede utilizar guiones bajos en números ("10_000_000" se lee mejor que 10000000).
Condicionales
Perl tiene muchos condicionales, pero solo mostraremos el más familiar para MATLAB
usuarios:
MATLAB PerlDL
------ ------
si valor> MAX si ($ valor> $ MAX) {
disp ("Demasiado grande") imprime "Demasiado grande \ n";
elseif valor <MIN} elsif ($ valor <$ MIN) {
disp ("Demasiado pequeño") print "Demasiado pequeño \ n";
else} else {
disp ("¡Perfecto!") print "¡Perfecto! \ n";
fin }
Nota Aquí hay un "gotcha":
MATLAB: si no
PerlDL: elsif
Si su condicional da un error de sintaxis, verifique que haya escrito su "elsif"
correctamente.
TIMTOWDI (Allí Is Más Que Un Camino A Do Eso)
Una de las diferencias más interesantes entre PDL y otras herramientas es la expresividad
del lenguaje Perl. TIMTOWDI, o "Hay más de una manera de hacerlo", es el lema de Perl.
Perl fue escrito por un lingüista, y una de sus propiedades definitorias es que las declaraciones pueden
estar formulado de diferentes formas para darle al lenguaje una sensación más natural. Por ejemplo tu
es poco probable que le digan a un amigo:
"Mientras no haya terminado, seguiré trabajando".
El lenguaje humano es más flexible que eso. En cambio, es más probable que diga:
"Seguiré trabajando hasta que termine".
Debido a sus raíces lingüísticas, Perl es el único lenguaje de programación con este tipo de
flexibilidad. Por ejemplo, Perl tiene bucles while tradicionales y sentencias if:
mientras (! terminado ()) {
sigue trabajando();
}
if (! wife_angry ()) {
kiss_wife ();
}
Pero también ofrece la alternativa hasta y a menos que declaraciones:
hasta (terminado ()) {
sigue trabajando();
}
a menos que (esposa_enfadada ()) {
kiss_wife ();
}
Y Perl le permite escribir bucles y condicionales en forma de "sufijo":
keep_working () hasta que termine ();
kiss_wife () a menos que esposa_enfadada ();
De esta manera, Perl a menudo le permite escribir código más natural y fácil de entender que
posible en lenguajes de programación más restrictivos.
Funciones
La sintaxis de PDL para declarar funciones difiere significativamente de la de MATLAB.
MATLAB PerlDL
------ ------
función retval = foo (x, y) sub foo {
retval = x. ** 2 + x. * y mi ($ x, $ y) = @_;
función final return $ x ** 2 + $ x * $ y;
}
No se deje intimidar por toda la nueva sintaxis. A continuación, se muestra una descripción rápida de una función.
declaración en PDL:
1) "por debajo"significa" subrutina ".
2) "my"declara que las variables son locales a la función.
3) "@_"es una matriz de Perl especial que contiene todos los parámetros de la función. Esto podría parecer
como una forma extraña de hacer funciones, pero le permite hacer funciones que toman un
número variable de parámetros. Por ejemplo, la siguiente función toma cualquier número de
parámetros y los suma juntos:
sub mysum {
mi ($ i, $ total) = (0, 0);
por $ i (@_) {
$ total + = $ i;
}
return $ total;
}
4) Puede asignar valores a varias variables a la vez usando la sintaxis:
($ a, $ b, $ c) = (1, 2, 3);
Entonces, en los ejemplos anteriores:
# Esto declara dos variables locales y las inicializa a 0.
mi ($ i, $ total) = (0, 0);
# Esto toma los dos primeros elementos de @_ y los pone en $ xy $ y.
mi ($ x, $ y) = @_;
5) El "volvemos"instrucción da el valor de retorno de la función, si existe.
ADICIONAL CARACTERÍSTICAS
ASCII Archive IO
Para leer archivos de datos que contienen columnas de números separadas por espacios en blanco (como se leería
usando el MATLAB carga comando) uno usa el PDL rcoles en PDL :: IO :: Misc. Para un general
revisión de la funcionalidad IO disponible en PDL, consulte la documentación para PDL :: IO, por ejemplo,
"ayuda PDL :: IO" en el pdl2 shell o "pdldoc PDL :: IO" desde la línea de comandos del shell.
Data estructuras
Para crear estructuras de datos complejas, MATLAB utiliza "(SCD por sus siglas en inglés), arrays"Y"estructura arrays".
Las matrices y hashes de Perl ofrecen una funcionalidad similar pero son más potentes y flexibles.
Esta sección es solo una descripción general rápida de lo que Perl tiene para ofrecer. Para obtener más información sobre esto,
por favor ve ahttp://perldoc.perl.org/perldata.html> o ejecute el comando "perldoc
perldata ".
Matrices
Las matrices de Perl son similares a las matrices de celdas de MATLAB, pero más flexibles. Por ejemplo, en
MATLAB, una matriz de celdas sigue siendo fundamentalmente una matriz. Está hecho de filas y filas.
debe tener la misma longitud.
MATLAB
------
matriz = {1, 12, 'hola'; rand (3, 2), las(3), 'basura'}
=> Aceptar
matriz = {1, 12, 'hola'; rand (3, 2), las(3)}
=> ERROR
Una matriz de Perl es una estructura de datos secuenciales de propósito general. Puede contener cualquier dato
tipo.
PerlDL
------
@array = ([1, 12, 'hola'], [aleatorio (3,2), unos (3,3), 'basura'])
=> Aceptar
@array = ([1, 12, 'hola'], [aleatorio (3,2), unos (3,3)])
=> Aceptar
@array = (5, {'nombre' => 'Mike'}, [1, 12, 'hola'])
=> Aceptar
Observe que la matriz de Perl comienza con el prefijo "@" en lugar del "$" utilizado por
papillas
A Usted aprende del Perl matrices, Por favor go a <http://perldoc.perl.org/perldata.html> or
run los comando "perldoc perldata ".
Hashes
Los hash de Perl son similares a las matrices de estructura de MATLAB:
MATLAB
------
>> bebida = estructura ('tipo', 'coca', 'tamaño', 'grande', 'myarray', {1,2,3})
>> drink.type = 'sprite'
>> drink.price = 12% Agregue un nuevo campo a la matriz de estructura.
PerlDL
------
pdl>% bebida = (tipo => 'coca', tamaño => 'grande', mypiddle => unos (3,3,3))
pdl> $ bebida {tipo} = 'sprite'
pdl> $ bebida {precio} = 12 # Agrega un nuevo campo al hash.
Observe que los hashes de Perl comienzan con el prefijo "%" en lugar del "@" para las matrices y
"$" utilizado por piddles.
A Usted aprende del Perl hashes Por favor go a <http://perldoc.perl.org/perldata.html> or
run los comando "perldoc perldata ".
Performance
PDL tiene potentes funciones de rendimiento, algunas de las cuales normalmente no están disponibles en
herramientas de cálculo numérico. Las siguientes páginas lo guiarán a través de estas funciones:
PDL :: Indexación
Nivel: Principiante
Este tutorial para principiantes cubre la función estándar de "vectorización" que ya
saber de MATLAB. Utilice esta página para aprender cómo evitar los bucles for para hacer que su programa
más eficiente.
PDL :: Roscado
Nivel: Intermedio
La función de "vectorización" de PDL va más allá de lo que puede hacer la mayoría del software numérico. En
En este tutorial, aprenderá a "enhebrar" en dimensiones más altas, lo que le permitirá
vectorice su programa más de lo que es posible en MATLAB.
Los puntos de referencia
Nivel: Intermedio
Perl viene con un módulo de evaluaciones comparativas fácil de usar para ayudarlo a encontrar cuánto tiempo lleva
para ejecutar diferentes partes de su código. Es una gran herramienta para ayudarlo a enfocar su
esfuerzos de optimización. Puedes leer sobre esto en línea
(<http://perldoc.perl.org/Benchmark.html>) o mediante el comando "perldoc
Punto de referencia".
PDL :: PP
Nivel: Avanzado
El preprocesador de PDL es una de las funciones más poderosas de PDL. Tu escribes una funcion
definición en marcado especial y el preprocesador genera código C real que se puede
compilado. Con PDL: PP, obtiene la velocidad máxima del código C nativo sin tener que lidiar
con toda la complejidad del lenguaje C.
Trazado
PDL tiene capacidades de trazado con todas las funciones. A diferencia de MATLAB, PDL depende más de terceros
bibliotecas (pgplot y PLplot) por sus funciones de trazado 2D. Su trazado y gráficos 3D
usa OpenGL para rendimiento y portabilidad. PDL tiene tres módulos de trazado principales:
PDL :: Gráficos :: PGPLOT
Mejores Clínicas de for: Trazado de conjuntos de datos y funciones 2D.
Esta es una interfaz para la venerable biblioteca PGPLOT. PGPLOT se ha utilizado ampliamente en
las comunidades académicas y científicas durante muchos años. En parte debido a su edad,
PGPLOT tiene algunas limitaciones en comparación con los paquetes más nuevos como PLplot (por ejemplo, sin RGB
gráficos). Pero tiene muchas características que aún lo hacen popular en el campo científico.
muy especial.
PDL :: Gráficos :: PLplot
Mejores Clínicas de for: Trazado de funciones 2D, así como conjuntos de datos 2D y 3D.
Esta es una interfaz para la biblioteca de trazado PLplot. PLplot es un código abierto y moderno
biblioteca para la realización de parcelas científicas. Admite gráficos de conjuntos de datos 2D y 3D.
PLplot es mejor compatible con plataformas unix / linux / macosx. Tiene desarrolladores activos
La comunidad y el soporte para plataformas win32 están mejorando.
PDL :: Gráficos :: TriD
Mejores Clínicas de for: Trazado de funciones 3D.
La biblioteca de gráficos nativa PDL 3D que usa OpenGL como backend para gráficos y datos 3D
visualización. Con OpenGL, es fácil manipular los objetos 3D resultantes con
el ratón en tiempo real.
Escribiendo GUI
A través de Perl, PDL tiene acceso a todos los conjuntos de herramientas principales para crear una plataforma cruzada.
interfaz gráfica del usuario. Una opción popular es wxPerl (http://wxperl.sourceforge.net>).
Estos son los enlaces de Perl para wxWidgets, un poderoso conjunto de herramientas de GUI para escribir entre
aplicaciones de plataforma.
wxWidgets está diseñado para hacer que su aplicación se vea y se sienta como una aplicación nativa en
cada plataforma. Por ejemplo, el IDE de Perl Padre o madre está escrito con wxPerl.
enlace simultáneo
Simulink es un modelador y simulador de sistemas dinámicos gráficos. Se puede comprar
por separado como complemento de MATLAB. PDL y Perl no tienen un equivalente directo a
Simulink de MATLAB. Si esta función es importante para usted, eche un vistazo a Scilab:
<http://www.scilab.org>
Scilab es otro software de análisis numérico. Como PDL, es gratuito y de código abierto. Eso
no tiene las características únicas de PDL, pero es muy similar a MATLAB. Scilab viene con
xcos (anteriormente Scicos), un modelador y simulador de sistemas gráficos similar a Simulink.
DERECHOS DE AUTOR
Copyright 2010 Daniel Carrera ([email protected]). Puede distribuir y / o modificar este
documento bajo los mismos términos que la licencia de Perl actual.
Ver: http://dev.perl.org/licenses/
Agradecimientos
Me gustaría agradecer a David Mertens, Chris Marshall y Sigrid Carrera por su inmensa
Ayude a revisar borradores anteriores de esta guía. Sin sus horas de trabajo, este
documento no sería ni remotamente tan útil para los usuarios de MATLAB como lo es hoy.
Use PDL :: MATLABp en línea usando los servicios de onworks.net