
ERROR EN SINTAXIS PROGRAMACIÓN EN MATLAB
Publicado por Daniela Guzmán (4 intervenciones) el 04/07/2015 05:30:37
Buenas Noches,
tengo elaborado este programa, corre y funciona correctamente, pues me da los valores esperados, pero al final me aparecen 2 errores, me podrían ayudar, gracias de antemano.
Tengo 1 script principal que es el siguiente:
Las funciones son las siguientes
El error que me aparece es el siguiente:
En qué está el error?
tengo elaborado este programa, corre y funciona correctamente, pues me da los valores esperados, pero al final me aparecen 2 errores, me podrían ayudar, gracias de antemano.
Tengo 1 script principal que es el siguiente:
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
%Calculo del flujo en un conducto a presión y el coeficiente de fricción
clear all;
clc;
close all;
disp('Cálculo del flujo en un conducto a presión');
disp('Cálculo del número de Reynolds Re para determinar el tipo de flujo');
D=input('Ingrese el diámetro de la tubería en metros D: ');
Q=input('Ingrese el caudal que circula en lps Q: ');
v=input('Ingrese la viscosidad cinemática del agua a la temperatura correspondiente en m2/seg v: ');
e=input('Ingrese el valor de la rugosidad absoluta de la tubería en m e: ');
disp('El área de la tubería es a: ')
a=pi*D^2*0.25
disp('La velocidad en la tubería es V: ')
V=Q/(a*1000)
disp('Cálculo del número de Reynolds')
RE=V*D/v
if RE<2000
disp('El flujo es Laminar')
disp('El coeficiente de fricción es f: ')
[f]=Blasius(RE,D);
elseif 2000<=RE & RE<4000
disp('El flujo está en transición')
disp('El coeficiente de fricción es f: ')
[f2]=swameejain(RE,e,D);
elseif 4000<=RE
disp('El flujo es turbulento')
disp('El coeficiente de fricción es f: ')
[f3]=NewtonRaphson(RE,e,D);
end
Las funciones son las siguientes
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
function [f] = Blasius(RE,D)
f=0.3164/(RE*(D^0.25))
end
function [f2] = Jain (RE,e,D)
f2=0.25/log(e/(3.71*D)+5.74/(RE*D^0.9))^2;
end
function [f3] = NewtonRaphson(RE,e,D)
i=1;
f=1;
es=0.0001;
while i<=100
Fx=1+2*sqrt(f)*log10(e/(3.71*D)+2.51/(RE*(f^0.5)));
DFx=(f^(-0.5))*log10(e/(3.71*D)+2.51/(RE*(f^0.5)))-2.51/(RE*f*log10(e/(3.71*D)+2.51/(RE*(f^0.5))));
f1=f-Fx/DFx;
ea=abs((f1-f)/f1);
if ea<=es
fprintf('\n la raiz que satisface la ecuacion es:%6.12f\n',f1);
fprintf('\n Numero de Iteraciones :%6.0f\n',i);
break
end
f=f1;
i=i+1;
end
end
El error que me aparece es el siguiente:
1
2
3
4
5
6
7
8
Error in NewtonRaphson (line 2)
i=1;
Output argument "f3" (and maybe others) not assigned during
call to "NewtonRaphson".
Error in Flujoycoeficiente (line 29)
[f3]=NewtonRaphson(RE,e,D);
En qué está el error?
Valora esta pregunta


0