Am I using the fminsearch correctly?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
A K
el 27 de Oct. de 2016
Comentada: Walter Roberson
el 27 de Oct. de 2016
I don't seem to be converging to the correct value whilst using fminsearch, does anyone know if this layout is correct?
function reboiler_temp=bubble_point(x,A,B,C,P,bubble_components,T);
% calculate the temperature for the individual components
%input_data=get_input_data();
temp=0;
bubble_temp=zeros(bubble_components);
for i=1:bubble_components
bubble_temp(i)=10^(A(i)-B(i)/(T+C(i)))*x(i);
temp=temp+bubble_temp(i);
end
temp
reboiler_temp=abs(temp-P)
return;
In the script i have this:
T(1)=input_data.simulation_data.reboiler_temp;
reboiler_temp= fminsearch(@bubble_point,T(1),[],x,A,B,C,P,bubble_components)
0 comentarios
Respuesta aceptada
Walter Roberson
el 27 de Oct. de 2016
In your line
reboiler_temp=sum(temp)-P;
what is temp ?
Why do you loop through calculating bubble_temp but then overwrite it with the result of your fminsearch?
Why do you create a function handle with parameter bubbletemp and then ignore the parameter? Why is that function handle relying upon the value of i that just happens to be "left over" from the for i loop?
2 comentarios
Walter Roberson
el 27 de Oct. de 2016
reboiler_temp= fminsearch(@(t) bubble_point(x, A, B, C, P, bubble_components, t), T(1))
Más respuestas (0)
Ver también
Categorías
Más información sobre Loops and Conditional Statements en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!