Diff for /imach/src/ChangeLog between versions 1.37 and 1.71

version 1.37, 2015/09/15 17:33:54 version 1.71, 2024/06/28 08:00:16
Line 1 Line 1
 2015-09-15  Nicolas J Brouard   <nbrouard@tugault.ined.fr>  2024-06-28  Nicolas Brouard  <brouard@brouardtwo>
   
         *  (Module): 0.98r0 Some new graphs, some bugs fixed: model=1+age+V2. etc          * imach.c (Module): s6 errors with age*age (harmless).
   
 2015-08-18  Nicolas J Brouard   <nbrouard@tugault.local>  2024-05-12  Nicolas Brouard   <brouard@ined.fr>
   
         *  (Module): Adding error when the covariance matrix doesn't contain the exact number of lines required by the model line.          * imach.c Version 0.99s5 In fact, the covariance of total life
           expectancy e.. with a partial life expectancy e.j is high,
 2015-08-03  Nicolas J Brouard   <nbrouard@tugault.ined.fr>          therefore the complete matrix of variance covariance has to be
           included in the formula of the standard error of the proportion of
         *  (Module): Changing Variance of one-step probabilities into Standard deviation (thanks to Yao-Chi Shih)          total life expectancy spent in a specific state:
           var(X/Y)=mu_x^2/mu_y^2*(sigma_x^2/mu_x^2 -2
 2014-12-16  Nicolas J Brouard   <nbrouard@tugault.local>          sigma_xy/mu_x/mu_y+sigma^2/mu_y^2).  Also an error with mle=-3
           made the program core dump. It is fixed in this version.
         * imach.c (Module): Merging 1.61 to 1.162  
   2024-04-30  Nicolas Brouard   <brouard@ined.fr>
 2014-09-02  Nicolas J Brouard   <nbrouard@njbrouard.ined.fr>  
           * (Module): In version 0.99s4, we incorporated the calculation of
         * prevlim.h (Module):          the std error of the proportion of total life expectancy spent in
           a specific state Var(e.j/e..) using the formula of Var(X/Y)
 2014-01-26  Nicolas J Brouard   <nbrouard@ledermann-2.local>          depending only of the variances of X and Y and expectancies.
   
         * imach.c (Module): Trying to merge old staffs together while being at Tokyo. Not tested...  2024-04-24  Nicolas Brouard   <brouard@ined.fr>
         (Module): Version 0.98nR Running ok, but output format still only works for three covariates.  
           * (Module): This version comes late after having tested
 2010-04-29  brouard  <brouard@ined.fr>          successfully the praxis C version of Buckhardt.  But Buckardt's
           version was difficult to read and Gegenfurtner's version had a few
         * imach.c (Module): Checking covariates for more complex models          typos which made its results less reliable than Buckhardt's
         than V1+V2. A lot of change to be done. Unstable.          results.  The most important work consisted in retyping the Brent
           original PRAXIS program written in Algol W (published with errors,
 2010-04-26  brouard  <brouard@ined.fr>          ommitting the transposition of matrix V before its QR reduction
           from Golub. I used the recent "awe" compiler from Gkynn Webster.
         * imach.c (Module): merging some libgsl code. Fixing computation          The awe library had errors, for example in arc tangent function
         of likelione (using inter/intrapolation if mle = 0) in order to          which have been fixed.
         get same likelihood as if mle=1.  
         Some cleaning of code and comments added.          The main objective was to get identical results with the three
           versions: (1) Algol W, (2) Buckhardt'C version as well (3)
 2009-10-29  brouard  <brouard@ined.fr>          Gegenfürtner C versions on the various test functions published by
           Brent in 1973 in Algol W.
         * imach.c (Module): Now imach stops if date of birth, at least year of birth, is not given. Some cleaning of the code.  
           Also, in order to compare them, the random function had to produce
 2006-06-30  Brouard Nicolas  <brouard@localhost>          the same sequence for the 3 softwares. The random function used in
           imach corresponds to original Brent's random function written in
         * imach.c (Module): Clarifications on computing e.j          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
 2006-04-28  Brouard Nicolas  <brouard@localhost>          real issue in C where, by default, arrays are starting from 0 to
           n-1. In Buckhardt, as well as in Gegenfürtner C code, it can be
         * imach.c (Module): Yes the sum of survivors was wrong since          seen that authors while trying to mimick original Brent Algol W
         imach-114 because nhstepm was no more computed in the age          code are hesitating by changing either a loop originally from 1 to
         loop. Now we define nhstepma in the age loop.          n in a loop from 0 to n-1, or keeping Brent's loop from 1 to n and
         (Module): In order to speed up (in case of numerous covariates) we          shifting the index from original X(I) in Algol W to x[i-1] in C.
         compute health expectancies (without variances) in a first step          But as IMaCh is using, since the beginning, the Numerical Recipes
         and then all the health expectancies with variances or standard          functions vector or matrix, I changed Geggenfürtner code to mimick
         deviation (needs data from the Hessian matrices) which slows the          the original Algol W arrays. Thus the X(I) is translated in C as
         computation.          x[i] which minimizes the errors. The Golub QR algorithm was
         In the future we should be able to stop the program is only health          published in Algol with overflow errors which were reproduced in
         expectancies and graph are needed without standard deviations.          Brent's Algol W code. Buckhardt code fixed these errors which are
           much more problematic in C than in Algol W.  Thus Buckhardt code
 2006-04-04  LIEVRE Agnes  <lievre@PC_00697.ined.fr>          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.iss (Module):          CO code which is very close to Brent's original. Also what makes
           Buckhardt code more difficult to read is, instead of passing the
         * imach.c (Module): bugs in evsi + population file added in htm output file          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-22  LIEVRE Agnes  <lievre@PC_00697.ined.fr>          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):          Gegenfürtner flin function had two parameters: static double
           flin(l, j) double l; { int i; double tflin[N];} but Buckhardt
 2006-03-20  Brouard Nicolas  <brouard@localhost>          function has 14 parameters which makes the code unreadable and
           useless. Gegenfürtner used a lot of static variables or functions
         * imach.c (Module): <title> changed, corresponds to .htm file          which I tried to minimize. Also in Gegefürtner, array dimensions
         name. <head> headers where missing.          were fixed to N. In my adaptation the flin is static double
           flin(double l, int j) and the parameter used are global variables.
         * Makefile (Module): 0.98g  
   2023-06-14  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): Weights can have a decimal point as for  
         English (a comma might work with a correct LC_NUMERIC environment,          * imach.c (Module): Testing if conjugate gradient could be quicker
         otherwise the weight is truncated).          when lot of variables POWELLORIGINCONJUGATE
         Modification of warning when the covariates values are not 0 or  
         1.  2023-05-23  Nicolas Brouard   <brouard@ined.fr>
         Version 0.98g  
           * imach.c (Module): Fixed PROB_r 
 2006-03-16  LIEVRE Agnes  <lievre@PC_00697.ined.fr>  
   2023-05-22  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): Comments concerning covariates added  
           * imach.c (Module): In the ILK....txt file, the number of columns
         * noreg-setup.iss (Module): Version 0.98f          before the covariates values is dependent of the number of states (16+nlstate): 0.99r46
   
         * Makefile (Module): Version 0.98f make _windows=1 imachcyg-setup  2023-05-08  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): refinements in the computation of lli if          *  (Module): Error V0 when result:. and model 1+age+V1: fixed
         status=-2 in order to have more reliable computation if stepm is  
         not 1 month. Version 0.98f  2023-04-29  Nicolas Brouard  <brouard@ined.fr>
   
 2006-03-15  Brouard Nicolas  <brouard@localhost>          * imach.c (Module): Inverting the model equation and fixingg bugs
           in the drawings
         * imach.c (Module): Bug if status = -2, the loglikelihood was          "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"
         computed as likelihood omitting the logarithm. Version O.98e  
   2023-04-24  Nicolas Brouard  <brouard@ined.fr>
 2006-03-14  Brouard Nicolas  <brouard@localhost>  
           * imach.c (Module): some bugs in printinggnuplot 
         * imach.c (Module): varevsij Comments added explaining the second  
         table of variances if popbased=1 .  2022-09-19  Nicolas Brouard   <brouard@ined.fr>
         (Module): Covariances of eij, ekl added, graphs fixed, new html link.  
         (Module): Function pstamp added          * imach.c (Module): Version 0.99r42 needed a newer version of
         (Module): Version 0.98d          Gnuplot. But newer version 0.99r43 should run with the Gnuplot
           version 5.0 or 5.1 distributed with IMaCh.
 2006-03-06  Brouard Nicolas  <brouard@localhost>  
   2022-09-18  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): Variance-covariance wrong links and  
         varian-covariance of ej. is needed (Saito).          * imach.c (Module): Fixing when a state in the data is 0 or higher
           than lstate+ndeath. Fixing the plot of contribution to Likelihood.
 2006-02-27  Brouard Nicolas  <brouard@localhost>  
   2022-09-16  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): One freematrix added in mlikeli!  
           * imach.c (Module): 0.99r41 Was an error when product of timevarying and fixed. Using FixedV[of name] now. Thank you  Feinuo
 2006-02-26  Brouard Nicolas  <brouard@localhost>  
   2022-09-14  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module): Some improvements in processing parameter  
         filename with strsep.          * imach.c (Module): Fixing names of variables in T_ (thanks to Feinuo)
   
 2006-02-24  Brouard Nicolas  <brouard@localhost>  2022-09-14  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): Memory leaks checks with valgrind and:          * imach.c (Module): Version 0.99r39 with colored dummy covariates
         datafile was not closed, some imatrix were not freed and on matrix          (fixed or time varying), using new last columns of
         allocation too.          ILK_parameter.txt file.
   
 2006-02-09  LIEVRE Agnes  <lievre@PC_00697.ined.fr>  2022-09-11  Nicolas Brouard   <brouard@ined.fr>
   
         * strsep.c (Module): Inclusion because not in mingw32!!!          * imach.c (Module): Adding timevarying products of any kinds,
           should work before shifting cotvar from ncovcol+nqv columns in
         * setup.iss.in (Module): IMACHSETUPVERSION added          order to have a correspondance between the column of cotvar and
           the id of column.
         * noreg-setup.iss (Module): added to cvs tree          (Module): Some cleaning and adding covariates in ILK.txt
   
         * Makefile (Module): IMACHSETUPVERSION added  2022-09-09  Nicolas Brouard   <brouard@ined.fr>
   
 2006-01-30  BROUARD Nicolas  <brouard@localhost>          * imach.c (Module): Many improvements for fixing products of fixed
           timevarying as well as fixed * fixed, and test with quantitative
         * Makefile (Module, Module): Latest Makefile          covariate.
   
         * imach.c (Module): Back to gnuplot.exe instead of wgnuplot.exe  2022-09-04  Nicolas Brouard   <brouard@ined.fr>
   
 2006-01-27  BROUARD Nicolas  <brouard@localhost>          * imach.c (Module): Now the easy runs i.e. without result or
           model=1+age only did not work. The defautl combination should be 1
         * noreg-setup.iss (Module): ADDED          and not 0 because everything hasn't been tranformed yet.
   
 2006-01-24  BROUARD Nicolas  <brouard@localhost>  2022-09-02  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): Comments (lines starting with a #) are allowed in data.          * imach.c: Version 0.99r35 because it outputs same results with
           1+age+V1+V1*age for females and 1+age for females only
 2005-10-25  Nicolas Brouard  <brouard@dhcp171.recherche.ined.fr>          (education=1 noweight)
   
         * Makefile (Module): Added Imach98.pmsp and howto crete a dmg  2022-08-31  Nicolas Brouard   <brouard@ined.fr>
   
         * createdmg.sh (Module): Creates a dmg disk for MaC OS/X          * imach.c (Module): Some improvments in fichtm and many verifications 0.99r34
   
 2005-09-30    <lievre@PC_00595>  2022-08-21  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Module): sump fixed, loop imx fixed, and simplifications.          * imach.c (Module): Version 0.99r33 A lot of changes in
         (Module): If the status is missing at the last wave but we know          reassigning covariates: my first idea was that people will always
         that the person is alive, then we can code his/her status as -2          use the first covariate V1 into the model but in fact they are
         (instead of missing=-1 in earlier versions) and his/her          producing data with many covariates and can use an equation model
         contributions to the likelihood is 1 - Prob of dying from last          with some of the covariate; it means that in a model V2+V3 instead
         health status (= 1-p13= p11+p12 in the easiest case of somebody in          of codtabm(k,Tvaraff[j]) which calculates for combination k, for
         the healthy state at last known wave). Version is 0.98          three covariates (V1, V2, V3) the value of Tvaraff[j], but in fact
           the equation model is restricted to two variables only (V2, V3)
 2004-05-20  Brouard Nicolas  <brouard@localhost>          and the combination for V2 should be codtabm(k,1) instead of
           (codtabm(k,2), and the code should be
         * imach.c (Repository):          codtabm(k,TnsdVar[Tvaraff[j]]. Many many changes have been
         Agnes added a direct estimation of mortality (without the need of          made. All of these should be simplified once a day like we did in
         computing period prevalence and differential mortality). Thus here          hpxij() for example by using precov[nres] which is computed in
         is version 0.97a which has been distributed to some people at          decoderesult for each nres of each resultline. Loop should be done
         REVES 16 in Brugge using an Inno setup.exe for PCs. Estimates of          on the equation model globally by distinguishing only product with
         mortality using covariates is not done today. Estimating direct          age (which are changing with age) and no more on type of
         mortality is a very different process because it doesn't need          covariates, single dummies, single covariates. 
         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-08-06  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 (Module): Version of imach using partly decoderesult to rebuild xpxij function
         the understanding of the program.  
   2022-08-03  Nicolas Brouard   <brouard@ined.fr>
 2003-06-25    <brouard@BROUARD>  
           *  imach.c (Module): Many errors in graphs fixed with Vn*age covariates.
         * imach.c (Module): On windows (cygwin) function asctime_r doesn't  
         exist so I changed back to asctime which exists.  2022-07-25  Brouard Nicolas  <brouard@brouard.name>
         (Module): Version 0.96b  
           * imach.c (Module): Error cptcovn instead of nsd in bmij (was
 2003-06-24    <brouard@BROUARD>          coredumped, revealed by Feiuno, thank you.
   
         * imach.c (Module): Some bugs corrected for windows. Also, when  2022-07-23  Nicolas Brouard   <brouard@ined.fr>
         mle=-1 a template is output in file "or"mypar.txt with the design  
         of the covariance matrix to be input.          * r29 W and not sqrt(Wald)
   
 2003-06-25  Brouard Nicolas  <brouard@homebrou>  2022-07-22  Nicolas Brouard   <brouard@ined.fr>
   
         * imach.c (Repository): Duplicated warning errors corrected.          *  imach.c (Module): Output of Wald test in the htm file and not only in the log. 
         (Repository): Elapsed time after each iteration is now output. It  
         helps to forecast when convergence will be reached. Elapsed time  2022-06-02  Brouard Nicolas  <brouard@brouard.name>
         is stamped in powell.  We created a new html file for the graphs  
         concerning matrix of covariance. It has extension -cov.htm.          * imach.c (Module): Adding the Wald tests from the log to the main
           htm for better display of the maximum likelihood estimators.
 2003-06-23  Brouard Nicolas  <brouard@homebrou>  
   2022-05-30  Brouard Nicolas  <brouard@brouard.name>
         * 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.  
           * imach.c: With products of covariates (age or dummies or
 2003-06-18  Brouard Nicolas  <brouard@homebrou>          quantitatives), estimates of parameters were good but when
           estimating variances the positions of newly created covariates
         * imach.c (Repository): Suppress abusive calls to append to file html (solution was to put fichtm as a global variable. Version 0.96          were wrongly assigned and results were wrong. Thank to Feinua_Sun!
   
 2003-06-17  Brouard Nicolas  <brouard@homebrou>  2022-05-24  Nicolas Brouard   <brouard@ined.fr>
   
           * imach.c (Module): Some attempts to find a bug of wrong estimates
         * imach.c (Repository): Check when date of death was earlier that          of confidencce intervals with product in the equation modelC
         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-05-15  Nicolas Brouard   <brouard@ined.fr>
         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):  Some minor improvements
         interview.  
         (Repository): Because some people have very long ID (first column)  2022-04-13  Brouard Nicolas  <brouard@brouard.name>
         we changed int to long in num[] and we added a new lvector for  
         memory allocation. But we also truncated to 8 characters (left          * imach.c (Module): Adding link to text data files
         truncation)  
   2022-04-11  Nicolas Brouard   <brouard@ined.fr>
         (Repository): No more line truncation errors.  
           * imach.c (Module): Error in rewriting the 'r' file with yearsfproj or yearsbproj fixed
 2003-06-14  Brouard Nicolas  <brouard@homebrou>  
   2022-04-05  Brouard Nicolas  <brouard@ined.fr>
         * imach.c (Repository): Add of a routine likelione (likelihood  
         only once) which prints on a text file          * imach.c (Module): Fixed covariates (dummy or quantitative)
         (ilk) the contributions to the likelihood for each          with missing values have never been allowed but are ERRORS and
         individual/wave.          program quits. Standard deviations of fixed covariates were
           wrongly computed. Mean and standard deviations of time varying
 2003-06-13  Brouard Nicolas  <brouard@homebrou>          covariates are still not computed.
         * imach.c (Repository): Replace "freqsummary" at a correct  
         place. It differs from routine "prevalence" which may be called  2022-03-17  Brouard Nicolas  <brouard@ined.fr>
         many times. Probs is memory consuming and must be used with  
         parcimony.          * 99r25 Improvements in fixing discrepancies between covariates
           missing in result line but in model. 
 2003-06-17    <brouard@BROUARD>  
   *Wed Mar 31 2021  Nicolas Brouard   <brouard@ined.fr>
         * timeval.h (Module): Added included file to make use of          * imach.c (Module): Still bugs in the result loop. Thank to Holly Benett
         gettimeofday working on win32 with cygwin.  
   *2021-03-08  Nicolas Brouard   <brouard@ined.fr>
 2003-05-16  Brouard Nicolas  <brouard@brouard>  
         * imach.c (Module): Insert of a warning if the delay between two          * ./ (Module): Fixed bug on result:
         waves is negative.  
   *2021-02-20  Nicolas Brouard   <brouard@ined.fr>
         * imach.c (Module):  
           * imach.c (Module): Fix bug on quitting after result lines!
 2003-05-03    <brouard@BROUARD>          (Module): Version 0.99r21
   
         * imach.c: Some cleaning  2021-02-12  Nicolas Brouard   <brouard@ined.fr>
   
 2003-03-28    <brouard@BROUARD>          * imach.c (Module): The use of a Windows BOM (huge) file is now an error
         * 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  2021-02-11  Nicolas  Brouard   <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          *  (Module): imach.c Someone entered 'results:' instead of 'result:'. Now it is an error which is printed.
         (healthy, disable or death) and IMaCh was corrected; but when we  
         introduced the exact date of death then we should have modified  2020-02-22  Brouard Nicolas  <brouard@ined.fr>
         the contribution of an exact death to the likelihood. This new  
         contribution is smaller and very dependent of the step unit          *  (Module): imach.c Update mle=-3 (for computing Life expectancy
         stepm. It is no more the probability to die between last interview          and life table from the data without any state)
         and month of death but the probability to survive from last  
         interview up to one month before death multiplied by the  2019-05-20  Brouard Nicolas  <brouard@ined.fr>
         probability to die within a month. Thanks to Chris  
         Jackson for correcting this bug.  Former versions increased          * version.h: Summary: version 0.99.r19
         mortality artificially. The bad side is that we add another loop  
           * imach.c: Summary: Projection syntax simplified
           We can now start projections, forward or backward, from the mean date
         which slows down the processing. The difference can be up to 10%          of inteviews up to or down to a number of years of projection:
           prevforecast=1 yearsfproj=15.3 mobil_average=0
           or
         lower mortality.          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
   
 2002-05-30    <brouard@BROUARD>  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 ***
   
         * imach.c (Module): Add correlation matrix of one-step          * ChangeLog: Summary: C=
   
           * imach.c: Summary: Some updates
         probabilities and covariance matrix  
           * 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.37  
changed lines
  Added in v.1.71


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