Download ajuste.notice

Back to the list

Display this manual page in
$$$$ AJUSTE   NOTICE  CHAT      11/09/12    21:15:05     7124           
                                             DATE     11/09/12
 
    procedure AJUSTE                              Voir aussi : MOCA LEVM 
    ----------------    
    Q P = AJUSTE  TAB1 ; 
 
            TAB1.'X'             (TAB1.'PMIN') 
            TAB1.'F'             (TAB1.'PMAX') 
            TAB1.'K'             (TAB1.'PRECISION') 
            TAB1.'L'             (TAB1.'MXTER') 
           (TAB1.'POIDS')        (TAB1.'MESSAGES')   
                                 (TAB1.'IMPRESSION')  
            

 
     Description : 
     ------------- 
 
     Let F(x,y,z,..,p1,..pk) be a function explicited as follows: 
 
       F(x,p) = q1 * f1(x,y,z,.,p1,..,pk) 
              + q2 * f2(x,y,z,.,p1,..,pk) 
              + ... 
              + ql * fl(x,y,z,.,p1,..,pk) 
 
              + g(x,y,z,.,p1,..,pk) 
 
     qi (i=1,l) are linear parameters 
     pj (j=1,k) are non linear parameters 
 
     The procedure adjustes these different parameters so that the 
     function is best represented in a series of N couples 
 
             ( (x,y,z,...);Fdi (x,y,z,..) )  
 
     sets defined by the user. 
 
     In fact, the following function is minimized: 
 
           G = [ (poids(i) * ( F(x,p) - Fdi(x,y,z..) )**2 ] 
             summation with i=1,N 
 
     Data : 
     ------ 
       TAB1.'X'      : TABLE indexed by integers i=1,N who contains the 
                       LISTREEL(s) x,y,z,..... 
 
       TAB1.'F'      : values of F(x,y,z...) to adjust to (LISTREEL). 
 
       TAB1.'K'      : number of non linear parameters (ENTIER). 
 
       TAB1.'L'      : number of linear parameters (ENTIER). 
 
       TAB1.'MESSAGES' : level of information (default=0 : none) 
                       1 -> results, 2 -> iterations 
 
       TAB1.'IMPRESSION' : frequence of printing when MESSAGES=2 
                      (type ENTIER, default : every 20 iterations).  
 
 
       TAB1.'PMIN'  : minimum values of p  
                      (LISTREEL, necessary si K > 0). 
 
       TAB1.'PMAX'  : maximum values of p  
                      (LISTREEL, necessary if K > 0). 
 
       TAB1.'PRECISION' : (LISTREEL, utile si K>0) : 
                      precision of convergence criterium for the K non 
                      linear parameters (default=1.e-7) 
 
       TAB1.'MXTER' : maximum number of iterations  
                      (ENTIER, useful if K>1, default=100).  
 
       TAB1.'POIDS' : weight to be given for each given values of Fdi 
                      (LISTREEL, default=1.)     
 
       TAB1.'NOM_FCT': name of the procedure that computes fi(x,p) and 
                       g(x,p) (MOT, default='FCT'). 
 
       TAB1.'NOM_DERI': name of the procedure that computes the f_i and 
                       g derivatives with respect to p_j  
                       (MOT, default='DERI'). 
 
    Output : 
    -------- 
      Q and P are objects LISTREEL which contains values of 
      parameters  qi and pi. 
 
 
    Use : 
    ----- 
       Before using this AJUSTE procedure, the user must create 
       two procedures : 
 
       - procedure FCT : 
 
         Its goal is to calculate the function to adjust knowing the 
         values of the abscissas x,y,z,.., and this for a given set of 
         parameters p. In fact, the procedure is asked to calculate the 
         functions f1,f2,..,fl and the function g. 
 
         For each function fi, the procedure calculates as many values 
         as there are in x,y,z,.. The results must be presented as a 
         TABLE object.  
 
         As entry argument, FCT will receive the TABLE object which is 
         in TAB1.'X', as well as the set of current values of p, 
         presented in a LISTREEL object.  
 
         The output TABLE object must be presented in the following way:  
 
                    tbfonc.'F'. i  =  listreel of the fi values 
 
                    tbfonc.'G'     =  listreel the g value 
 
         The linear parameters qi dont have to be written down. 
 
 
       - procedure DERI : 
 
         It builds a TABLE object containing a list of LISTREEL objects 
         which are the values of functions f1,f2,..,fl and g derivated 
         with respect to the nonlinear parameters pj for each values of 
         x,y,z... and p.  
 
         As input, DERI will receive the TABLE object in TAB1.'X', 
         as well as the LISTREEL containing p. 
 
         As output, the TABLE object must be presented as follows: 
 
                 tbderi.'F'. j . i = LISTREEL of the values of dfi/dpj 
 
                 tbderi.'G'. j     = LISTREEL of the values of dg/dpj 
 
 
    Remarks : 
    --------- 
 
     - The abscissas being in a LISTREEL, the constants must be 
       expressed as a LISTREEL for algebraic operations.  
 
         ex: f1(x)=x+1  will be  f1(x)=x+(prog N*1); 
             N being the dimension of x. 
 
     - Be aware that sinusoidal functions use operands expressed in 
       degrees.  
 
     - Other names that default can be used for procedures, by 
       completing the 'NOM_FCT' and 'NOM_DERI' indexes. Be sure to 
       precede them by the 'MOT' operator. 
 
     - examples in:  ajuste1.dgibi  ajuste2.dgibi  identifi.dgibi 
 
 
 

 
 

© Cast3M 2003 - All rights reserved.
Disclaimer