Matlab - ERROR EN SINTAXIS PROGRAMACIÓN EN MATLAB

 
Vista:
sin imagen de perfil

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:

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
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

ERROR EN SINTAXIS PROGRAMACIÓN EN MATLAB

Publicado por Daniela Patricia (4 intervenciones) el 06/07/2015 22:21:53
Muchas gracias por la pronta ayuda, me sirvió muchísimo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar