Diff for /imach/src/imach.c between versions 1.20 and 1.21

version 1.20, 2002/02/20 17:22:01 version 1.21, 2002/02/21 18:42:24
Line 67 Line 67
 #define AGEBASE 40  #define AGEBASE 40
   
   
   int erreur; /* Error number */
 int nvar;  int nvar;
 int cptcovn, cptcovage=0, cptcoveff=0,cptcov;  int cptcovn, cptcovage=0, cptcoveff=0,cptcov;
 int npar=NPARMAX;  int npar=NPARMAX;
Line 901  void mlikeli(FILE *ficres,double p[], in Line 902  void mlikeli(FILE *ficres,double p[], in
   powell(p,xi,npar,ftol,&iter,&fret,func);    powell(p,xi,npar,ftol,&iter,&fret,func);
   
    printf("\n#Number of iterations = %d, -2 Log likelihood = %.12f\n",iter,func(p));     printf("\n#Number of iterations = %d, -2 Log likelihood = %.12f\n",iter,func(p));
   fprintf(ficres,"#Number of iterations = %d, -2 Log likelihood = %.12f ",iter,func(p));    fprintf(ficres,"#Number of iterations = %d, -2 Log likelihood = %.12f \n",iter,func(p));
   
 }  }
   
Line 2632  ij=1; Line 2633  ij=1;
   }    }
         
   fclose(ficgp);    fclose(ficgp);
     /* end gnuplot */
         
 chdir(path);  chdir(path);
         
Line 2824  fclose(fichtm); Line 2826  fclose(fichtm);
   
   fclose(ficrespij);    fclose(ficrespij);
   
     if(stepm == 1) {
   /*---------- Forecasting ------------------*/    /*---------- Forecasting ------------------*/
   calagedate=(anproj1+mproj1/12.+jproj1/365.-dateintmean)*YEARM;    calagedate=(anproj1+mproj1/12.+jproj1/365.-dateintmean)*YEARM;
   
     /*printf("calage= %f", calagedate);*/
    
   prevalence(agemin, agemax, s, agev, nlstate, imx,Tvar,nbcode, ncodemax,mint,anint,dateprev1,dateprev2, calagedate);    prevalence(agemin, agemax, s, agev, nlstate, imx,Tvar,nbcode, ncodemax,mint,anint,dateprev1,dateprev2, calagedate);
   
   
Line 2910  fclose(fichtm); Line 2915  fclose(fichtm);
       fprintf(ficresf,"# StartingAge FinalAge");        fprintf(ficresf,"# StartingAge FinalAge");
       for(j=1; j<=nlstate+ndeath;j++) fprintf(ficresf," P.%d",j);        for(j=1; j<=nlstate+ndeath;j++) fprintf(ficresf," P.%d",j);
       if (popforecast==1)  fprintf(ficresf," [Population]");        if (popforecast==1)  fprintf(ficresf," [Population]");
       
       for (cpt=0; cpt<=5;cpt++) {        for (cpt=0; cpt<4;cpt++) {
         fprintf(ficresf,"\n");          fprintf(ficresf,"\n");
   fprintf(ficresf,"\n# Forecasting at date %.lf/%.lf/%.lf ",jproj1,mproj1,anproj1+cpt);            fprintf(ficresf,"\n# Forecasting at date %.lf/%.lf/%.lf ",jproj1,mproj1,anproj1+cpt);  
       for (agedeb=(fage-((int)calagedate %12/12.)); agedeb>=(bage-((int)calagedate %12)/12.); agedeb--){ /* If stepm=6 months */  
           for (agedeb=(fage-((int)calagedate %12/12.)); agedeb>=(bage-((int)calagedate %12)/12.); agedeb--){ /* If stepm=6 months */
         nhstepm=(int) rint((agelim-agedeb)*YEARM/stepm);          nhstepm=(int) rint((agelim-agedeb)*YEARM/stepm);
         nhstepm = nhstepm/hstepm;          nhstepm = nhstepm/hstepm;
         /*printf("agedeb=%.lf stepm=%d hstepm=%d nhstepm=%d \n",agedeb,stepm,hstepm,nhstepm);*/          /*printf("agedeb=%.lf stepm=%d hstepm=%d nhstepm=%d \n",agedeb,stepm,hstepm,nhstepm);*/
Line 2922  fclose(fichtm); Line 2928  fclose(fichtm);
         p3mat=ma3x(1,nlstate+ndeath,1, nlstate+ndeath, 0,nhstepm);          p3mat=ma3x(1,nlstate+ndeath,1, nlstate+ndeath, 0,nhstepm);
         oldm=oldms;savm=savms;          oldm=oldms;savm=savms;
         hpxij(p3mat,nhstepm,agedeb,hstepm,p,nlstate,stepm,oldm,savm, k);            hpxij(p3mat,nhstepm,agedeb,hstepm,p,nlstate,stepm,oldm,savm, k);  
                         
         for (h=0; h<=nhstepm; h++){          for (h=0; h<=nhstepm; h++){
           if (h==(int) (calagedate+YEARM*cpt)) {            if (h==(int) (calagedate+YEARM*cpt)) {
             fprintf(ficresf,"\n %.f ",agedeb+h*hstepm/YEARM*stepm);              fprintf(ficresf,"\n %.f ",agedeb+h*hstepm/YEARM*stepm);
           }            }
           for(j=1; j<=nlstate+ndeath;j++) {            for(j=1; j<=nlstate+ndeath;j++) {
             kk1=0.;kk2=0;              kk1=0.;kk2=0;
             for(i=1; i<=nlstate;i++) {                      for(i=1; i<=nlstate;i++) {        
Line 2961  fclose(fichtm); Line 2967  fclose(fichtm);
   free_imatrix(s,1,maxwav+1,1,n);    free_imatrix(s,1,maxwav+1,1,n);
   free_vector(weight,1,n);    free_vector(weight,1,n);
   fclose(ficresf);    fclose(ficresf);
     }/* End forecasting */
     else{
       erreur=108;
       printf("Error %d!! You can only forecast the prevalences if the optimization\n  has been performed with stepm = 1 (month) instead of %d\n", erreur, stepm);
     }
   
   /*---------- Health expectancies and variances ------------*/    /*---------- Health expectancies and variances ------------*/
   
   strcpy(filerest,"t");    strcpy(filerest,"t");
Line 3098  strcpy(fileresvpl,"vpl"); Line 3110  strcpy(fileresvpl,"vpl");
     
   free_ma3x(param,1,nlstate,1, nlstate+ndeath-1,1,ncovmodel);    free_ma3x(param,1,nlstate,1, nlstate+ndeath-1,1,ncovmodel);
   
   printf("End of Imach\n");    if(erreur >0)
       printf("End of Imach with error %d\n",erreur);
     else   printf("End of Imach\n");
   /*  gettimeofday(&end_time, (struct timezone*)0);*/  /* after time */    /*  gettimeofday(&end_time, (struct timezone*)0);*/  /* after time */
     
   /* printf("Total time was %d Sec. %d uSec.\n", end_time.tv_sec -start_time.tv_sec, end_time.tv_usec -start_time.tv_usec);*/    /* printf("Total time was %d Sec. %d uSec.\n", end_time.tv_sec -start_time.tv_sec, end_time.tv_usec -start_time.tv_usec);*/

Removed from v.1.20  
changed lines
  Added in v.1.21


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>