Standard errors in WOMBAT are derived a) assuming large samples, and b) a series of approximations - see the Technical Details section of the manual. In some cases, this approximation simply fails. Reasons for this may be, for instance, that your sample is very small, or that you are dealing with a model which is overparameterised, which includes multivariate analyses where some covariance matrices have eigenvalues which are effectively zero. In the latter scenario, it may help to fit a reduced rank model. Otherwise, you simply have to accept that the approximation of standard errors does not always work.
—-aireml), especially if you have good starting values
—-choozhzoption may help.
SumModel.outtells me that WOMBAT thinks that there are no animals which have records for the corresponding pairs of traits – but I know that there are animals which do. Why is WOMBAT so confused ?
SumModel.outgives the correct numbers of individuals with records for each pair of traits before proceeding to the estimation step.
SumModel.outshould report numbers of individuals with pairs of records greater than zero.
ZEROUToption. This is particularly important, if you want to fit effects A (or B) in addition to the interaction - you then have the interaction nested in A (or B), i.e. if effect A has a levels, you have (a-1) additional dependencies among the fixed effects. WOMBAT may find some of them, but you cannot rely on it. ~~UP~~
FixSolutions.out, but: a) I can't find the intercept, and b) these estimates don't make sense, i.e. when I plug them into the regression equation, I don't get a curve which fits the data. What is wrong?
−−noprunerun time option. ~~UP~~
N.B. Even if all animals in the data have known dams, you may have animals in the pedigree with unknown dams. If you wish to fit a maternal genetic effect, you will then similarly need to assign dummy dam codes for all unknown dams, i.e. the third column in the pedigree file cannot contain any zeros. Again, your analysis will work best if this proportion of dams is relatively small.
SPECIALblock at the end of the parameter file.
SPECIAL FORCE-SE END
−−self(not in the manual), provided that you are confident the standard rules to set up the inverse of the numerator relationship matrix are applicable. An alternative is to set up the inverse relationship matrix yourself and supply it as a generalized inverse covariance matrix (
animalto represent direct, additive genetic effects – the estimates of the RR coefficients are the in the file ''RnSoln_animal.dat''. Further, say you have fitted 3 basis functions , such as the first three Legendre polynomials, and that you are interested in breeding values at age a. You then need to evaluate the regression equation for each animal, with the estimated RR for individual i and the j-th basis function evaluated for a. WOMBAT does not perform these simple calculations for you, but to make this task easier, it writes out a file with the basis functions evaluated for all values of the control variable occurring in the data – see the manual for details!
−−batchbut, please, read the warning messages!
.bin) files. Is there any way I can access the information in these - I'd be interested in things like the inbreeding coefficients for individual animals.
Matrix of starting values is “invalid”– what does this mean and what can I do about it? And why can't WOMBAT fix this automatically?
-cto tell WOMBAT to pick up the starting values from the file
BestPointdoesn't work – the program ignores it completely and uses the values from the
BestPointyou'll see two numbers on the first line, the log likelihood value and the number of parameters.
.parfile. If the two don't match, the input from
BestPointis unceremoniously ignored. This is a small `safety catch' which helps avoiding input from an inappropriate file.
BestPointand replace the old number of parameters with the number for the next reduced rank run. This is easy to work out: Say you have a genetic covariance matrix for q traits. The full rank estimate has p=q(q+1)/2 parameters, reducing the rank r by one reduces p by one, reducing r to q-2 reduces p by 3, reducing r to q-3 reduces p by 6, and so forth. The general formula for the number of parameters to be estimated in a matrix of size q and rank r is p = r(2q-r+1)/2 .~~UP~~
system2(“wombat”,args=c(“-v”,“wombat.par”)). Of course all the usual input files must exist and you need to make sure that R is looking for them in the correct place.
Iteratesfile). Are they reasonably small, i.e. is your analysis indeed at a point where you would normally expect quadratic convergence?
-voption to get WOMBAT to print out the values of the extreme eigenvalues. Is the smallest eigenvalue safely non-zero but less than unity and the largest eigenvalue more than ten thousand times larger? If so, WOMBAT may treat the AI matrix as ill-conditioned.
Iteratesfile. This gives the step size multiplier. I would expect this to be consistently 1.000.
Iteratesfile – this gives the constant which is added automatically.
−−modaim2,0.1reduces it to one tenth of the default value. NB: If you decrease this too much, you are likely to get strange jumps in parameter estimates and log likelihood values or the algorithm might fail altogether.
UPDATE: A kind visitor compiled WOMBAT on his MAC - this is available for download now. NB: This is a “one-off” and will not be updated, nor are bug fixes possible.