Sunteți pe pagina 1din 15

LENGUAJE DE PROGRAMACION II

Universidad Nacional del Altiplano – Puno


Escuela Profesional Ciencias Físico Matemáticas
Mención: Matemática
Lenguaje de Programación II
MATRICES II

Presentado por: Franklyn Wenderley Mamani Vilca

Recuerden que:

>> gris = magic (s)

gris =

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

supongamos que queremos elegir el renglón 2 de la matriz gris, entonces escogemos


renglón dos.coma y ponemos el operador dos puntos está operado va a decir que
seleccione todo el rango todas las columnas del renglón dos de esta manera.

>> gris (2, :)

ans =

23 5 7 14 16

Entonces aquí tenemos el renglón dos de la matriz gris de igual manera, si queremos
seleccionar la columna 4, escribimos gris decimos que todos los renglones de la
columna 4.

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
Y vemos que aquí nos da este Store correspondiente a la columna, 4, entonces Esta es la
manera de elegir todo un Rango toda una columna o todo un renglón.

>> gris (: ,4)

ans =

14

20

21

Pero también podemos elegir cierto Rango de valores, Por ejemplo, si queremos elegir
nada más el primer renglón, pero hasta la columna 3.

Escribimos gris primer renglón coma desde la uno hasta la 3 desde la columna 1 hasta la
3 y vemos. Que tenemos estos valores son los que nos regresan.

>> gris (1, 1, 3)

ans =

17 24 1

Aquí tenemos los valores de la columna, el primer renglón de la primera columna a la 3.


Supongamos que queremos elegir. Estos dos valores 19, 21 escribimos gris. el renglón
cuatro, de la columna 3 a la 4, entonces éste operador aquí te dice de dónde a dónde es
el rango de los valores que vas a elegir

>> gris (4, 3, 4)

ans =

19 21

Supongamos que queremos todos estos valores desde esta matriz cuadrada de 3 por 3
que tenemos aquí. Qué vamos a hacer es que vamos elegir gris de los renglones 3 al 5, y
de las columnas 3 a las 5 también. Y tenemos estos valores y extrajimos este Rango de
valores:

>> gris (3:5 ,3:5)

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
ans =

13 20 22

19 21 3

25 2 9

Vimos cómo seleccionar cierto Rango de valores en una matriz, Pero si te diste cuenta
los valores seleccionados siempre eran valores consecutivos, por ejemplo, estos dos
renglones o las dos últimas columnas o estos dos valores son consecutivos, pero qué
pasa si queremos seleccionar, por ejemplo, la primera columna y la segunda y queremos
selecciona también la última, pero no queremos estás la tercera y la cuarta no la
queremos seleccionar, ¿Cómo resolverías ese problema? Se resuelve de la siguiente
manera:

>> gris

gris =

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

primero debemos elegir si tenemos la matriz Gris te debemos elegir los dos conjuntos y
guardarlos en dos variables

Ponemos la variable a es igual a gris.

>> a = gris (: , 1:2)

a=

17 24

23 5

4 6

10 12

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
11 18

Después creamos una a una variable b y guardamos la última columna.

>> b = gris (: , 5)

b=

15

16

22

Ahora vamos a concatenar, vamos a guardar una variable c.

>> c = [a b]

c=

17 24 15

23 5 16

4 6 22

10 12 3

11 18 9

También pudimos haber hecho lo siguiente:

>> c = [gris (: , 1: 2) , gris (:, 5)]

c=

17 24 15

23 5 16

4 6 22

10 12 3

11 18 9

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II

Si queremos eliminar cierto Rango de valores

Bueno lo que se tiene que hacer aquí es lo siguiente es muy parecido a la selección de
valores, Por ejemplo, si queremos borrar la columna 2 de la matriz gris. Se seleccionan
todos los renglones de la columna 2 y se igualan a un vector vacío y así de simple que
desaparece la columna 2.

>> gris = magic(5)

gris =

17 24 1 8 15

23 5 7 14 16

4 6 13 20 22

10 12 19 21 3

11 18 25 2 9

>> gris (: , 2) = []

gris =

17 1 8 15

23 7 14 16

4 13 20 22

10 19 21 3

11 25 2 9

Si queremos borrar los renglones 3 y 4 hacemos el siguiente procedimiento los


renglones tres al cuatro que nos elimine todas las columnas entonces lo igualamos a un
vector vacío y vemos que desaparecen los renglones 3 y 4 y la matriz nos queda de esta
manera:

>> gris (3: 4, : ) = []

17 1 8 15

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
23 7 14 16

11 25 2 9

Aquí sí, hay que fijarnos en que cuando eliminamos un renglón o una columna. O
cuando eliminamos ciertos valores siempre la matriz no debe quedar rectangular, es
decir, no podemos eliminar el valor 2 y el 9, porque la matriz no quedaria rectangular y
nos aparecería un error entonces hay que tener en cuenta esto y bueno, éste la forma de
eliminar valores eliminar filas y columnas en una matriz.

En este vídeo veremos de nuevo el operador dos puntos, pero esta vez con otro fin esta
vez lo veremos para la creación o declaración de vectores con valores consecutivos.

Ejemplo. Creamos un vector x con valores del 1 al 10 y vemos que se forman nuestro
vector con valores consecutivos del 1 al 10 por default el incremento de los valores es
de uno en uno, en este caso le dimos el especificamos un incremento menor de 1

>> x = 1:10

x=

1 2 3 4 5 6 7 8 9 10

Pero podemos especificar el incremento de esta manera. En 1 al 10, pero con


incrementos de 0.1 incremento va rodeado de dos de dos operadores de dos puntos y
vemos que tenemos otro vector esta vez es un vector más grande, porque el incremento
es más pequeño tenemos un vector de 91 de longitud 91 valores.

>> x = 1: 0, 1: 10

x=

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II

También se puede especificar un incremento mayor de 1 desde 1 hasta 30 con


incremento de 22 que tenemos nuestro vector empiezan uno lleva incremento de 2 y
llega hasta 29, por qué más la cuida que el último valor no se pase Entonces si va haber
un valor. Si tenemos el último va. Y sí Y si le sumamos un incremento y se va a pasar,
pues más la no deja que se pase y lo dejé en el último valor para poder llegar a 30
exactamente tendríamos que haber empezado en cero y de esta manera vemos Que si
llega a 30, por qué no? Pues no sé pasas el último valor antes de pasarse Bueno también
se puede hacer con números negativos desde -1 con incrementos de -1 debemos
especificar hasta menos 10 de más especificar aquí que el incremento es de menos uno,
porque por de faul El incremento es uno entonces nunca llegaría hasta menos 10 y de
esta manera tenemos un vector con valores consecutivos negativos. Y bueno, Esta es la
manera de crear vectores con valores consecutivos acordamos que teníamos algunas
constantes especiales como pi. Y para hacer nuestras operaciones, utilizaremos esta
constante, por ejemplo, escribimos, seno de pi media o coseno de pi o tangente se puede
establecer también cualquier valor en el problema y también tenemos las funciones
inversas arcoseno, simplemente se agrega una a al inicio del nombre de la de la función.
Establecemos cualquier valor arcocoseno de nuevo cualquier valor o arcotangente.
Okay, Bueno las funciones que hemos visto hasta ahorita están en radianes, por eso
insertamos valores como éste, por ejemplo de ti Pero si queremos que estén en grados,
simplemente veamos la de al final de nombre de la función y esta vez insertamos los
datos en grados ejemplos seno de 90 grados coseno de 180 grados tangente 90° hice
caso, pues va a ser infinito y también tenemos las funciones inversas como lo vimos

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
anteriormente, simplemente agregamos la de al final del nombre de la función si
creamos un vector.

Cómo éste que vemos aquí.

Y obtenemos una función trigonométrica con ese vector la función no va a devolver un


valor para cada elemento del vector de esta manera que existe otra función llamada
atan2, esta función sus argumentos son y x tiene el ángulo entre eje x y que no es, por
ejemplo aquí si ayer establecemos un valor de 0 y a x, le establecemos un valor de
menos pi en este punto Pues sí, sí lo manejamos en radianes, el ángulo va a ser de ti y si
lo manejamos.

Grados el ángulo va a ser de 180, establecerlo 0 menos pi. Vamos, que el ángulo es de
pi en radianes y si lo manejamos en grados, vamos una de al final el nuevo 0 y menos Pi
y vemos que el ángulo es de 180 y bueno, estas son algunas funciones trigonométricas
que se pueden utilizar con matlab

Error using +
Inner matrix dimensiones must agree.

Azul * verde de las matrices deben coincidir, de igual manera, se puede multiplicar una
matriz por un vector, Por ejemplo, si tenemos la matriz verde de 2 por 3 y un vector de
3 por 1 se puede multiplicar igual solamente que el resultado pues va a ser un vector de
2 por 1. entonces vimos cómo hacer multiplicaciones entre matrices y escalares, entre
dos matrices.

COMENTARIO

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
En el video “OPERACIONES DE MULTIPLICACION EN MATLAB”, lo que
debemos saber para multiplicar dos matrices es necesario que el número de
columnas de la primera matriz será igual al número de filas de la segunda
matriz. Lo dicho anteriormente se tiene que cumplir en MATLAB si no es así
el programa votar error.

FUNCIONES SIZE Y TRANSPUESTA DE MATRICES CON MATLAB

Vamos a utilizar dos funciones que son muy útiles cuando realizamos operaciones con

Matrices, imagina que tienes una matriz como la que tenemos aquí y queremos realizar
una operación de suma o de multiplicación con ella, pues no nos vamos a poner a contar
las filas y las columnas que tiene para ver si, si va a coincidir con la otra matriz que
vayamos a sumar o multiplicar entonces para esto utilizamos una función llamada
función “size2, pero lo que hace esta función es que te retorna el valor de las
dimensiones de la matriz que pongas entre paréntesis.

>>size (A)
Ans=
1000 1000

Y no retorna las dimensiones de filas y columnas. Y también podríamos poner si


queremos guardar estos valores en una variable, podemos poner.

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
>>[M,N] = size (A)

>>M

M=

1000

Ahora tenemos una matriz.

>>verde
verde=
2 4 6
8 10 12

>>rojo
rojo=
1 2 3 4
5 6 7 8
9 10 11 12

>>size(verde)
ans=
2 3

>>size(rojo)
ans=
4 3

Entonces ya podemos saber si están si se puede multiplicar verde por rojo.Aquí vemos
que no se puede porque el 3 no es igual al 4 esto lo vimos en el tema pasado. Pero te
podemos utilizar una función que ya vimos para vectores que es la transpuesta operador
transpuesta de manera que sí transponemos una matriz. Sus dimensiones cambian.

>>size(rojo’)
ans=
3 4

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
Transpuesta las dimensiones ya no van a ser de 4 * 3 van a ser de 3 por 4 y de esta
manera, ya podemos multiplicar verde cuyas dimensiones son 2 por 3 por rojo. Si
ponemos verde o rojo.

>> verde * rojo


Error using +
Inner matrix dimensiones must agree

Sale un error porque no se puede, pero si ponemos verde o rojo transpuesta.

>>verde * rojo’
ans=
28 64 100 136

64 154 244 334

Ahora sí nos vemos que se puede realizar la multiplicación, entonces estas son dos
funciones muy útiles mucho en especial cuando se tiene que hacer operaciones de este
tipo donde se necesite conocer las dimensiones de una matriz o donde se necesiten
multiplicar en matrices.

COMENTARIO

En el video “FUNCIONES SIZE Y TRANSPUESTA DE MATRICES CON


MATLAB”, primeramente, la función “size” usamos para saber cuántas filas
y columnas tiene dicha matriz. Y en Matemática podemos definir que la
transpuesta de la matriz se obtiene al intercambiar las filar por las columnas
o viceversa, y en MATLAB solo es programar y luego el programa lo realiza
la operación.

MATRIZ INVERSA Y DETERMINANTES CON MATLAB

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
Si te preguntas qué pasó con la división entre matrices. Déjame decirte que la división
entre matrices no existe como tal para dividir una matriz entre otra se multiplica la
primera por el inverso de la segunda, de manera que si por ejemplo queremos dividir n
entre q lo que se hace es que se multiplica n por la inversa de q y para esto necesitamos
una función llamada “inv” que regresa a la inversa de una matriz.

>>n = [2 5 3; 6 9 0; 25 43 12]
n=
2 5 3
6 9 0
25 43 12

>>q = [2 7 3; 6 2 7; 0 1 2]
q=
2 7 3
6 2 7
0 1 2

>>n *inv(q)
ans=
0.6667 0.1111 0.1111
1.7500 0.4167 -4.0833
7.2083 1.7639 -10.9861

Y vemos aquí la respuesta de n entre q, vemos qué es muy sencillo, solamente de


garantizar que la matriz a la cual se le vaya obtener la inversa no sea una matriz
singular, una matriz singular es aquella cuyo determinante es diferente de cero. Para
obtener el determinante de una matriz y comprobar si no es singular.

>>det (q)
ans=
-72
Por ejemplo, vamos creando una matriz “p esta manera si obtenemos el determinante
de “p”.

>>det(p)
ans=
0

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
Por lo tanto “p” si es una matriz singular y si queremos hacer una operación de n entre
p

>>n*inv(p)
WARMING: Matrix is singular to working precisión.
ans=
inf inf inf
NaN NaN NaN
inf inf inf

Aquí aparecen valores que no son numéricos.

Pero más adelante, vamos a ver cómo utilizarlo. Esta es la manera de realizar divisiones
entre matrices, vemos Qué es muy sencillo, nada más multiplicar una matriz por el
inverso de la otra.

COMENTARIO

En el video “MATRIZ INVERSA Y DETERMINANTES CON MATLAB”, y en


matemática definimos la determínate como el resultado de restar la
multiplicación de los elementos de la diagonal principal con la multiplicación
de los elementos de la diagonal secundaria. Sabemos que en matrices no
existe la división por ese motivo usaremos la inversa de una matriz.

OPERACIONES ELEMENTO A ELEMENTO CON MATLAB

Vamos a mostrar lo que son las operaciones elemento a elemento, la primera de ellas es
el producto elemento a elemento que se compone de este símbolo (*) qué es el producto
y un punto antes del símbolo, cuando se multiplican dos matrices o dos vectores de esta
manera.

>>verde = [1 2 3; 4 5 6; 7 8 9]
verde =
1 2 3
4 5 6

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
7 8 9

>>azul = [2 5 3; 7 0 5; 4 9 1]
azul =
2 10 9
28 0 30
28 72 9

>>verde .* azul
ans =
2 10 9
28 0 30
28 72 9
Lo que haces que la respuesta se genera de la multiplicación elemento a elemento de
cada uno de los de los valores de las matrices.

Así también tenemos división de adición elementos a elemento. Está compuesto por el
símbolo este División y un punto antes.

>>verde. / azul
ans =
0.5000 0.4000 1.0000

0.5714 Inf 1.2000

1.7500 0.8889 9.0000

En este caso quedó infinito porque este valor de la matriz azul es cero y cualquier
valor / 30, pues es infinito. Bueno también tenemos elevar elemento a elemento de esta
manera.

>>verde .^ azul
ans =
1 32 27

16384 1 7776

2401 134217728 9

Estudiante: Franklyn Wenderley Mamani Vilca


LENGUAJE DE PROGRAMACION II
Matriz verde se va a elevar por el valor de la misma posición de la matriz azul, estás
operaciones también son muy útiles, se usan mucho, de nuevo son las operaciones
producto elemento a elemento, división elemento a elemento y elevación elemento a
elemento.

COMENTARIO

En el video “OPERACIONES ELEMENTO A ELEMENTO CON MATLAB”,


lo que vimos en este tema es que se realiza la multiplicación, división y
elevación de los elementos de las matrices una por una.

Bueno en los videos mencionados anteriormente podemos apreciar las


diferentes formas de utilización del MATLAB para el uso de temas en
matemáticas.

Estudiante: Franklyn Wenderley Mamani Vilca

S-ar putea să vă placă și