Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Codigo Gauss Jacobi em Matlab, Notas de estudo de Cálculo para Engenheiros

Apresenta o código de resolução do método numérico de gauss jacobi e seidel para resolução em matlab

Tipologia: Notas de estudo

2020

Compartilhado em 13/04/2020

julio-machado-3
julio-machado-3 🇧🇷

4 documentos

1 / 30

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
CÁLCULO NUMÉRICO
Profa. Dra. Yara de Souza Tadano [email protected]
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e

Pré-visualização parcial do texto

Baixe Codigo Gauss Jacobi em Matlab e outras Notas de estudo em PDF para Cálculo para Engenheiros, somente na Docsity!

CÁLCULO NUMÉRICO

Profa. Dra. Yara de Souza Tadano [email protected]

Aula 11

Matlab – Método de Gauss-Jacobi e Gauss-Seidel

Aula 7 – MATLAB - Zeros de funções MÉTODO DE GAUSS-JACOBI  Se os elementos da diagonal forem todos não-nulos , é possível isolar x 1 em E 1 ; x 2 em E 2 e x 3 em E 3

11 1 12 2 13 3 1 a b a x a x x    22 2 21 1 23 3 2 a b a x a x x    33 3 31 1 32 2 3 a b a x a x x    x 2 x 3 x 1 x 3 x 1 x 2

Aula 7 – MATLAB - Zeros de funções Método de Gauss-Jacobi  De forma equivalente, podemos escrever: 3 11 13 2 11 12 11 1 1 x a a x a a a b x    3 22 23 1 22 21 22 2 2 x a a x a a a b x    2 33 32 1 33 31 33 3 3 x a a x a a a b x    x 2 x 3 x 1 x 2 x 1 x 3

Aula 7 – MATLAB - Zeros de funções Método de Gauss-Jacobi  Para implementar, escreveremos:                                                                                             33 3 22 2 11 1 1 3 1 2 1 1 33 32 33 31 22 23 22 21 11 13 11 12 3 2 1 0 0 0 a b a b a b x x x a a a a a a a a a a a a x x x j j j j j j

Aula 7 – MATLAB - Zeros de funções Método de Gauss-Jacobi  E teremos:

X1 = D * X + I

Aula 7 – MATLAB - Zeros de funções FORMATOS DE DADOS DE SAÍDA

Aula 7 – MATLAB - Zeros de funções COMANDOS

Aula 7 – MATLAB - Zeros de funções MATRIZ  Uma matriz pode ser armazenada por:

A=[a 11 a 12 a 13 ; a 21 a 22 a 23 ; a 31 a 32 a 33

];

 Ou por:

A=[a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33

];

 Ou ainda por:

A=[[a 11 a 12 a 13 ]’[a 21 a 22 a 23 ]’[a 31 a 32 a 33

]’];

Aula 7 – MATLAB - Zeros de funções MATRIZ  Podemos acessar cada valor de uma matriz utilizando a estrutura:

A(i,j)  Por exemplo: A(1,1) = a 11

Aula 7 – MATLAB - Zeros de funções Algoritmo do método de Gauss-Jacobi ENTRADA: A (matriz n×n com a jj ≠ 0 , j = 1 , ..., n ), b , aproximação inicial x ( 0 ) , precisão tol , número máximo de iterações max. SAÍDA: solução aproximada x ( m ) = [ xj ( m ) ] ou mensagem de falha. Passo 1 : Para i = 1 : n (contador das linhas da matriz) Passo 2 : Para j = 1 : n (contador das colunas da matriz) Passo 3 : Se i = j D( i, j ) = 0 I ( i, 1 ) = B( i, 1 ) / A( i, i ); senão D( i, j ) = - A( i, j ) / A( i, i );

Aula 7 – MATLAB - Zeros de funções Algoritmo do método de Gauss-Jacobi Fim dos Passos 1, 2 e 3 Passo 4 : Enquanto k < nmax X1 = D * X + I; Passo 5 : Para i = 1: n ERx( i, 1 ) = abs((X1( i, 1 ) – X( i, 1 ))/ X1( i, 1 ))*100; mtol(i,1) = tol; Fim Passo 5 Passo 6: Se ERx < mtol SAÍDA (O vetor solução é: X1)

Aula 7 – MATLAB - Zeros de funções Cálculo Numérico^19 / Implementação clear, clc ord = input('Ordem da matriz:'); A = input('matriz dos coeficientes:'); X = input('Entre com o vetor X inicial:'); B = input('Entre com o vetor B:'); tol = input('Entre com a tolerância:'); max = input('Entre com o número máximo de iterações');

Aula 7 – MATLAB - Zeros de funções Cálculo Numérico^20 / Implementação k = 1; for i = 1:ord for j = 1:ord if i == j D(i,j) = 0; I(i,1) = B(i,1)/A(i,i); else D(i,j) =-A(i,j)/A(i,i); end end end