---
# System prepended metadata

title: Lista 2

---

Lista 2
===
Os enunciados dos 7 exercícios desta lista se encontram [aqui](https://drive.google.com/file/d/1D0is527FwY7tGWfpETkbaCTgUNGIFMIp/view).

Grupo
---

 João Vitor Prado
 Larissa Toledo
 Kaleb Alves

[toc]

## Exercício 1

#### Cramer:

Dado um sistema de equações lineares com mesmo número de incógnitas, tq:
![](https://i.imgur.com/gGrRImC.png)

Devemos montar uma matriz com estas, do tipo
$$
A = 
\begin{bmatrix}
a_{11} & a_{12} & \ldots & a_{1n}\\
a_{21} & a_{22} & \ldots & a_{nn}\\
\vdots & \vdots & \ddots & \vdots\\
a_{m1} & a_{m2} & \ldots & a_{mn}\\
\end{bmatrix}
$$

$$
X = 
\begin{bmatrix}
x1\\
x2\\
x3\\
\end{bmatrix}
$$

$$
B = 
\begin{bmatrix}
b1\\
b2\\
b3\\
\end{bmatrix}
$$

Resolver o determinante e validar que este é != 0;
A resolução do sistema é única e dada por (x1, x2, ... , xn) tq:
$$x_i = Det_i/Det_A$$, para qualquer i pertencente ao intervalo de 1 à n. 

#### Gauss

É o método do escalonamento. Este método consiste em aplicar sucessivas operações elementares em um sistema linear, transformando-o em um sist. triangular, de modo que este tenha as mesmas soluções que o original. As operações elementares são aquelas que aplicadas às linhas ou colunas não alteram o sistema (Podemos fazer trocas de linhas e colunas).

Tendo a matrix Ax=b
![](https://i.imgur.com/V6i6aRc.png)

Após realizar algumas operações:
![](https://i.imgur.com/vU33j1k.png)

Se o sistema estiver correto, já conseguiremos a partir disso o valor de $$x_3$$. Este método é considerado mais simples de ser resolvido em relação ao de Cramer (principalmente computacionalmente), mesmo aparentando ser mais complexo.

#### Método de decomposição A = LU:
 Este método permite resolver uma matriz de ordem quadrada (A), possibilitando achar o resultado de um sistema linear que forme a mesma. Esta fatoração dessa matriz quadrada (A) gera um sistema linear triangular inferior (L) e um sistema triangular superior (U).
 A decomposição pode ser feita de tal forma:
 ![](https://i.imgur.com/hITaVof.png)

O sistema pode ser reescrito de tal forma:
$$Ax=b -> (LU)x=b -> L(Ux)=b -> Ly=b e Ux=y$$

Isto significa que, ao invés de resolvermos o sistema original, podemos resolver o sistema triangular inferior Ly=b e, então, o sistema triangular superior Ux=y, o qual nos fornece a solução de Ax=b.

Obs: Este método é o mais trabalhoso dos 3.

## Exercício 2

Resolver o sistema:
![](https://i.imgur.com/IcXpzi0.png)



## Exercício 3
## Exercício 4
 O método não converge em Gauss, porém em Jacobi sim, abaixo a tabela:
 Método de Jacobi
 ![](https://i.imgur.com/JvDGCY4.png)


Método de Gauss:
![](https://i.imgur.com/gTQw9Iy.png)


Mesmo não convergindo em Gauss, este se mostra mais rápido na convergência.
## Exercício 5

```
A = [10 2 1; 1 5 1; 2 3 10]; 
I = eye(A);
t = 3;
b = [7;-8;6]; 
eps=10^(-2); 

x0 = [0.7;-1.6;0.6]; 
prep = 10;
x = x0;
it=0;
i=0; s=0;

for i=1:t
    for s=1:t
        AA(i,s) = A(i,s)/A(i,i);
    end;
    be(i) = b(i)/A(i, i);
end;


AB = AA;
bc = be;

while prep > eps & it<=100
    x = bc - ((AB-I)*x);
    prep = norm((AB*x)-bc);
    it = it+1;
end;
if(it>999) then
    printf("Não converge");
else
    printf("Interações %f", it);
    disp(x);
end;
```

Outra forma de resolver seria:
```
x1=0.7 
x2=-1.6
x3= 0.6 
itr = 1

while(1) then
    x1a=x1
    x2a=x2
    x3a=x3
    x1 = (1/10)*(7-(2*x2a)-x3a)
    x2 = (1/5)*(-8-x1a-x3a)
    x3=(1/10)*(6-(2*x1a)-(3*x2a))
    
    mprintf('iteração %d:\n%.3f\n', itr, x1)
    mprintf('%.3f\n', x2)
    mprintf('%.3f\n\n', x3)

    if int(x1*100) == int(x1a*100) & int(x2*100) == int(x2a*100) & int(x3*100) == int(x3a*100) then
        break
    end
    itr = itr + 1
end

mprintf('FINAL: \n%.2f\n', x1)
mprintf('%.2f\n', x2)
mprintf('%.2f\n', x3)
```
O que nos retorna uma lista de x1, x2, x3 por iteração.
## Exercício 6
Analisando as colunas e linhas, não há garantia de convergência.
```
x1=0
x2= 0 
x3= 0 
itr = 1

while(1) then
    x1a=x1
    x2a=x2
    x3a=x3
    x1 = (1/5)*(5-x2-x3)
    x2 = (1/4)*(6- (3*x1)-x3)
    x3 = (1/6)*(-(3*x1)-(3*x2))
    
    mprintf('iteração %d:\n%.3f\n', itr, x1)
    mprintf('%.3f\n', x2)
    mprintf('%.3f\n\n', x3)

    if int(x1*100) == int(x1a*100) & int(x2*100) == int(x2a*100) & int(x3*100) == int(x3a*100) then
        break
    end
    itr = itr + 1
end

mprintf('RESULTADO: \n%.2f\n', x1)
mprintf('%.2f\n', x2)
mprintf('%.2f\n', x3)
```
Após todas as interações, o sistema converge, e se comparado a outro método, como do Jacobi, este (de Gauss) se mostra mais eficiente.
## Exercício 7

As equações resultantes da substituição no polinômio de quarto grau é:
$$(0,-1): 0a + 0b + 0c + 0d + e = -1$$

$$(1,1): 1a + 1b + 1c + 1d + e = 1$$

$$(3,3): 81a + 27b + 9c + 3d + e = 3$$

$$(5,2): 625a + 125b + 25c + 5d + e = 2$$

$$(6,-2): 1296a +216b + 36c + 6d + e = -2$$

Para encontrar a,b,c,d,e, precisamos resolver o sistema linear da matriz abaixo, multiplicando por um vetor das componentes requisitadas.
$$
A = 
\begin{bmatrix}
1 & 0 & 0 & 0 & 0\\
1 & 1 & 1 & 1 & 1\\
1 & 3 & 9 & 27 & 81\\
1 & 5 & 25 & 125 & 625\\
1 & 6  & 36 & 216 & 1296
\end{bmatrix}
$$

```
A = [1, 0, 0, 0, 0; 1, 1, 1, 1, 1; 1, 3, 9, 27, 81; 1, 5, 25, 125, 625; 1, 6, 36, 216, 1296]; 
I = eye(A);
n = 5;
num = 0;
b = [-1, 1, 3, 2, -2]; 
eps=10^(-2);
x0 = [0;0;0;0;0]; 
p = 10;
x = x0;
x1 = x;
it=0;
i=0; s=0;
for i=1:n
  bc(i) = b(i)/A(i, i);
end;


while p > eps & it<=1000
  for i=1:n 
    num = 0;
    for j=1:n
      if j <> i then
        num = num + A(i,j)*x(j);
      end;
    end;
    x(i) = (1/A(i,i))*(b(i)-num);
  end;
  p = norm((A*x)-b');
  it = it+1;
end;
if(it>999) then
  printf("N converge");
  disp(x);
  abort;
else
  printf("Convergiu. Iter: %f", it);
  disp(x);
end;
```

Encontrando os valores das iterações, temos que a eq é:
$$
y(x) = -0.0246787x⁴ + 0.213254x³ - 0.8648614x² * 2.759642x -1
$$

O gráfico gerado foi:
![](https://i.imgur.com/vy2FORk.png)
