Hipermatrices y Estructuras

Páginas: 5 (1236 palabras) Publicado: 20 de septiembre de 2011
ESCUELA POLITÉCNICA NACIONAL

SOFTWARE DE SIMULACIÓN

HIPERMATRICES Y ESTRUCTURAS

Hipermatrices

* Generación de una hipermatriz.

Entre una de las características que tiene Matlab está la creación de matrices, sin embargo este concepto se ha llevado a un nuevo nivel a través de las hipermatrices (matrices de más de dos dimensiones). Para comprender de mejor forma esteconcepto podemos comparar a una hipermatriz con un bloc de notas, donde cada nota representa una matriz.
Entre sus aplicaciones destaca el almacenamiento con un único nombre distintas matrices del mismo tamaño y puede contener números, caracteres, estructuras, vectores o matrices de celdas.
Para la generación de una hipermatriz (de 3D) podemos tomar como base la creación de una matriz simple peroagregando un nuevo argumento de entrada. El tercer argumento representa la tercera dimensión, lo que puede ser interpretado como la “profundidad” de la hipermatriz.

Ejemplos:

>> A(:,:,1)=[10 11 12; 13 14 15];

>>A(:,:,2)=[16 17 18; 19 20 21]

A(:,:,1) =

10 11 12
13 14 15

A(:,:,2) =

16 17 18
19 20 21

>> B(2,2,2)=5B(:,:,1) =

0 0
0 0

B(:,:,2) =

0 0
0 5

Otra opción para generar una hipermatriz es a través de la función cat() donde los argumentos serán: dimensión, matriz Amxn y matriz Bmxn

Ejemplo:

>> X=zeros(2,3); Y=ones(2,3);

>> cat(3,X,Y)

ans(:,:,1) =

0 0 0
0 0 0
ans(:,:,2) =

1 1 11 1 1

* Funciones aplicables a hipermatrices.

Si consideramos a las matrices como un caso particular de las hipermatrices podemos suponer entonces que algunas funciones aplicadas a las matrices también pueden aplicarse a hipermatrices. En la siguiente tabla se presentan las principales funciones aplicables a hipermatrices:

Función | Descripción |
size() | Devuelve tres omás valores (el nº de elementos en cada dimensión) |
ndims() | Devuelve el número de dimensiones |
squeeze() | Elimina las dimensiones que son igual a uno |
reshape() | Distribuye el mismo número de elementos en una matriz con distinta forma o con distintas dimensiones |
permute(X,y) | Permuta las dimensiones de X según los índices del vector y |
ipermute(X,y) | Realiza la permutacióninversa |

Ejemplo:

>> K(2,2,3)=2

K(:,:,1) =

0 0
0 0

K(:,:,2) =

0 0
0 0

K(:,:,3) =

0 0
0 2

>> permute(K,[3 1 2])

ans(:,:,1) =

0 0
0 0
0 0

ans(:,:,2) =

0 0
0 0
0 2

>> size(K)

ans =

2 2 3

Algunas funciones enMatlab que se utilizan para generar matrices también nos permiten generar hipermatrices agregando el o los argumentos necesarios.
Entre estas funciones destacan rand(), randn(), zeros() y ones().

Ejemplo:

>> R=randn(2,2,2)

R(:,:,1) =

-0.0843 -1.0968
-1.8535 0.2186

R(:,:,2) =

0.7942 -0.6126
0.4631 2.2444

Información adicional:

* Lasfunciones que se aplican sobre escalares en una hipermatriz se aplican elemento a elemento al igual que en vectores y matrices.
Ejemplos: sen(), cos(), etc.

* Las funciones que se aplican sobre vectores también se aplican a hipermatrices obteniendo como resultando un array de una dimensión inferior.
Ejemplos: sum(), max(), etc.

* Para la aplicación de funciones matriciales propias delalgebra lineal es necesario extraer la matriz ya que no se pueden aplicar directamente en la hipermatriz.
Ejemplos: det(), inv(), etc.

Estructuras

* Creación de estructuras
Las estructuras están formadas por datos de diferente tipo (por ejemplo números y cadenas de caracteres) bajo un mismo nombre. Los datos que están dentro de una estructura se denominan campos o miembros.
Una de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Estructura
  • Estructura
  • Estructura
  • Estructura
  • Estructuras
  • Estructuras
  • Estructuras
  • Estructuras

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS