
Ayuda - Cómo configurar salida de datos de matlab?
Publicado por Javier (2 intervenciones) el 23/03/2014 17:05:25
Estoy empleando el siguiente código para obtener las raíces de un polinomio mediante el método newton raphson, pero los resultados los muestra en una forma muy extensa y no logro configurar matlab adecuadamente. El código es el siguiente, tambien adjunto imagen de los resultados

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
clc
clear all
close all
ex1=1;
ex2=1;
ex3=1;
m=3;
n=3;
i=1;
syms x1 x2 x3
w1=3*x1-cos(x2*x3)-0.5;
w2=x1.^2-81*(x2+0.1).^2+sin(x3)+1.06;
w3=exp(-x1*x2)+20*x3+(10*pi-3)/3;
mj=jacobian([w1,w2,w3], [x1, x2, x3]);
err=input('Digite la tolerancia de error');
a1=input('Digite el valor inicial de X1=');
a2=input('Digite el valor inicial de X2=');
a3=input('Digite el valor inicial de X3=');
ma1(1)=a1;
ma2(1)=a2;
ma3(1)=a3;
xant=[a1; a2; a3];
while ex1>=err & ex2>=err & ex3>=err
i=i+1;
f1=subs(w1,[x1 x2 x3],[a1 a2 a3]);
f2=subs(w2,[x1 x2 x3],[a1 a2 a3]);
f3=subs(w3,[x1 x2 x3],[a1 a2 a3]);
for a=1:m;
for b=1:n;
jac(a,b)=subs(mj(a,b),[x1 x2 x3],[a1 a2 a3]);
end
end
fant=[f1; f2; f3];
jacinv=inv(jac);
xnew=xant-jacinv*fant
a1=xnew(1,1);
a2=xnew(2,1);
a3=xnew(3,1);
xant=xnew;
ma1(i)=xnew(1,1);
ma2(i)=xnew(2,1);
ma3(i)=xnew(3,1);
ex1=abs(ma1(i)-ma1(i-1));
ex2=abs(ma2(i)-ma2(i-1));
ex3=abs(ma3(i)-ma3(i-1));
end
w=[ma1' ma2' ma3']

Valora esta pregunta


0