|
|
| version 1.134, 2009/10/29 13:18:53 | version 1.135, 2009/10/29 15:33:14 |
|---|---|
| Line 1 | Line 1 |
| /* $Id$ | /* $Id$ |
| $State$ | $State$ |
| $Log$ | $Log$ |
| Revision 1.135 2009/10/29 15:33:14 brouard | |
| (Module): Now imach stops if date of birth, at least year of birth, is not given. Some cleaning of the code. | |
| Revision 1.134 2009/10/29 13:18:53 brouard | Revision 1.134 2009/10/29 13:18:53 brouard |
| (Module): Now imach stops if date of birth, at least year of birth, is not given. Some cleaning of the code. | (Module): Now imach stops if date of birth, at least year of birth, is not given. Some cleaning of the code. |
| Line 3485 To be simple, these graphs help to under | Line 3488 To be simple, these graphs help to under |
| /* Computing eigen value of matrix of covariance */ | /* Computing eigen value of matrix of covariance */ |
| lc1=((v1+v2)+sqrt((v1+v2)*(v1+v2) - 4*(v1*v2-cv12*cv12)))/2.; | lc1=((v1+v2)+sqrt((v1+v2)*(v1+v2) - 4*(v1*v2-cv12*cv12)))/2.; |
| lc2=((v1+v2)-sqrt((v1+v2)*(v1+v2) - 4*(v1*v2-cv12*cv12)))/2.; | lc2=((v1+v2)-sqrt((v1+v2)*(v1+v2) - 4*(v1*v2-cv12*cv12)))/2.; |
| if ((lc2 <0) || (lc1 <0) ){ | |
| printf("Error: One eigen value of 2x2 matrix of covariance is negative, lc1=%11.3e, lc2=%11.3e, v1=%11.3e, v2=%11.3e, cv12=%11.3e.\n It means that the matrix was not well estimated (varpij), for i=%2d, j=%2d, age=%4d .\n See files %s and %s. Continuing by making them positive: WRONG RESULTS.\n", lc1, lc2, v1, v2, cv12, i, j, (int)age,fileresprobcov, fileresprobcor); | |
| fprintf(ficlog,"Error: One eigen value of 2x2 matrix of covariance is negative, lc1=%11.3e, lc2=%11.3e, v1=%11.3e, v2=%11.3e, cv12=%11.3e\n", lc1, lc2, v1, v2, cv12);fflush(ficlog); | |
| lc1=fabs(lc1); | |
| lc2=fabs(lc2); | |
| } | |
| /* Eigen vectors */ | /* Eigen vectors */ |
| v11=(1./sqrt(1+(v1-lc1)*(v1-lc1)/cv12/cv12)); | v11=(1./sqrt(1+(v1-lc1)*(v1-lc1)/cv12/cv12)); |
| /*v21=sqrt(1.-v11*v11); *//* error */ | /*v21=sqrt(1.-v11*v11); *//* error */ |