Team:Paris/Modeling/More FP Algo

From 2008.igem.org

(Difference between revisions)
(New page: <html> <style type="text/css"> pre {font-size: 1.2em} span.keyword {color: #0000FF} span.comment {color: #228B22} span.string {color: #A020F0} span.untermstring {color: #B20000} span.sysc...)
(find_ƒP)
 
Line 16: Line 16:
== find_&#131;P ==
== find_&#131;P ==
-
 
+
<html><pre class="codeinput">
 +
<span class="keyword">function</span> optimal_parameters = find_FP(X_data, Y_data, initial_parameters)
 +
<span class="comment">% gives the 'best parameters' involved in f4, f5, f6, f7 or f8 
 +
</span><span class="comment">% with FlhDC = 0 or FliA = 0 by least-square optimisation
 +
</span>
 +
<span class="comment">% X_data = vector of given values of [FliA]i or [FlhDC]i (experimentally
 +
</span><span class="comment">% controled)
 +
</span><span class="comment">% Y_data = vector of experimentally measured values f4, f5, f6, f7 or f8
 +
</span><span class="comment">% corresponding of the X_data
 +
</span><span class="comment">% initial_parameters = values of the parameters proposed by the literature
 +
</span><span class="comment">%                      or simply guessed
 +
</span><span class="comment">%                    = [beta, K -> (K)/(coef), n]
 +
</span>
 +
    <span class="keyword">function</span> output = act_pProm(parameters, X_data)
 +
        <span class="keyword">for</span> k = 1:length(X_data)
 +
                output(k) = parameters(1)*hill(X_data(k), parameters(2), parameters(3));
 +
        <span class="keyword">end</span>
 +
    <span class="keyword">end</span>
 +
 +
options=optimset(<span class="string">'LevenbergMarquardt'</span>,<span class="string">'on'</span>,<span class="string">'TolX'</span>,1e-10,<span class="string">'MaxFunEvals'</span>,1e10,<span class="string">'TolFun'</span>,1e-10,<span class="string">'MaxIter'</span>,1e4);
 +
<span class="comment">% options for the function lsqcurvefit
 +
</span>
 +
optimal_parameters = lsqcurvefit( @(parameters, X_data) act_pProm(parameters, X_data),...
 +
    initial_parameters, X_data, Y_data, options );
 +
<span class="comment">% search for the fittest parameters, between 1/10 and 10 times the initial
 +
</span><span class="comment">% parameters
 +
</span>
 +
<span class="keyword">end</span>
 +
</pre></html>
</div>
</div>

Latest revision as of 03:46, 30 October 2008

find_ƒP

function optimal_parameters = find_FP(X_data, Y_data, initial_parameters)
% gives the 'best parameters' involved in f4, f5, f6, f7 or f8  
% with FlhDC = 0 or FliA = 0 by least-square optimisation
 
% X_data = vector of given values of [FliA]i or [FlhDC]i (experimentally
% controled)
% Y_data = vector of experimentally measured values f4, f5, f6, f7 or f8
% corresponding of the X_data
% initial_parameters = values of the parameters proposed by the literature
%                       or simply guessed
%                    = [beta, K -> (K)/(coef), n]
 
     function output = act_pProm(parameters, X_data)
         for k = 1:length(X_data)
                 output(k) = parameters(1)*hill(X_data(k), parameters(2), parameters(3));
         end
     end
 
options=optimset('LevenbergMarquardt','on','TolX',1e-10,'MaxFunEvals',1e10,'TolFun',1e-10,'MaxIter',1e4);
% options for the function lsqcurvefit
 
optimal_parameters = lsqcurvefit( @(parameters, X_data) act_pProm(parameters, X_data),...
     initial_parameters, X_data, Y_data, options );
% search for the fittest parameters, between 1/10 and 10 times the initial
% parameters
 
end