Herramientas de usuario

Herramientas del sitio


fw:maths:armadillo

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
fw:maths:armadillo [2013/02/19 10:17]
alfred
fw:maths:armadillo [2020/05/09 09:25] (actual)
Línea 20: Línea 20:
 </​code>​ </​code>​
 ===== Uso ===== ===== Uso =====
 +Todas estas funciones están en el namespace ''​arma'',​ accesible a partir de hacer un include de la librería:
 +<code cpp>
 +#include <​armadillo>​
 +</​code>​
 +==== Uso básico ====
 +  * ''​mat A = randu<​mat>​(4,​5);'',​ matriz de 5 columnas y 4 filas con valores aleatorios.
 +  * ''​A(0,​1);'',​ acceso a la primera fila, segunda columna de A.
 +  * ''​A*B'',​ multiplicación de matrices.
 +  * ''​A.t()'',​ traspuesta de A.
 +  * ''​A.n_rows''​ o ''​A.n_cols'',​ devuelven el número de filas y columnas respectivamente.
 +  * ''​A.col(k)''​ o ''​A.row(j)'',​ devuelven la columna k y la fila j respectivamente.
 +  * ''​A.cols(p,​ q)''​ o ''​A.rows(p,​ q)'',​ devuelven un rango de filas o de columnas.
 +  * Para la creación de matrices:
 +    * ''​A.zeros()''​ o ''​A = zeros<​mat>​(k,​k)'',​ matriz llena de ceros.
 +    * ''​A.ones()''​ o ''​A = ones<​mat>​(k,​k)'',​ matriz llena de unos.
 +    * ''​A.eye()''​ o ''​A = eye<​mat>​(k,​k)'',​ matriz con diagonal a uno.
 +  * Para concatenar matrices:
 +    * ''​X = join_rows(A,​B)'',​ concatena filas.
 +    * ''​X = join_cols(A,​B)'',​ concatena columnas.
 +  * Para crear una matriz manualmente:​ ''​A << 1 << 2 << endr << 3 << 4 << endr;''​
 +  * Puedes guardar y cargar una matriz en ASCII con ''​A.save("​A.dat",​ raw_ascii);''​ y ''​A.load("​A.dat",​ raw_ascii);''​.
 +==== Tipos ====
 +=== Vectores ===
 +Se utiliza la clase ''​vec''​. \\
 +Podemos indicar el tipo concreto (si vector columna o fila) con ''​colvec''​ o ''​rowvec''​.
 +  * El siguiente ejemplo crea un vector columna a partir de un array de doubles (vertices) de tres elementos:
 +<code cpp>
 +vec cv = vec(vertices,​ 3);
 +cout << cv << endl;
 +</​code>​
 +  * ''​P.fill(3)'',​ substituye todos los valores de P con 3.
fw/maths/armadillo.1361269022.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)