Código de Matlab - Seidel con Relajación

Imágen de perfil

Seidel con Relajacióngráfica de visualizaciones


Matlab

Actualizado el 25 de Febrero del 2018 por Natus (Publicado el 24 de Febrero del 2018)
436 visualizaciones desde el 24 de Febrero del 2018. Una media de 56 por semana
Seidel con Relajación

Requerimientos

Funciona para matrices 3x3
1
2
3
4
5
A=[4 3 0; 3 4 -1; 0 -1 4]; % Matriz de coeficientes
b=[24;30;-24];                 % Terminos independientes
w=1.25;                           % Lambda Relajador
tol=0.00001;                    %Tolerancia
it=20;                               % Numero de iteraciones donde debe de parar en caso la tolerancia no lo detenga

1.0

Actualizado el 26 de Febrero del 2018 (Publicado el 24 de Febrero del 2018)gráfica de visualizaciones de la versión: 1.0
437 visualizaciones desde el 24 de Febrero del 2018. Una media de 56 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

NAVI1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function [Navi] = GNavi(A,b,w,tol,it)
if nargin<5, tol=sqrt(eps);
end
n=size(A,1);
x=zeros(n,1);
r = b - A*x;
error = norm(r);
if error<tol, return, end
b = w * b;
M = w * tril(A,-1) + diag(diag(A));
N = -w * triu(A,1) + (1.0 - w) * diag(diag(A));
k=0;
iter=0;
while error>=tol && k<it
    x_1 = x;
    x = M \ ( N*x + b );
    error = norm(x - x_1)/norm(x);
    iter = iter+1;
    Navi=[iter x_1'];
    fprintf(' %d  %5.4f %5.4f %5.4f  \n',Navi);
end



Comentarios sobre la versión: 1.0 (0)


No hay comentarios
 

Comentar la versión: 1.0

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s4452