Ignore:
Timestamp:
01/28/11 14:37:06 (9 years ago)
Author:
paulbarber
Message:

To compile in TRI2, moved declarations to top of relevant block.
Added empty GCI_marquardt.
Added matrix array routinnes.
Added Global and SPA files.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/projects/slim-curve/src/main/c/EcfSingle.c

    r7387 r7606  
    490490 
    491491/* This functions does the whole job */ 
     492 
     493int GCI_marquardt(float x[], float y[], int ndata, 
     494                                  noise_type noise, float sig[], 
     495                                  float param[], int paramfree[], int nparam, 
     496                                  restrain_type restrain, 
     497                                  void (*fitfunc)(float, float [], float *, float [], int), 
     498                                  float *fitted, float *residuals, 
     499                                  float **covar, float **alpha, float *chisq, 
     500                                  float chisq_delta, float chisq_percent, float **erraxes) 
     501{ 
     502        // Empty fn to allow compile in TRI2 
     503} 
     504 
    492505#define do_frees \ 
    493506        if (fnvals) free(fnvals);\ 
     
    907920        /* OK, now we've got our (possibly convolved) data, we can do the 
    908921           rest almost exactly as above. */ 
    909  
     922        { 
    910923        float alpha_weight[256]; //TODO establish maximum # bins and use elsewhere (#define) 
    911924        float beta_weight[256]; 
    912  
    913         *chisq = 0.0f; 
    914925        int q; 
    915926        float weight; 
    916         switch (noise) { 
     927 
     928        int i_free; 
     929        int j_free; 
     930        float dot_product; 
     931        float beta_sum; 
     932        float dy_dparam_k_i; 
     933        float *alpha_weight_ptr; 
     934        float *beta_weight_ptr; 
     935 
     936        *chisq = 0.0f; 
     937 
     938                switch (noise) { 
    917939            case NOISE_CONST: 
    918940            { 
     
    10091031                } 
    10101032                if (*chisq <= 0.0f) { 
    1011                     *chisq = 1.0e308f; // don't let chisq=0 through yfit being all -ve 
     1033                    *chisq = 1.0e38f; // don't let chisq=0 through yfit being all -ve 
    10121034                } 
    10131035                break; 
     
    10241046            return 0; 
    10251047        } 
    1026  
    1027         int i_free; 
    1028         int j_free; 
    1029         float dot_product; 
    1030         float beta_sum; 
    1031         float dy_dparam_k_i; 
    1032         float *alpha_weight_ptr; 
    1033         float *beta_weight_ptr; 
    10341048 
    10351049        i_free = 0; 
     
    10721086            } 
    10731087        } // i loop 
    1074  
     1088        } 
    10751089        return 0; 
    10761090} 
Note: See TracChangeset for help on using the changeset viewer.