General (Inverse) Relationship Matrix: !KEEPGRM

!KEEPGRM

!KEEPGRM (on a GRM definition line) instructs ASReml to keep in memory the GRM matrix as well as its inverse. The uninverted GRM is needed when a model term like diag(Env).grm(Geno) is replaced by one like sat(Env !VGROUP).grm(Geno). The latter term is expanded to a set of separate model terms, one for each level of Env, each fitting only the Geno levels with data for that level of Env. This can dramatically reduce the model fitting time.

!VGROUP and !VPGROUP

Genotype by Environment analyses with genomic relationship matrices can require a lot of workspace when there are more than 10 environments and more than 1000 genotypes. In such cases, a factor analytic model is often used, possibly specified as xfa1(Env).grm(Geno). An equvialent sparser specification is rrd1(Env).grm(Geno) which is expanded to rr1(Env).grm(Geno) + diag(Env).grm(Geno).

Often, the number of gentypes evaluated at any particular environment is much less than total number of genotypes across environments. If the user does not need to predict each genotype for each environment, an equivalent model becomes the basis for further computational efficiency. at(Env).grm(Geno) is equivalent to diag(Env).grm(Geno) but breaks the diag() interaction into separate terms for each environment. Then we can use a reduced size GRM, specific to the environment; fitting a term like at(Env,i).grm(Geno|Env_i)} instead of at(Env,i).grm(Geno)}. This is done by writing the model term as sat(Env).grm(Geno) or at(Env !VGROUP).grm(Geno) or at(Env).grm(Geno|Env)}.

To do the expansion and form the particular reduced GRM inverses required, ASReml needs access to the original GRM matrix. Since this is normally not kept, specify !KEEPGRM as a qualifier on the GRM definition line.

Since the enviromemnts may form groups with common genotypes, if say Field is a factor which associates environments with common entries, we can use fewer reduced GRM matrices by writing the term as at(Env !VGROUP Field).grm(Geno) or at(Env).grm(Geno|Field)}.
  • More information on !VGROUP The !VPGROUP mu qualifier used in association with !VGROUP, constrains variance parameters in the associated components to a common value.

    Return to index