Diff for /imach/src/ChangeLog between versions 1.33 and 1.72

version 1.33, 2010/04/30 18:19:29 version 1.72, 2024/07/02 09:16:53
Line 1 Line 1
 2010-04-29  brouard  <brouard@ined.fr>  2024-07-02  Nicolas Brouard  <brouard@ined.fr>
   
         * imach.c (Module): Checking covariates for more complex models          * imach.c (Module): Trying compiling on Linux with clang (instead
         than V1+V2. A lot of change to be done. Unstable.          of gcc which is too slow) and lot of warnings suppressed
   
 2010-04-26  brouard  <brouard@ined.fr>  2024-06-28  Nicolas Brouard  <brouard@ined.fr>
   
         * imach.c (Module): merging some libgsl code. Fixing computation          * imach.c (Module): s6 errors with age*age (harmless).
         of likelione (using inter/intrapolation if mle = 0) in order to  
         get same likelihood as if mle=1.  2024-05-12  Nicolas Brouard   <brouard@ined.fr>
         Some cleaning of code and comments added.  
           * imach.c Version 0.99s5 In fact, the covariance of total life
 2009-10-29  brouard  <brouard@ined.fr>          expectancy e.. with a partial life expectancy e.j is high,
           therefore the complete matrix of variance covariance has to be
         * imach.c (Module): Now imach stops if date of birth, at least year of birth, is not given. Some cleaning of the code.          included in the formula of the standard error of the proportion of
           total life expectancy spent in a specific state:
 2006-06-30  Brouard Nicolas  <brouard@localhost>          var(X/Y)=mu_x^2/mu_y^2*(sigma_x^2/mu_x^2 -2
           sigma_xy/mu_x/mu_y+sigma^2/mu_y^2).  Also an error with mle=-3
         * imach.c (Module): Clarifications on computing e.j          made the program core dump. It is fixed in this version.
   
 2006-04-28  Brouard Nicolas  <brouard@localhost>  2024-04-30  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): Yes the sum of survivors was wrong since          * (Module): In version 0.99s4, we incorporated the calculation of
         imach-114 because nhstepm was no more computed in the age          the std error of the proportion of total life expectancy spent in
         loop. Now we define nhstepma in the age loop.          a specific state Var(e.j/e..) using the formula of Var(X/Y)
         (Module): In order to speed up (in case of numerous covariates) we          depending only of the variances of X and Y and expectancies.
         compute health expectancies (without variances) in a first step  
         and then all the health expectancies with variances or standard  2024-04-24  Nicolas Brouard   <brouard@ined.fr>
         deviation (needs data from the Hessian matrices) which slows the  
         computation.          * (Module): This version comes late after having tested
         In the future we should be able to stop the program is only health          successfully the praxis C version of Buckhardt.  But Buckardt's
         expectancies and graph are needed without standard deviations.          version was difficult to read and Gegenfurtner's version had a few
           typos which made its results less reliable than Buckhardt's
 2006-04-04  LIEVRE Agnes  <lievre@PC_00697.ined.fr>          results.  The most important work consisted in retyping the Brent
           original PRAXIS program written in Algol W (published with errors,
         * imach.iss (Module):          ommitting the transposition of matrix V before its QR reduction
           from Golub. I used the recent "awe" compiler from Gkynn Webster.
         * imach.c (Module): bugs in evsi + population file added in htm output file          The awe library had errors, for example in arc tangent function
           which have been fixed.
 2006-03-22  LIEVRE Agnes  <lievre@PC_00697.ined.fr>  
           The main objective was to get identical results with the three
         * imach.c (Module):          versions: (1) Algol W, (2) Buckhardt'C version as well (3)
           Gegenfürtner C versions on the various test functions published by
 2006-03-20  Brouard Nicolas  <brouard@localhost>          Brent in 1973 in Algol W.
   
         * imach.c (Module): <title> changed, corresponds to .htm file          Also, in order to compare them, the random function had to produce
         name. <head> headers where missing.          the same sequence for the 3 softwares. The random function used in
           imach corresponds to original Brent's random function written in
         * Makefile (Module): 0.98g          Algol W.  Other point, in Algol W, the arrays of dimension n are
           'normal' mathematical arrays starting from 1 to n. But this is a
         * imach.c (Module): Weights can have a decimal point as for          real issue in C where, by default, arrays are starting from 0 to
         English (a comma might work with a correct LC_NUMERIC environment,          n-1. In Buckhardt, as well as in Gegenfürtner C code, it can be
         otherwise the weight is truncated).          seen that authors while trying to mimick original Brent Algol W
         Modification of warning when the covariates values are not 0 or          code are hesitating by changing either a loop originally from 1 to
         1.          n in a loop from 0 to n-1, or keeping Brent's loop from 1 to n and
         Version 0.98g          shifting the index from original X(I) in Algol W to x[i-1] in C.
           But as IMaCh is using, since the beginning, the Numerical Recipes
 2006-03-16  LIEVRE Agnes  <lievre@PC_00697.ined.fr>          functions vector or matrix, I changed Geggenfürtner code to mimick
           the original Algol W arrays. Thus the X(I) is translated in C as
         * imach.c (Module): Comments concerning covariates added          x[i] which minimizes the errors. The Golub QR algorithm was
           published in Algol with overflow errors which were reproduced in
         * noreg-setup.iss (Module): Version 0.98f          Brent's Algol W code. Buckhardt code fixed these errors which are
           much more problematic in C than in Algol W.  Thus Buckhardt code
         * Makefile (Module): Version 0.98f make _windows=1 imachcyg-setup          seems very safe, but i haven't chosen it for IMaCh because the C
           style is horrible and almost unreadable compared to Gegenfürtner
         * imach.c (Module): refinements in the computation of lli if          CO code which is very close to Brent's original. Also what makes
         status=-2 in order to have more reliable computation if stepm is          Buckhardt code more difficult to read is, instead of passing the
         not 1 month. Version 0.98f          minimum of parameters in the functions calls, as it is in Algol
           Brent's code or Gegenfürtner's code, the list of parameters is
 2006-03-15  Brouard Nicolas  <brouard@localhost>          high. For example, the flin function LONG REAL PROCEDURE FLIN
           (LONG REAL VALUE L) has only one parameter in Algol W, the
         * imach.c (Module): Bug if status = -2, the loglikelihood was          Gegenfürtner flin function had two parameters: static double
         computed as likelihood omitting the logarithm. Version O.98e          flin(l, j) double l; { int i; double tflin[N];} but Buckhardt
           function has 14 parameters which makes the code unreadable and
 2006-03-14  Brouard Nicolas  <brouard@localhost>          useless. Gegenfürtner used a lot of static variables or functions
           which I tried to minimize. Also in Gegefürtner, array dimensions
         * imach.c (Module): varevsij Comments added explaining the second          were fixed to N. In my adaptation the flin is static double
         table of variances if popbased=1 .          flin(double l, int j) and the parameter used are global variables.
         (Module): Covariances of eij, ekl added, graphs fixed, new html link.  
         (Module): Function pstamp added  2023-06-14  Nicolas Brouard   <brouard@ined.fr>
         (Module): Version 0.98d  
           * imach.c (Module): Testing if conjugate gradient could be quicker
 2006-03-06  Brouard Nicolas  <brouard@localhost>          when lot of variables POWELLORIGINCONJUGATE
   
         * imach.c (Module): Variance-covariance wrong links and  2023-05-23  Nicolas Brouard   <brouard@ined.fr>
         varian-covariance of ej. is needed (Saito).  
           * imach.c (Module): Fixed PROB_r 
 2006-02-27  Brouard Nicolas  <brouard@localhost>  
   2023-05-22  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): One freematrix added in mlikeli!  
           * imach.c (Module): In the ILK....txt file, the number of columns
 2006-02-26  Brouard Nicolas  <brouard@localhost>          before the covariates values is dependent of the number of states (16+nlstate): 0.99r46
   
         * imach.c (Module): Some improvements in processing parameter  2023-05-08  Nicolas Brouard   <brouard@ined.fr>
         filename with strsep.  
           *  (Module): Error V0 when result:. and model 1+age+V1: fixed
 2006-02-24  Brouard Nicolas  <brouard@localhost>  
   2023-04-29  Nicolas Brouard  <brouard@ined.fr>
         * imach.c (Module): Memory leaks checks with valgrind and:  
         datafile was not closed, some imatrix were not freed and on matrix          * imach.c (Module): Inverting the model equation and fixingg bugs
         allocation too.          in the drawings
           "1+age+V7*V4*age+V6*V4*age+V7*V3*age+V6*V3*age+V6*V2*age+V7*age+V6*age+V4*age+V3*age+V2*age+V7*V4+V6*V4+V7*V3+V6*V3+V7*V2+V6*V2+V7+V6+V4+V3+V2\000\0003+V2"
 2006-02-09  LIEVRE Agnes  <lievre@PC_00697.ined.fr>  
   2023-04-24  Nicolas Brouard  <brouard@ined.fr>
         * strsep.c (Module): Inclusion because not in mingw32!!!  
           * imach.c (Module): some bugs in printinggnuplot 
         * setup.iss.in (Module): IMACHSETUPVERSION added  
   2022-09-19  Nicolas Brouard   <brouard@ined.fr>
         * noreg-setup.iss (Module): added to cvs tree  
           * imach.c (Module): Version 0.99r42 needed a newer version of
         * Makefile (Module): IMACHSETUPVERSION added          Gnuplot. But newer version 0.99r43 should run with the Gnuplot
           version 5.0 or 5.1 distributed with IMaCh.
 2006-01-30  BROUARD Nicolas  <brouard@localhost>  
   2022-09-18  Nicolas Brouard   <brouard@ined.fr>
         * Makefile (Module, Module): Latest Makefile  
           * imach.c (Module): Fixing when a state in the data is 0 or higher
         * imach.c (Module): Back to gnuplot.exe instead of wgnuplot.exe          than lstate+ndeath. Fixing the plot of contribution to Likelihood.
   
 2006-01-27  BROUARD Nicolas  <brouard@localhost>  2022-09-16  Nicolas Brouard   <brouard@ined.fr>
   
         * noreg-setup.iss (Module): ADDED          * imach.c (Module): 0.99r41 Was an error when product of timevarying and fixed. Using FixedV[of name] now. Thank you  Feinuo
   
 2006-01-24  BROUARD Nicolas  <brouard@localhost>  2022-09-14  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): Comments (lines starting with a #) are allowed in data.          * imach.c (Module): Fixing names of variables in T_ (thanks to Feinuo)
   
 2005-10-25  Nicolas Brouard  <brouard@dhcp171.recherche.ined.fr>  2022-09-14  Nicolas Brouard   <brouard@ined.fr>
   
         * Makefile (Module): Added Imach98.pmsp and howto crete a dmg          * imach.c (Module): Version 0.99r39 with colored dummy covariates
           (fixed or time varying), using new last columns of
         * createdmg.sh (Module): Creates a dmg disk for MaC OS/X          ILK_parameter.txt file.
   
 2005-09-30    <lievre@PC_00595>  2022-09-11  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): sump fixed, loop imx fixed, and simplifications.          * imach.c (Module): Adding timevarying products of any kinds,
         (Module): If the status is missing at the last wave but we know          should work before shifting cotvar from ncovcol+nqv columns in
         that the person is alive, then we can code his/her status as -2          order to have a correspondance between the column of cotvar and
         (instead of missing=-1 in earlier versions) and his/her          the id of column.
         contributions to the likelihood is 1 - Prob of dying from last          (Module): Some cleaning and adding covariates in ILK.txt
         health status (= 1-p13= p11+p12 in the easiest case of somebody in  
         the healthy state at last known wave). Version is 0.98  2022-09-09  Nicolas Brouard   <brouard@ined.fr>
   
 2004-05-20  Brouard Nicolas  <brouard@localhost>          * imach.c (Module): Many improvements for fixing products of fixed
           timevarying as well as fixed * fixed, and test with quantitative
         * imach.c (Repository):          covariate.
         Agnes added a direct estimation of mortality (without the need of  
         computing period prevalence and differential mortality). Thus here  2022-09-04  Nicolas Brouard   <brouard@ined.fr>
         is version 0.97a which has been distributed to some people at  
         REVES 16 in Brugge using an Inno setup.exe for PCs. Estimates of          * imach.c (Module): Now the easy runs i.e. without result or
         mortality using covariates is not done today. Estimating direct          model=1+age only did not work. The defautl combination should be 1
         mortality is a very different process because it doesn't need          and not 0 because everything hasn't been tranformed yet.
         interpolation because it is easy to get the lx from the force of  
         the mortality mux in the simplest case as for a Gompertz (log mux  2022-09-02  Nicolas Brouard   <brouard@ined.fr>
         = a + b*x . But we have been able to incorporate the new code  
         within former imach program (0.96d) without deteriorating too much          * imach.c: Version 0.99r35 because it outputs same results with
         the understanding of the program.          1+age+V1+V1*age for females and 1+age for females only
           (education=1 noweight)
 2003-06-25    <brouard@BROUARD>  
   2022-08-31  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): On windows (cygwin) function asctime_r doesn't  
         exist so I changed back to asctime which exists.          * imach.c (Module): Some improvments in fichtm and many verifications 0.99r34
         (Module): Version 0.96b  
   2022-08-21  Nicolas Brouard   <brouard@ined.fr>
 2003-06-24    <brouard@BROUARD>  
           * imach.c (Module): Version 0.99r33 A lot of changes in
         * imach.c (Module): Some bugs corrected for windows. Also, when          reassigning covariates: my first idea was that people will always
         mle=-1 a template is output in file "or"mypar.txt with the design          use the first covariate V1 into the model but in fact they are
         of the covariance matrix to be input.          producing data with many covariates and can use an equation model
           with some of the covariate; it means that in a model V2+V3 instead
 2003-06-25  Brouard Nicolas  <brouard@homebrou>          of codtabm(k,Tvaraff[j]) which calculates for combination k, for
           three covariates (V1, V2, V3) the value of Tvaraff[j], but in fact
         * imach.c (Repository): Duplicated warning errors corrected.          the equation model is restricted to two variables only (V2, V3)
         (Repository): Elapsed time after each iteration is now output. It          and the combination for V2 should be codtabm(k,1) instead of
         helps to forecast when convergence will be reached. Elapsed time          (codtabm(k,2), and the code should be
         is stamped in powell.  We created a new html file for the graphs          codtabm(k,TnsdVar[Tvaraff[j]]. Many many changes have been
         concerning matrix of covariance. It has extension -cov.htm.          made. All of these should be simplified once a day like we did in
           hpxij() for example by using precov[nres] which is computed in
 2003-06-23  Brouard Nicolas  <brouard@homebrou>          decoderesult for each nres of each resultline. Loop should be done
           on the equation model globally by distinguishing only product with
         * imach.c (Repository): Create a sub-directory where all the secondary files are. Only imach, htm, gp and r(imach) are on the main directory. Correct time and other things.          age (which are changing with age) and no more on type of
           covariates, single dummies, single covariates. 
 2003-06-18  Brouard Nicolas  <brouard@homebrou>  
   2022-08-06  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Repository): Suppress abusive calls to append to file html (solution was to put fichtm as a global variable. Version 0.96  
           *  imach.c (Module): Version of imach using partly decoderesult to rebuild xpxij function
 2003-06-17  Brouard Nicolas  <brouard@homebrou>  
   2022-08-03  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Repository): Check when date of death was earlier that          *  imach.c (Module): Many errors in graphs fixed with Vn*age covariates.
         current date of interview. It may happen when the death was just  
         prior to the death. In this case, dh was negative and likelihood  2022-07-25  Brouard Nicolas  <brouard@brouard.name>
         was wrong (infinity). We still send an "Error" but patch by  
         assuming that the date of death was just one stepm after the          * imach.c (Module): Error cptcovn instead of nsd in bmij (was
         interview.          coredumped, revealed by Feiuno, thank you.
         (Repository): Because some people have very long ID (first column)  
         we changed int to long in num[] and we added a new lvector for  2022-07-23  Nicolas Brouard   <brouard@ined.fr>
         memory allocation. But we also truncated to 8 characters (left  
         truncation)          * r29 W and not sqrt(Wald)
   
         (Repository): No more line truncation errors.  2022-07-22  Nicolas Brouard   <brouard@ined.fr>
   
 2003-06-14  Brouard Nicolas  <brouard@homebrou>          *  imach.c (Module): Output of Wald test in the htm file and not only in the log. 
   
         * imach.c (Repository): Add of a routine likelione (likelihood  2022-06-02  Brouard Nicolas  <brouard@brouard.name>
         only once) which prints on a text file  
         (ilk) the contributions to the likelihood for each          * imach.c (Module): Adding the Wald tests from the log to the main
         individual/wave.          htm for better display of the maximum likelihood estimators.
   
 2003-06-13  Brouard Nicolas  <brouard@homebrou>  2022-05-30  Brouard Nicolas  <brouard@brouard.name>
         * imach.c (Repository): Replace "freqsummary" at a correct  
         place. It differs from routine "prevalence" which may be called          * imach.c: With products of covariates (age or dummies or
         many times. Probs is memory consuming and must be used with          quantitatives), estimates of parameters were good but when
         parcimony.          estimating variances the positions of newly created covariates
           were wrongly assigned and results were wrong. Thank to Feinua_Sun!
 2003-06-17    <brouard@BROUARD>  
   2022-05-24  Nicolas Brouard   <brouard@ined.fr>
         * timeval.h (Module): Added included file to make use of  
         gettimeofday working on win32 with cygwin.          * imach.c (Module): Some attempts to find a bug of wrong estimates
           of confidencce intervals with product in the equation modelC
 2003-05-16  Brouard Nicolas  <brouard@brouard>  
         * imach.c (Module): Insert of a warning if the delay between two  2022-05-15  Nicolas Brouard   <brouard@ined.fr>
         waves is negative.  
           * imach.c (Module):  Some minor improvements
         * imach.c (Module):  
   2022-04-13  Brouard Nicolas  <brouard@brouard.name>
 2003-05-03    <brouard@BROUARD>  
           * imach.c (Module): Adding link to text data files
         * imach.c: Some cleaning  
   2022-04-11  Nicolas Brouard   <brouard@ined.fr>
 2003-03-28    <brouard@BROUARD>  
         * imach.c (Module): In version up to 0.92 likelihood was computed          * imach.c (Module): Error in rewriting the 'r' file with yearsfproj or yearsbproj fixed
         as if date of death was unknown. Death was treated as any other  
         health state: the date of the interview describes the actual state  2022-04-05  Brouard Nicolas  <brouard@ined.fr>
         and not the date of a change in health state. The former idea was  
         to consider that at each interview the state was recorded          * imach.c (Module): Fixed covariates (dummy or quantitative)
         (healthy, disable or death) and IMaCh was corrected; but when we          with missing values have never been allowed but are ERRORS and
         introduced the exact date of death then we should have modified          program quits. Standard deviations of fixed covariates were
         the contribution of an exact death to the likelihood. This new          wrongly computed. Mean and standard deviations of time varying
         contribution is smaller and very dependent of the step unit          covariates are still not computed.
         stepm. It is no more the probability to die between last interview  
         and month of death but the probability to survive from last  2022-03-17  Brouard Nicolas  <brouard@ined.fr>
         interview up to one month before death multiplied by the  
         probability to die within a month. Thanks to Chris          * 99r25 Improvements in fixing discrepancies between covariates
         Jackson for correcting this bug.  Former versions increased          missing in result line but in model. 
         mortality artificially. The bad side is that we add another loop  
   *Wed Mar 31 2021  Nicolas Brouard   <brouard@ined.fr>
           * imach.c (Module): Still bugs in the result loop. Thank to Holly Benett
         which slows down the processing. The difference can be up to 10%  
   *2021-03-08  Nicolas Brouard   <brouard@ined.fr>
   
         lower mortality.          * ./ (Module): Fixed bug on result:
   
   *2021-02-20  Nicolas Brouard   <brouard@ined.fr>
   
           * imach.c (Module): Fix bug on quitting after result lines!
           (Module): Version 0.99r21
 2002-05-30    <brouard@BROUARD>  
   2021-02-12  Nicolas Brouard   <brouard@ined.fr>
   
           * imach.c (Module): The use of a Windows BOM (huge) file is now an error
   
   
         *  2021-02-11  Nicolas  Brouard   <brouard@ined.fr>
   
           *  (Module): imach.c Someone entered 'results:' instead of 'result:'. Now it is an error which is printed.
   
   2020-02-22  Brouard Nicolas  <brouard@ined.fr>
   
         * imach.c (Module): Add correlation matrix of one-step          *  (Module): imach.c Update mle=-3 (for computing Life expectancy
           and life table from the data without any state)
   
         probabilities and covariance matrix  2019-05-20  Brouard Nicolas  <brouard@ined.fr>
   
           * version.h: Summary: version 0.99.r19
   
           * imach.c: Summary: Projection syntax simplified
           We can now start projections, forward or backward, from the mean date
           of inteviews up to or down to a number of years of projection:
           prevforecast=1 yearsfproj=15.3 mobil_average=0
           or
           prevforecast=1 starting-proj-date=1/1/2007 final-proj-date=12/31/2017 mobil_average=0
           or
           prevbackcast=1 yearsbproj=12.3 mobil_average=1
           or
           prevbackcast=1 starting-back-date=1/10/1999 final-back-date=1/1/1985 mobil_average=1
   
   2019-05-18  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: doxygen tex bug
   
   2019-05-16  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: There was some wrong lines added
   
   2019-05-09  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile, imach.c: *** empty log message ***
   
           * ChangeLog: Summary: C=
   
           * imach.c: Summary: Some updates
   
           * imach.c: Summary: Before ncovmax
   
           * version.h: *** empty log message ***
   
           * imach.c: Summary: 0.99r18 unlimited number of individuals
           The number n which was limited to 20,000 cases is now unlimited, from firstobs to lastobs. If the number is too for the virtual memory, probably an error will occur.
   
   2018-12-13  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Bug for young ages (<-30) will be in r17
   
   2018-12-05  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile: Summary: 0.99r16
   
   2018-05-02  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Some bugs fixed
   
   2018-05-02  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:  Summary: Bug for young ages (<-30) will be in r17
   
   2018-05-02  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Some bugs fixed
   
   2018-05-01  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:
           Summary: Bug fixed by providing frequencies only for non missing covariates
   
   2018-04-27  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: some minor bugs
   
   2018-04-21  Brouard Nicolas  <brouard@ined.fr>
   
           * README.txt: *** empty log message ***
   
           * imach.c: Summary: Some bugs fixed, valgrind tested
   
   2018-04-20  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile, README.txt, setup.iss: Summary: imach 0.99r16
   
           * imach.c:
           Summary: Computing mean and stdeviation of fixed quantitative variables
   
   2018-04-19  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Some minor bugs fixed
   
           * version.h: *** empty log message ***
   
   2018-02-27  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
           * imach.c: Summary: Adding second argument for quitting
   
   2018-02-21  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile, README.txt, imach.c: Summary: 0.99r15
           New Makefile with recent VirtualBox 5.26. Bug in sqrt negatve in imach.c
   
   2017-07-20  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: temporary working
   
   2017-07-19  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Bug for mobil_average=0 and prevforecast fixed(?)
   
   2017-07-17  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: BOM files can be read now
   
   2017-06-30  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Graphs improvements
   
           * imach.c: Summary: Saito's color
   
   2017-06-29  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Version 0.99r14
   
   2017-06-27  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: More documentation on projections
   
           * imach.c: Summary: Color of backprojection changed from 6 to 5(yellow)
   
           * imach.c: Summary: Some bug with rint
   
   2017-05-24  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
   2017-05-23  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Code into subroutine, cleanings
   
   2017-05-18  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:
           Summary: backprojection and confidence intervals of backprevalence
   
   2017-05-13  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: temporary save for backprojection
   
           * imach.c: Summary: Version 0.99r13 (improvements and bugs fixed)
   
   2017-04-26  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: imach 0.99r13 Some bugs fixed
   
           * imach.c: Summary: Labels in graphs
   
   2017-04-24  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: to save
   
   2017-04-18  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
   2017-04-05  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Bug in E_ as well as in T_ fixed nres-1 vs k1-1
   
   2017-04-04  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Gnuplot indexations fixed (humm)
   
           * imach.c:
           Summary: Some errors to warnings only if date of death is unknown but status is death we could set to pi3
   
   2017-04-03  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Version 0.99r12
           Some cleanings, conformed with updated documentation.
   
   2017-03-30  Brouard Nicolas  <brouard@ined.fr>
   
           * version.h: *** empty log message ***
   
           * version.h: Summary:0.99r11
   
   2017-03-29  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Temp
   
   2017-03-27  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Temporary
   
   2017-03-08  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: IMaCh version 0.99r10 bugs in gnuplot fixed
   
           * imach.c: Summary: Fixing data parameter line
   
   2016-12-15  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: 0.99 in progress
   
   2016-09-15  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
           * imach.c: Summary: not working
   
   2016-09-08  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: continue
   
   2016-09-07  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Starting values from frequencies
   
           * imach.c: *** empty log message ***
   
   2016-09-02  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
   2016-08-30  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Fixing a lots
   
   2016-08-29  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: gnuplot problem in Back projection to fix
   
           * imach.c: Summary: Better
   
   2016-08-26  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:
           Summary: Improvement in Powell output in order to copy and paste
   
           * imach.c: Summary: Starting tests of 0.99
   
           * imach.c: Summary: to valgrind
   
   2016-08-25  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
   2016-08-23  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
           * imach.c: Summary: not working
   
   2016-08-22  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: not working
   
           * imach.c: Summary: Not working
   
   2016-07-23  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Completing for func too
   
   2016-07-22  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Fixing some arrays, still debugging
   
   2016-07-21  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:
           Summary: 0.99 working (more or less) for Asian Workshop on multitate methods
   
   2016-07-12  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: temp
   
           * imach.c: Summary: saving but not running
   
   2016-07-01  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Fixes
   
   2016-02-19  Brouard Nicolas  <brouard@ined.fr>
   
           * imach-0.98r.c: Summary: Kind of 0.98r? series, starting with r7
   
           * setup.iss, Makefile, version.h: *** empty log message ***
   
           * imach.c: Summary: temporary
   
   2016-02-17  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Probably last 0.98 stable version 0.98r6
   
   2016-02-16  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: minor bug
   
           * imach.c: Summary: 0.99r2
   
   2016-02-15  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
   2016-02-12  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: 0.99 Back projections
   
   2015-12-23  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Experimental backcast
   
   2015-12-18  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: 0.98r4 Warning and status=-2
   
           Version 0.98r4 is now:
            - displaying an error when status is -1, date of interview unknown and date of death known;
            - permitting a status -2 when the vital status is unknown at a known date of right truncation.
           Older changes concerning s=-2, dating from 2005 have been supersed.
   
           * Makefile: *** empty log message ***
   
   2015-12-16  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile: *** empty log message ***
   
           * imach.c: Summary: 0.98r4 working
   
           * Makefile: Summary: linuxrpm added
   
           * Makefile: *** empty log message ***
   
           * imach.c: Summary: temporary not working
   
   2015-12-11  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: 0.98r4
   
   2015-12-08  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile: *** empty log message ***
   
   2015-11-21  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile:
           Summary: VBoxManage change from execute --image to run --exe and --wait-exit doesn't exist any more
   
           * imach.c: Summary: minor typo
   
           * imach.c: Summary: 0.98r3 with some graph of projected cross-sectional
   
           Author: Nicolas Brouard
   
   2015-11-18  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Start working on projected prevalences
   
   2015-11-17  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Adding ftolpl parameter
           Author: N Brouard
   
           We had difficulties to get smoothed confidence intervals. It was due
           to the period prevalence which wasn't computed accurately. The inner
           parameter ftolpl is now an outer parameter of the .imach parameter
           file after estepm. If ftolpl is small 1.e-4 and estepm too,
           computation are long.
   
           * version.h: *** empty log message ***
   
           * imach.c: Summary: temporary
   
   2015-10-27  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile: *** empty log message ***
   
           * setup.iss.in: Summary: some new subdirs
   
           * imach.c: *** empty log message ***
   
           * setup.iss.in:
           Summary: Adding gnuplot 5.1 with bin and etc for pango fonts
   
   2015-10-24  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: *** empty log message ***
   
   2015-10-23  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:
           Summary: 0.98r3 some clarification for graphs on likelihood contributions
   
   2015-10-01  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c: Summary: Some new graphs of contribution to likelihood
   
   2015-09-30  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile:
           Summary: Version read from version.h, itself read with cmake
   
           * imach.c: Summary: looking at better estimation of the hessian
   
           Also a better criteria for convergence to the period prevalence And
           therefore adding the number of years needed to converge. (The
           prevalence in any alive state shold sum to one
   
           * Makefile: *** empty log message ***
   
   2015-09-22  Brouard Nicolas  <brouard@ined.fr>
   
           * imach.c:
           Summary: Adding some overall graph on contribution to likelihood. Might change
   
   2015-09-15  Brouard Nicolas  <brouard@ined.fr>
   
           * Makefile: *** empty log message ***
   
           * imach.c: Summary: 0.98r0
   
           - Some new graphs like survival functions
           - Some bugs fixed like model=1+age+V2.
   
           * ChangeLog, Makefile: Summary: 0.98r0
   
           * CMakeLists.txt: Summary: Some tests for setup.iss
   
   2015-09-15  Nicolas J Brouard   <nbrouard@tugault.ined.fr>
   
           *  (Module): 0.98r0 Some new graphs, some bugs fixed: model=1+age+V2. etc
   
   2015-08-18  Nicolas J Brouard   <nbrouard@tugault.local>
   
           *  (Module): Adding error when the covariance matrix doesn't contain the exact number of lines required by the model line.
   
   2015-08-03  Nicolas J Brouard   <nbrouard@tugault.ined.fr>
   
           *  (Module): Changing Variance of one-step probabilities into Standard deviation (thanks to Yao-Chi Shih)
   
   2014-12-16  Nicolas J Brouard   <nbrouard@tugault.local>
   
           * imach.c (Module): Merging 1.61 to 1.162
   
   2014-09-02  Nicolas J Brouard   <nbrouard@njbrouard.ined.fr>
   
           * prevlim.h (Module): 
   
   2014-01-26  Nicolas J Brouard   <nbrouard@ledermann-2.local>
   
           * imach.c (Module): Trying to merge old staffs together while being at Tokyo. Not tested...
           (Module): Version 0.98nR Running ok, but output format still only works for three covariates.
   
   2010-04-29  brouard  <brouard@ined.fr>
   
           * imach.c (Module): Checking covariates for more complex models
           than V1+V2. A lot of change to be done. Unstable.
   
   2010-04-26  brouard  <brouard@ined.fr>
   
           * imach.c (Module): merging some libgsl code. Fixing computation
           of likelione (using inter/intrapolation if mle = 0) in order to
           get same likelihood as if mle=1.
           Some cleaning of code and comments added.
   
   2009-10-29  brouard  <brouard@ined.fr>
   
           * imach.c (Module): Now imach stops if date of birth, at least year of birth, is not given. Some cleaning of the code.
   
   2006-06-30  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): Clarifications on computing e.j
   
   2006-04-28  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): Yes the sum of survivors was wrong since
           imach-114 because nhstepm was no more computed in the age
           loop. Now we define nhstepma in the age loop.
           (Module): In order to speed up (in case of numerous covariates) we
           compute health expectancies (without variances) in a first step
           and then all the health expectancies with variances or standard
           deviation (needs data from the Hessian matrices) which slows the
           computation.
           In the future we should be able to stop the program is only health
           expectancies and graph are needed without standard deviations.
   
   2006-04-04  LIEVRE Agnes  <lievre@PC_00697.ined.fr>
   
           * imach.iss (Module): 
   
           * imach.c (Module): bugs in evsi + population file added in htm output file
   
   2006-03-22  LIEVRE Agnes  <lievre@PC_00697.ined.fr>
   
           * imach.c (Module): 
   
   2006-03-20  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): <title> changed, corresponds to .htm file
           name. <head> headers where missing.
   
           * Makefile (Module): 0.98g
   
           * imach.c (Module): Weights can have a decimal point as for
           English (a comma might work with a correct LC_NUMERIC environment,
           otherwise the weight is truncated).
           Modification of warning when the covariates values are not 0 or
           1. 
           Version 0.98g
   
   2006-03-16  LIEVRE Agnes  <lievre@PC_00697.ined.fr>
   
           * imach.c (Module): Comments concerning covariates added
   
           * noreg-setup.iss (Module): Version 0.98f
   
           * Makefile (Module): Version 0.98f make _windows=1 imachcyg-setup
   
           * imach.c (Module): refinements in the computation of lli if
           status=-2 in order to have more reliable computation if stepm is
           not 1 month. Version 0.98f
   
   2006-03-15  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): Bug if status = -2, the loglikelihood was
           computed as likelihood omitting the logarithm. Version O.98e
   
   2006-03-14  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): varevsij Comments added explaining the second
           table of variances if popbased=1 .
           (Module): Covariances of eij, ekl added, graphs fixed, new html link.
           (Module): Function pstamp added
           (Module): Version 0.98d 
   
   2006-03-06  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): Variance-covariance wrong links and
           varian-covariance of ej. is needed (Saito).
   
   2006-02-27  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): One freematrix added in mlikeli!
   
   2006-02-26  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): Some improvements in processing parameter
           filename with strsep.
   
   2006-02-24  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Module): Memory leaks checks with valgrind and:
           datafile was not closed, some imatrix were not freed and on matrix
           allocation too.
   
   2006-02-09  LIEVRE Agnes  <lievre@PC_00697.ined.fr>
   
           * strsep.c (Module): Inclusion because not in mingw32!!!
   
           * setup.iss.in (Module): IMACHSETUPVERSION added
   
           * noreg-setup.iss (Module): added to cvs tree
   
           * Makefile (Module): IMACHSETUPVERSION added
   
   2006-01-30  BROUARD Nicolas  <brouard@localhost>
   
           * Makefile (Module, Module): Latest Makefile
   
           * imach.c (Module): Back to gnuplot.exe instead of wgnuplot.exe
   
   2006-01-27  BROUARD Nicolas  <brouard@localhost>
   
           * noreg-setup.iss (Module): ADDED
   
   2006-01-24  BROUARD Nicolas  <brouard@localhost>
   
           * imach.c (Module): Comments (lines starting with a #) are allowed in data.
   
   2005-10-25  Nicolas Brouard  <brouard@dhcp171.recherche.ined.fr>
   
           * Makefile (Module): Added Imach98.pmsp and howto crete a dmg
   
           * createdmg.sh (Module): Creates a dmg disk for MaC OS/X
   
   2005-09-30    <lievre@PC_00595>
   
           * imach.c (Module): sump fixed, loop imx fixed, and simplifications.
           (Module): If the status is missing at the last wave but we know
           that the person is alive, then we can code his/her status as -2
           (instead of missing=-1 in earlier versions) and his/her
           contributions to the likelihood is 1 - Prob of dying from last
           health status (= 1-p13= p11+p12 in the easiest case of somebody in
           the healthy state at last known wave). Version is 0.98 
   
   2004-05-20  Brouard Nicolas  <brouard@localhost>
   
           * imach.c (Repository): 
           Agnes added a direct estimation of mortality (without the need of
           computing period prevalence and differential mortality). Thus here
           is version 0.97a which has been distributed to some people at
           REVES 16 in Brugge using an Inno setup.exe for PCs. Estimates of
           mortality using covariates is not done today. Estimating direct
           mortality is a very different process because it doesn't need
           interpolation because it is easy to get the lx from the force of
           the mortality mux in the simplest case as for a Gompertz (log mux
           = a + b*x . But we have been able to incorporate the new code
           within former imach program (0.96d) without deteriorating too much
           the understanding of the program. 
   
   2003-06-25    <brouard@BROUARD>
   
           * imach.c (Module): On windows (cygwin) function asctime_r doesn't
           exist so I changed back to asctime which exists.
           (Module): Version 0.96b
   
   2003-06-24    <brouard@BROUARD>
   
           * imach.c (Module): Some bugs corrected for windows. Also, when
           mle=-1 a template is output in file "or"mypar.txt with the design
           of the covariance matrix to be input.
   
   2003-06-25  Brouard Nicolas  <brouard@homebrou>
   
           * imach.c (Repository): Duplicated warning errors corrected.
           (Repository): Elapsed time after each iteration is now output. It
           helps to forecast when convergence will be reached. Elapsed time
           is stamped in powell.  We created a new html file for the graphs
           concerning matrix of covariance. It has extension -cov.htm.
   
   2003-06-23  Brouard Nicolas  <brouard@homebrou>
   
           * imach.c (Repository): Create a sub-directory where all the secondary files are. Only imach, htm, gp and r(imach) are on the main directory. Correct time and other things.
   
   2003-06-18  Brouard Nicolas  <brouard@homebrou>
   
           * imach.c (Repository): Suppress abusive calls to append to file html (solution was to put fichtm as a global variable. Version 0.96
   
   2003-06-17  Brouard Nicolas  <brouard@homebrou>
   
   
           * imach.c (Repository): Check when date of death was earlier that
           current date of interview. It may happen when the death was just
           prior to the death. In this case, dh was negative and likelihood
           was wrong (infinity). We still send an "Error" but patch by
           assuming that the date of death was just one stepm after the
           interview.
           (Repository): Because some people have very long ID (first column)
           we changed int to long in num[] and we added a new lvector for
           memory allocation. But we also truncated to 8 characters (left
           truncation)
   
           (Repository): No more line truncation errors.
   
   2003-06-14  Brouard Nicolas  <brouard@homebrou>
   
           * imach.c (Repository): Add of a routine likelione (likelihood
           only once) which prints on a text file
           (ilk) the contributions to the likelihood for each
           individual/wave.
   
   2003-06-13  Brouard Nicolas  <brouard@homebrou>
           * imach.c (Repository): Replace "freqsummary" at a correct
           place. It differs from routine "prevalence" which may be called
           many times. Probs is memory consuming and must be used with
           parcimony.
   
   2003-06-17    <brouard@BROUARD>
   
           * timeval.h (Module): Added included file to make use of
           gettimeofday working on win32 with cygwin.
   
   2003-05-16  Brouard Nicolas  <brouard@brouard>
           * imach.c (Module): Insert of a warning if the delay between two
           waves is negative.
   
           * imach.c (Module): 
   
   2003-05-03    <brouard@BROUARD>
   
           * imach.c: Some cleaning
   
   2003-03-28    <brouard@BROUARD>
           * imach.c (Module): In version up to 0.92 likelihood was computed
           as if date of death was unknown. Death was treated as any other
           health state: the date of the interview describes the actual state
           and not the date of a change in health state. The former idea was
           to consider that at each interview the state was recorded
           (healthy, disable or death) and IMaCh was corrected; but when we
           introduced the exact date of death then we should have modified
           the contribution of an exact death to the likelihood. This new
           contribution is smaller and very dependent of the step unit
           stepm. It is no more the probability to die between last interview
           and month of death but the probability to survive from last
           interview up to one month before death multiplied by the
           probability to die within a month. Thanks to Chris
           Jackson for correcting this bug.  Former versions increased
           mortality artificially. The bad side is that we add another loop
           which slows down the processing. The difference can be up to 10%
           lower mortality.
   
   2002-05-30    <brouard@BROUARD>
   
           * imach.c (Module): Add correlation matrix of one-step
           probabilities and covariance matrix
   

Removed from v.1.33  
changed lines
  Added in v.1.72


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