Am I using the fminsearch correctly?
    4 views (last 30 days)
  
       Show older comments
    
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 Comments
Accepted Answer
  Walter Roberson
      
      
 on 27 Oct 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 Comments
  Walter Roberson
      
      
 on 27 Oct 2016
				reboiler_temp= fminsearch(@(t) bubble_point(x, A, B, C, P, bubble_components, t), T(1))
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
