Sie sind auf Seite 1von 5

Universidad Nacional del Sur - Departamento de Ingenierı́a Quı́mica - Métodos Teóricos en Ingenierı́a A - 2019

1 Algoritmos para el Álgebra Lineal

Se proveen las siguientes funciones elementales:


C = OperacionElemental(C,s,p,t): Realiza la siguiente operacion elemental: Ft ← Ft + s.Fp , donde s es un
número por el que se multiplica a la fila p antes de sumarla a la fila t de la matriz C. El resultado de la operación
reemplaza la fila t en la matriz C de salida.
C = DividirFilaPorEscalar(C,s,t): Divide a la fila t de la matriz C por el número s. El resultado de la
operación reemplaza la fila t en la matriz C de salida.
C = IntercambiarFilas(C,t,p): El argumento de salida es una copia de la matriz C en la que se han intercam-
biado las filas t y p.
C = IntercambiarColumnas(C,t,p): El argumento de salida es una copia de la matriz C en la que se han
intercambiado las columnas t y p.
q = EncontrarPosicionMaxAbsFila(C,t): Devuelve la posición q del máximo valor absoluto en la fila t de la
matriz C, teniendo en cuenta solamente los elementos de la columna t en adelante.
q = EncontrarPosicionMaxAbsColumna(C,t): Devuelve la posición q del máximo valor absoluto en la
columna t de la matriz C, teniendo en cuenta solamente los elementos de la fila t en adelante.
Utilizarlas para implementar funciones que reciban una matriz A∗ de N filas y N+1 columnas, como la que por
ejemplo se forma al aumentar con el vector solución la matriz de coeficientes de un sistema lineal y devuelvan la
matriz que resulta de realizar:
1. Una eliminación de Gauss con pivoteo por columnas.
Ejemplo de entrada → salida:
   
7 19 8 32 19 7 8 32
A∗ = 23 11 12 23 →  0 18.9474 7.3684 4.4737 
4 22 3 14 0 0 −4.6667 −22.0833

2. Una eliminación de Gauss-Jordan.


Ejemplo de entrada → salida:
   
7 19 8 32 1 0 0 −1.6042
A∗ = 23 11 12 23 → 0 1 0 0.2827 
4 22 3 14 0 0 1 4.7321

3. Una eliminación de Gauss-Jordan con pivoteo completo.


Ejemplo de entrada → salida:
   
7 19 8 32 1 0 0 −1.6042
A∗ = 23 11 12 23 → 0 1 0 0.2827 
4 22 3 14 0 0 1 4.7321

Implementar una función que, utilizando la función de MatLab para calcularlos, calcule los autovalores de una
matriz, y use las propiedades correspondiente para calcular a partir de ellos la traza de la matriz.

1 Algoritmos para el Álgebra Lineal


Universidad Nacional del Sur - Departamento de Ingenierı́a Quı́mica - Métodos Teóricos en Ingenierı́a A - 2019

Implementar una función jacobi( A , b , x̄0 , tol , nmax ) que resuelve un sistema lineal utilizando el método de
Jacobi.
El método de Jacobi trabaja con iteraciones, contando en cada iteración con una solución candidata, representando
la solución candidata en la iteración k con el sı́mbolo x̄k .
A medida que una iteración sucede a la otra, la solución candidata se mejora multiplicándola por una matriz P y
restando el vector que resulta con otro vector c, o sea:

x(k) = c − P x(k−1)

En el caso del método de Jacobi, el vector c se define de la siguiente forma:

c = D−1 b

y la matriz P es:

P = D−1 (L + U )

D−1 representa la inversa de D, que puede calcularse utilizando la función inv().


Las matrices D, L y U representan las diferentes secciones de la matriz A, de forma que:

A=L+D+U

y L es triangular inferior estricta, U es triangular superior estricta y D es diagonal. Estas pueden obtenerse a
partir de A utilizando las funciones disponibles diag() tril() y triu().
Utilizar las funciones disponibles en MatLab, para hallar la matriz de iteración usando los productos de matrices.
La función debe recibir como argumentos:
1. La matriz de coeficientes, A y el vector de lados derechos, b, de un sistema lineal de la forma Ax = b.
2. Un vector candidato a ser solución inicial x0
3. Una tolerancia tol, que detenga el algoritmo en la iteración k si la máxima diferencia en valor absoluto entre
las componentes de la solución candidata actual y la solución candidata anterior es menor que la tolerancia.
Más formalmente: max(|xk − xk−1 |) < tol
4. Un número maximo de iteraciones nmax.
Para probar su algoritmo, considere que el siguiente ejemplo resulta convergente en dicho método, comenzando la
iteración desde (1,1):

   
−2 2 −3
A= b=
2 −4 0

1 Algoritmos para el Álgebra Lineal


Universidad Nacional del Sur - Departamento de Ingenierı́a Quı́mica - Métodos Teóricos en Ingenierı́a A - 2019

2 Resolución de problemas de Álgebra Lineal

Un rey indeciso se encuentra considerando la posibilidad de entrar en guerra con el reino vecino. Un dı́a, toma la
decisión de combatir y envı́a a un mensajero, que viaja a 45 [ km
dia ], con la declaración de guerra.

Tres dı́as después, el rey se arrepiente, por lo que envı́a a otro mensajero, que viaja a 58 [ km
dia ], con la intención de
alcanzar al primer mensajero y cancelar la orden.
¿En cuantos dı́as (d), y a qué distancia del reino, t ocurrirá el encuentro entre los mensajeros?
Implementar un algoritmo en MatLab que escriba la versión matricial del sistema de ecuaciones que resulta de
plantear las distancias recorridas por cada mensajero y la resuelva utilizando las funciones de MatLab.

Considere la siguiente reacción quı́mica:


αAl + βO2 → γAl2 O3
Balancearla implica encontrar valores compatibles para sus coeficientes estequiométricos, α,β y γ. Estos valores
deben cumplir con el hecho de que los átomos entre los reactivos y los productos sean la misma cantidad.
Este problema puede escribirse en forma de un sistema de ecuaciones lineales, cuyas variables son los coeficientes
estequiométricos, α,β y γ, y cuyas ecuaciones las relaciones que deben cumplir.
Escriba el sistema de ecuaciones relacionados con balancear esa reacción.
Discuta sobre las soluciones tiene el sistema. ¿Cuántas hay ?, ¿Cómo harı́a para resolver el problema en la vida
real? ¿Puede relacionarlo de alguna forma con el rango de la matriz aumentada?
Repita los dos incisos anteriores para la siguiente reacción αF G2 → βF 2G4

Implemente una función graficar sistema( A , b ) que reciba como argumento la matriz de coeficientes, A, y el
vector de términos independientes, b, de un sistema lineal de 2 x 2. La función debe graficar en forma de rectas
las ecuaciones, y marque el punto de intersección si lo hay.

Trabajando en una fábrica de gomas de borrar, le solicitan implementar una función para el cálculo del volumen
de goma necesario para fabricar una cierta goma a partir de las especificaciones del sector de diseño, que son los
valores d, l, h y w que se muestran en la figura.

h
d
l

Para realizar la tarea, decide apoyarse en el hecho de que la figura de la goma es un paralelepı́pedo:

2 Resolución de problemas de Álgebra Lineal


Universidad Nacional del Sur - Departamento de Ingenierı́a Quı́mica - Métodos Teóricos en Ingenierı́a A - 2019

Y que por lo tanto, su volumen, considerando los vectores a, b, y c de la figura, viene dado por el valor absoluto del
determinante de la siguiente matriz:
 
a1 b1 c1
a2 b2 c2 
a3 b3 c3

Para probar su función puede considerar que si l = 2 [mm], h = 3 [mm], d = 2 [mm], w = 5 [mm] entonces el volumen
requerido es de 30 [mm2 ]

Se sabe que el perı́metro de una cancha de futbol es 360 [m]. Al mismo tiempo, se sabe que tiene 40 metros más
de largo que de ancho.
Escriba un script que defina la matriz de coeficientes y el vector de términos independientes de un sistema de
ecuaciones que permita calcular el ancho y el largo de la cancha.
Luego, resuelva el sistema utilizando algunas de las funciones disponibles en MatLab, y grafique la cancha como
un rectángulo.

Las secciones cónicas son las curvas que resultan de la intersección de un plano con un cono en 3 dimensiones.

En el plano (x, y) tienen una ecuación de la forma:

x2 + Axy + By 2 + Cx + Dy + E = 0

Dado que la ecuación tiene 5 parámetros (A, B, C, D y E), por 5 puntos cualesquiera en el plano (x, y), pasa una
sola de estas curvas. Es posible hallar la ecuación de la sección cónica correspondiente escribiéndo la ecuación para
cada punto (reemplazando x2 , xy, y 2 , x e y por los valores que tienen en ese punto) y resolviendo el sistema lineal
resultante en busca de las 5 incognitas (A, B, C, D y E).
Implementar una función encontrar conica( p ) que permita encontrar la ecuación de la única sección cónica que
pasa por tres puntos escritos como una matriz p de 5 × 2.

2 Resolución de problemas de Álgebra Lineal


Universidad Nacional del Sur - Departamento de Ingenierı́a Quı́mica - Métodos Teóricos en Ingenierı́a A - 2019

• Formar la matriz de coeficientes y el vector de lados derechos del sistema lineal que se deberı́a resolver para
encontrar (A, B, C, D y E). Devolver los 5 valores en un vector.
• Graficar los puntos recibidos.
• Graficar una de las ramas de la curva entre 0 y 1. Para ello, genere valores de x espaciados regularmente y
encuentre el valor correspondiente sobre la curva. Para un dado x∗ , use el valor de y correspondiente a la
raiz mayor del polinomio:
(B)y 2 + (Ax∗ + D)y + (x∗ 2 + Cx∗ + E) = 0
Nota: MatLab graficará erroneamente los puntos fuera de la cónica, lo que se considerará correcto.

Ejemplo de entrada/salida:

x y
0.276 0.4984
0.6797 0.9597
0.6551 0.3404
0.1626 0.5853
0.119 0.2238

A B C D E
1.1604 -1.4356 -1.2533 1.0587 -0.0610

Se está analizando el presupuesto de su empresa. El producto se vende en dos formatos: barriles o bines, y se
subcontrata a una empresa para repartirlos.
La empresa que los reparte, solo informa el precio total de un mes de servicio. Sin embargo, para hacer cálculos
detallados a ud le gustarı́a saber el precio individual por cada barril o por cada bin.
Para ello, toma como ejemplo los dos últimos meses, para los que se sabe:
• Que la empresa repartió 20 barriles en el mes 1.
• Que la empresa repartió 48 bines en el mes 1.
• Que se pagó 238 a la empresa en el mes 1.
• Que la empresa repartió 53 barriles en el mes 2.
• Que la empresa repartió 31 bines en el mes 2.
• Que se pagó 400 a la empresa en el mes 2.
Si se quiere calcular los precios que cobra la empresa por repartir cada barril, y por cada bin, se puede plantear un
sistema lineal de ecuaciones.
Implementar un algoritmo que defina la matriz de coeficientes y el vector de términos independientes de este sistema
lineal, y lo resuelva utilizando las funciones de MatLab.

2 Resolución de problemas de Álgebra Lineal

Das könnte Ihnen auch gefallen