Está en la página 1de 3

function mecanicab()

syms QAB QAC QCD QBD QBC QCB fAB fAC fCD fBD fBC fCB f Jx
e=input('Ingrese el coeficiente de ruosidad e=');
ro=input('Ingrese la densidad de la sustancia ro=');
u=input('Ingrese la viscocidad de la sustancia u=');
tol=input('Ingrese la tolerancia deseada tol=');
a=input('Ingrese el valor de a=');
QA1=input('Ingrese el valor de QA=');
xi(1,1)=input('Ingrese el valor inicial de QAB=');
xi(2,1)=input('Ingrese el valor inicial de QAC=');
xi(3,1)=input('Ingrese el valor inicial de QCD=');
xi(4,1)=input('Ingrese el valor inicial de QBD=');
xi(5,1)=input('Ingrese el valor inicial de QBC=');
xi(6,1)=input('Ingrese el valor inicial de QCB=');
fx=zeros(6,1);
x=zeros(6,1);
QA=QA1;
QD=QA1;
f(1)=QA-QAB-QAC;
f(2)=QD-QCD-QBD;
f(3)=QAB-QBC-QBD;
f(4)=QCD-QAC-QBC;
f(5)=(11122729.68*(QAC^2))-(3519301.19*(QAB^2))-(2441523.04*(QBC^2));
f(6)=(355927349.63*(QBD^2))-(2441523.04*(QCB^2))-(3519301.19*(QCD^2));
Jx=[-1 -1 0 0 0 0;0 0 -1 -1 0 0;1 0 0 -1 -1 0;0 -1 1 0 -1 0;((2*QAB)*3519301.19) ((2*QAC)*11122729.68) 0 0 ((-2*QBC)*2441523.04) 0;0 0
((-2*QCD)*3519301.19) ((2*QBD)*355927349.63) 0 ((-2*QCB)*2441523.04)];
dif1=1;
dif2=1;
dif3=1;
dif4=1;
dif5=1;
dif6=1;
while (dif1||dif2||dif3||dif4||dif5||dif6)>tol
for i=1:6
QA=QA1;
QD=QA;
QAB=xi(1,1);
QAC=xi(2,1);
QCD=xi(3,1);
QBD=xi(4,1);
QBC=xi(5,1);
QCB=xi(6,1);
end

fx(i,1)=eval(f(i));

QA=QA1;
QD=QA;
QAB=xi(1,1);
QAC=xi(2,1);
QCD=xi(3,1);

QBD=xi(4,1);
QBC=xi(5,1);
QCB=xi(6,1);
J=eval(Jx);
Ji=pinv(J);
aux=Ji*fx;
aux2=a*aux;
x=xi-aux2;
dif1=x(1,1)-xi(1,1);
dif2=x(2,1)-xi(2,1);
dif3=x(3,1)-xi(3,1);
dif4=x(4,1)-xi(4,1);
dif5=x(5,1)-xi(5,1);
dif6=x(6,1)-xi(6,1);
for i=1:6
xi(i,1)=x(i,1);
end
end
QAB=xi(1,1);
QAC=xi(2,1);
QCD=xi(3,1);
QBD=xi(4,1);
QBC=xi(5,1);
QCB=xi(6,1);
display(QAB);
display(QAC);
display(QCD);
display(QBD);
display(QBC);
display(QCB);
end