CMMAT2 - maternal effect, threshold+linear model REML program @ 20-11-1991 by Ignacy Misztal CMMAT has been modified to provide the (co) variance estimates of the direct genetic and maternal effects. It is compatible with the previous revisions of CMMAT i.e. it should handle all previous examples, perhaps even faster due to a different REML procedure. For the old features of CMMAT, please consult the previous write-up. New features are as follows: 1. Maternal effect. Maternal effect is defined right after the sire effect and both effects should have the same number of levels. The sire effect has a negative variance ratio, to indicate the presence of the pedigree file. The maternal effect has a positive variance ratio. Both ratios are used to create the initial coefficient matrix. Initial correlation between the sire and maternal effects is assumed to be around 10%. 2. Faster EM-alike REML formulas. Since the EM-REML formula is very slow, a faster formula is used. This formula was first described, in a somewhat different fashion, in Paul VanRaden's thesis. Three REML formulas: u'inv(A)u + sigmae * trace () 1) sigmau = ------------------------------ q u'inv(A)u 2) sigmau = ----------- q - alfa*tr u'inv(A)u - sigmau*beta*denom 3) sigmau = ------------------------------ denom*(1-beta) where denom = q - alfa*tr alfa = sigmae/sigmau beta - speed-up factor 0 <= beta < 1 If 1) is the original EM-REML, 2) is a faster formula due to Harville (?), and 3) is the formula used in this program. For beta=0, the formulas 2) and 3) are identical. To converge to 3 significant digits of accuracy using the example below, 300, 120 and 50 rounds were needed by formulas 1), 2) and 3) with beta=.7, respectively. The speed-up factor beta is somewhat critical. The iteration diverges if it is too high, and the increase in the convergence rate is low if it is too small. For the example below, the iteration was the fastest at beta=.7 but diverged at beta=.8. Attention! All animals need to be included in the pedigree file. including parents. Thus, if the animal effect has 1027 animals, 1027 entries are needed in the pedigree file. If a parent is missing, use 0 as a code for unknown parent. Execution on a personal computer >type cmpf [ parameter file ] cmdf cmrelf pp 3 1 5 5 0 2 1 2 0 2 2 0 3 2 0 4 8 -19 6 8 19 >type cmdf [data file] 1 1 1 1 1 4 1 1 2 1 1 5 1 2 1 1 1 5 1 1 2 2 2 5 1 2 1 2 1 6 1 2 1 2 3 6 1 2 2 2 1 5 1 2 2 2 1 5 1 2 2 2 1 5 1 1 1 3 1 4 1 1 1 3 2 4 1 2 2 3 2 4 1 2 1 3 1 4 2 1 2 1 1 6 2 1 2 1 1 6 2 1 1 1 1 4 2 2 1 1 3 6 2 1 2 2 1 5 2 1 2 2 3 5 2 2 1 2 1 4 2 1 2 3 2 6 2 2 1 3 3 5 2 1 1 4 2 6 2 1 2 4 1 6 2 2 2 4 1 6 2 2 2 4 1 6 2 2 1 4 1 4 2 2 1 4 1 4 >type cmrelf [sire - maternal grandsire pedigree file] 1 5 7 2 5 0 3 0 8 4 6 8 5 7 0 6 7 0 7 0 0 8 0 0 >cmmat1 name of a file with parameters, con - if console: cmpf zero first threshold (1), or first level of second and later fixed effects (2) or first level of all fixed effects (3), 0 if none 1 position of factor to be absorbed and its variance ratio, 0 0 if none 0 0 how many rounds of reml, 0 if not used 1 how many rounds of newton-raphson before reml starts? 1 how many rounds of newton-raphson between subsequent reml estimations? 1 beta=? .6 round= 1 sol(1)= .0000 sol( 24)= -.0319 vcround= 1 sige= 1.0000 sigu 4 = .0537 alfa 4 =-18.6127 sigcov = .0005 alfacov = -.1933 sigu 5 = .0527 alfa 5 = 18.9743 round= 2 sol(1)= .0000 sol( 24)= -.0310 how many more iterations, 0-none? vcround= 1 sige= 1.0000 sigu 4 = .1378 alfa 4 = -7.2705 sigcov = .0045 alfacov = -.4444 sigu 5 = .0736 alfa 5 = 13.6215 round= 3 sol(1)= .0000 sol( 24)= -.0320 vcround= 1 sige= 1.0000 sigu 4 = .2554 alfa 4 = -4.0210 sigcov = .0277 alfacov = -.9805 sigu 5 = .1136 alfa 5 = 9.0417 round= 4 sol(1)= .0000 sol( 24)= -.0438 vcround= 1 sige= 1.0000 sigu 4 = .3157 alfa 4 = -3.5989 sigcov = .0855 alfacov = -1.5932 sigu 5 = .1932 alfa 5 = 5.8818 round= 5 sol(1)= .0000 sol( 24)= -.0626 vcround= 1 sige= 1.0000 sigu 4 = .3921 alfa 4 = -3.4031 sigcov = .1688 alfacov = -1.9811 sigu 5 = .2900 alfa 5 = 4.6020 round= 6 sol(1)= .0000 sol( 24)= -.0878 vcround= 1 sige= 1.0000 sigu 4 = .4388 alfa 4 = -3.7047 sigcov = .2431 alfacov = -2.5731 sigu 5 = .3501 alfa 5 = 4.6436 round= 7 sol(1)= .0000 sol( 24)= -.1061 vcround= 1 sige= 1.0000 sigu 4 = .4694 alfa 4 = -4.1792 sigcov = .2991 alfacov = -3.2158 sigu 5 = .3887 alfa 5 = 5.0470 round= 8 sol(1)= .0000 sol( 24)= -.1110 vcround= 1 sige= 1.0000 sigu 4 = .4817 alfa 4 = -4.8217 sigcov = .3350 alfacov = -3.9480 sigu 5 = .4091 alfa 5 = 5.6768 round= 9 sol(1)= .0000 sol( 24)= -.1120 vcround= 1 sige= 1.0000 sigu 4 = .4889 alfa 4 = -5.5073 sigcov = .3597 alfacov = -4.7043 sigu 5 = .4211 alfa 5 = 6.3930 round= 10 sol(1)= .0000 sol( 24)= -.1106 vcround= 1 sige= 1.0000 sigu 4 = .4897 alfa 4 = -6.2647 sigcov = .3748 alfacov = -5.5165 sigu 5 = .4257 alfa 5 = 7.2070 round= 11 sol(1)= .0000 sol( 24)= -.1089 vcround= 1 sige= 1.0000 sigu 4 = .4906 alfa 4 = -7.0180 sigcov = .3863 alfacov = -6.3241 sigu 5 = .4287 alfa 5 = 8.0316 round= 12 sol(1)= .0000 sol( 24)= -.1068 vcround= 1 sige= 1.0000 sigu 4 = .4892 alfa 4 = -7.8058 sigcov = .3936 alfacov = -7.1619 sigu 5 = .4290 alfa 5 = 8.9022 round= 13 sol(1)= .0000 sol( 24)= -.1051 vcround= 1 sige= 1.0000 sigu 4 = .4889 alfa 4 = -8.5768 sigcov = .3999 alfacov = -7.9847 sigu 5 = .4295 alfa 5 = 9.7615 round= 14 sol(1)= .0000 sol( 24)= -.1035 vcround= 1 sige= 1.0000 sigu 4 = .4875 alfa 4 = -9.3677 sigcov = .4041 alfacov = -8.8256 sigu 5 = .4289 alfa 5 = 10.6463 round= 15 sol(1)= .0000 sol( 24)= -.1022 vcround= 1 sige= 1.0000 sigu 4 = .4870 alfa 4 =-10.1415 sigcov = .4081 alfacov = -9.6508 sigu 5 = .4288 alfa 5 = 11.5157 round= 16 sol(1)= .0000 sol( 24)= -.1010 vcround= 1 sige= 1.0000 sigu 4 = .4859 alfa 4 =-10.9284 sigcov = .4109 alfacov =-10.4882 sigu 5 = .4282 alfa 5 = 12.4013 round= 17 sol(1)= .0000 sol( 24)= -.1000 vcround= 1 sige= 1.0000 sigu 4 = .4854 alfa 4 =-11.7015 sigcov = .4137 alfacov =-11.3125 sigu 5 = .4279 alfa 5 = 13.2735 round= 18 sol(1)= .0000 sol( 24)= -.0991 vcround= 1 sige= 1.0000 sigu 4 = .4846 alfa 4 =-12.4833 sigcov = .4157 alfacov =-12.1450 sigu 5 = .4273 alfa 5 = 14.1562 round= 19 sol(1)= .0000 sol( 24)= -.0984 vcround= 1 sige= 1.0000 sigu 4 = .4842 alfa 4 =-13.2543 sigcov = .4178 alfacov =-12.9671 sigu 5 = .4270 alfa 5 = 15.0280 round= 20 sol(1)= .0000 sol( 24)= -.0977 vcround= 1 sige= 1.0000 sigu 4 = .4835 alfa 4 =-14.0315 sigcov = .4193 alfacov =-13.7950 sigu 5 = .4265 alfa 5 = 15.9072 round= 21 sol(1)= .0000 sol( 24)= -.0972 vcround= 1 sige= 1.0000 sigu 4 = .4832 alfa 4 =-14.8007 sigcov = .4209 alfacov =-14.6152 sigu 5 = .4262 alfa 5 = 16.7782 round= 22 sol(1)= .0000 sol( 24)= -.0966 vcround= 1 sige= 1.0000 sigu 4 = .4827 alfa 4 =-15.5742 sigcov = .4221 alfacov =-15.4394 sigu 5 = .4258 alfa 5 = 17.6541 round= 23 sol(1)= .0000 sol( 24)= -.0962 vcround= 1 sige= 1.0000 sigu 4 = .4824 alfa 4 =-16.3417 sigcov = .4234 alfacov =-16.2577 sigu 5 = .4256 alfa 5 = 18.5239 round= 24 sol(1)= .0000 sol( 24)= -.0958 vcround= 1 sige= 1.0000 sigu 4 = .4820 alfa 4 =-17.1122 sigcov = .4244 alfacov =-17.0788 sigu 5 = .4252 alfa 5 = 19.3971 round= 25 sol(1)= .0000 sol( 24)= -.0954 vcround= 1 sige= 1.0000 sigu 4 = .4818 alfa 4 =-17.8783 sigcov = .4254 alfacov =-17.8955 sigu 5 = .4250 alfa 5 = 20.2657 round= 26 sol(1)= .0000 sol( 24)= -.0950 vcround= 1 sige= 1.0000 sigu 4 = .4814 alfa 4 =-18.6464 sigcov = .4263 alfacov =-18.7142 sigu 5 = .4247 alfa 5 = 21.1366 round= 27 sol(1)= .0000 sol( 24)= -.0947 vcround= 1 sige= 1.0000 sigu 4 = .4812 alfa 4 =-19.4112 sigcov = .4271 alfacov =-19.5294 sigu 5 = .4245 alfa 5 = 22.0040 round= 28 sol(1)= .0000 sol( 24)= -.0944 vcround= 1 sige= 1.0000 sigu 4 = .4810 alfa 4 =-20.1769 sigcov = .4278 alfacov =-20.3455 sigu 5 = .4243 alfa 5 = 22.8725 round= 29 sol(1)= .0000 sol( 24)= -.0942 vcround= 1 sige= 1.0000 sigu 4 = .4808 alfa 4 =-20.9404 sigcov = .4285 alfacov =-21.1593 sigu 5 = .4241 alfa 5 = 23.7385 round= 30 sol(1)= .0000 sol( 24)= -.0939 vcround= 1 sige= 1.0000 sigu 4 = .4806 alfa 4 =-21.7047 sigcov = .4292 alfacov =-21.9740 sigu 5 = .4239 alfa 5 = 24.6056 round= 31 sol(1)= .0000 sol( 24)= -.0937 vcround= 1 sige= 1.0000 sigu 4 = .4804 alfa 4 =-22.4679 sigcov = .4298 alfacov =-22.7874 sigu 5 = .4237 alfa 5 = 25.4714 round= 32 sol(1)= .0000 sol( 24)= -.0935 vcround= 1 sige= 1.0000 sigu 4 = .4802 alfa 4 =-23.2297 sigcov = .4303 alfacov =-23.5994 sigu 5 = .4236 alfa 5 = 26.3358 round= 33 sol(1)= .0000 sol( 24)= -.0933 vcround= 1 sige= 1.0000 sigu 4 = .4800 alfa 4 =-23.9909 sigcov = .4308 alfacov =-24.4107 sigu 5 = .4234 alfa 5 = 27.1995 round= 34 sol(1)= .0000 sol( 24)= -.0931 vcround= 1 sige= 1.0000 sigu 4 = .4799 alfa 4 =-24.7523 sigcov = .4313 alfacov =-25.2221 sigu 5 = .4233 alfa 5 = 28.0635 round= 35 sol(1)= .0000 sol( 24)= -.0930 vcround= 1 sige= 1.0000 sigu 4 = .4797 alfa 4 =-25.5123 sigcov = .4317 alfacov =-26.0321 sigu 5 = .4231 alfa 5 = 28.9260 round= 36 sol(1)= .0000 sol( 24)= -.0928 vcround= 1 sige= 1.0000 sigu 4 = .4796 alfa 4 =-26.2723 sigcov = .4322 alfacov =-26.8422 sigu 5 = .4230 alfa 5 = 29.7884 round= 37 sol(1)= .0000 sol( 24)= -.0926 vcround= 1 sige= 1.0000 sigu 4 = .4795 alfa 4 =-27.0317 sigcov = .4326 alfacov =-27.6514 sigu 5 = .4229 alfa 5 = 30.6501 round= 38 sol(1)= .0000 sol( 24)= -.0925 vcround= 1 sige= 1.0000 sigu 4 = .4794 alfa 4 =-27.7918 sigcov = .4330 alfacov =-28.4614 sigu 5 = .4228 alfa 5 = 31.5126 round= 39 sol(1)= .0000 sol( 24)= -.0924 vcround= 1 sige= 1.0000 sigu 4 = .4793 alfa 4 =-28.5504 sigcov = .4333 alfacov =-29.2699 sigu 5 = .4227 alfa 5 = 32.3735 round= 40 sol(1)= .0000 sol( 24)= -.0922 vcround= 1 sige= 1.0000 sigu 4 = .4791 alfa 4 =-29.3105 sigcov = .4336 alfacov =-30.0799 sigu 5 = .4226 alfa 5 = 33.2361 round= 41 sol(1)= .0000 sol( 24)= -.0921 vcround= 1 sige= 1.0000 sigu 4 = .4790 alfa 4 =-30.0683 sigcov = .4340 alfacov =-30.8875 sigu 5 = .4225 alfa 5 = 34.0961 round= 42 sol(1)= .0000 sol( 24)= -.0920 how many more iterations, 0-none? 0 solutions and inv. diagonals were stored in file sol Stop - Program terminated. >