Matlab - Por favor necesito resolver esta ecuación no lineal urgente, el "solve" arroja un resultado malo

 
Vista:

Por favor necesito resolver esta ecuación no lineal urgente, el "solve" arroja un resultado malo

Publicado por Rodolfo Rojas M. (3 intervenciones) el 13/09/2012 19:29:53
Esta es la ecuación:

H1==H2+8*(1/(1.8*log10(((E1/D1)/3.7)^1.11+6.9/(4*Q/(pi*D1*1.004*10^-6))))^2)*L1*Q^2/(pi^2*D1^5*9.8)

Se ve super fea pero la resolví con la calculadora usando solve y me tira el resultado correcto que es 0.0011, pero con matlab no hay caso no he podido me tira un resultado incorrecto (-0.000876). Por favor ayuda necesito urgente saber como resolver esta ecuación con matlab.
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

Por favor necesito resolver esta ecuación no lineal urgente, el

Publicado por Rodolfo Rojas M. (3 intervenciones) el 13/09/2012 20:18:25
Disculpa, estos son los datos y sus valores:

>> syms Q
>>
>> L1=4500;
>> D1=4*10^-2;
>> E1=0.4*10^-3;
>> H1=250;
>> H2=150;

La variable es Q; me corrijo el valor encontrado con la calculadora es 0.0008285. Con matlab no logro resolverla.

Agradecería tu ayuda, Saludos.
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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Por favor necesito resolver esta ecuación no lineal urgente, el

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 13/09/2012 22:41:36
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
clear all
%http://www.lawebdelprogramador.com/foros/Matlab/1349185-Por_favor_necesito_resolver_esta_ecuacion_no_lineal_urgente%2c_el_%22solve%22_arroja_un_resultado_malo.html
L1=4500;
D1=4*10^(-2);
E1=0.4*10^(-3);
H1=250;
H2=150;
syms Q;
fun=H1-(H2+8*(1/(1.8*log10(((E1/D1)/3.7)^1.11+6.9/(4*Q/(pi*D1*1.004*10^-6))))^2)*L1*Q^2/(pi^2*D1^5*9.8));
%pretty(fun)
Q=solve(fun)
f=inline(fun);
imagenMatlab=f(Q)
imagenCalculadora=f(0.0011)
q=linspace(-0.002,0.002,100);
figure(gcf)
plot(q,f(q))
text(double(Q),double(f(Q)),'*- Matlab')
 
text(0.0011,f(0.0011),'o Calculadora')
hold on
plot(q,zeros(1,length(q)),'r')
t=axis;
plot([0 0],[t(3) t(4)],'r')
display('Como la funcion es una parabola y cruza eje X dos veces')
display('el primer cruce lo hace en el segundo cuadrante');
display('el segundo cruce lo hace en el primer cuadrante');
display('por lo tanto tienes dos raices, uno positivo y otro negativo');
display('la calculadora halla la raiz positiva')
display('Matlab halla la raiz negativa con la funcion solve')
display('Pero con la funcion fzero de Matlab hallamos los 2 raices')
 
b='100 - (29514790517935282585600000*x^2*log(10)^2)/(26309221195639329*log(65776738890907749/(302231454903657293676544*x) + 3251814938179753/2305843009213693952)^2)';
format long
raiz_negativa_con_Matlab=fzero(b,[-0.001 0])
raiz_positiva_con_Matlab=fzero(b,[0 0.001])
text(raiz_positiva_con_Matlab,f(raiz_positiva_con_Matlab),'*+ Matlab')
hold off



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
>> dsolve2
 
Q =
 
-0.00087623148212959325139144009381258
 
 
imagenMatlab =
 
-0.000000000000008443482716549040807151970389789
 
 
imagenCalculadora =
 
 -73.924895102073435
 
Como la funcion es una parabola y cruza eje X dos veces
el primer cruce lo hace en el segundo cuadrante
el segundo cruce lo hace en el primer cuadrante
por lo tanto tienes dos raices, uno positivo y otro negativo
la calculadora halla la raiz positiva
Matlab halla la raiz negativa con la funcion solve
Pero con la funcion fzero de Matlab hallamos los 2 raices
 
raiz_negativa_con_Matlab =
 
    -8.762314821295931e-04
 
 
raiz_positiva_con_Matlab =
 
     8.289743292721008e-04




Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programacion Matlab
[email protected]

http://matlabcaballero.blogspot.com
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

Por favor necesito resolver esta ecuación no lineal urgente, el

Publicado por Rodolfo Rojas M. (3 intervenciones) el 17/09/2012 20:50:09
Gracias man.
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