coanc_admix {bnpsd} | R Documentation |
Construct the coancestry matrix of an admixture model
Description
The n
-by-n
coancestry matrix Theta
of admixed individuals is determined by the n
-by-k
admixture proportion matrix Q
and the k
-by-k
intermediate subpopulation coancestry matrix Psi
, given by Theta = Q %*% Psi %*% t(Q)
.
In the more restricted BN-PSD model, Psi
is a diagonal matrix (with FST values for the intermediate subpopulations along the diagonal, zero values off-diagonal).
Usage
coanc_admix(admix_proportions, coanc_subpops)
Arguments
admix_proportions |
The |
coanc_subpops |
The intermediate subpopulation coancestry, given either as a |
Details
As a precaution, function stops if both inputs have names and the column names of admix_proportions
and the names in coanc_subpops
disagree, which might be because these two matrices are not aligned or there is some other inconsistency.
Value
The n
-by-n
coancestry matrix.
Examples
# a trivial case: unadmixed individuals from independent subpopulations
# number of individuals and subpops
n_ind <- 5
# unadmixed individuals
admix_proportions <- diag(rep.int(1, n_ind))
# equal Fst for all subpops
coanc_subpops <- 0.2
# diagonal coancestry matryx
coancestry <- coanc_admix(admix_proportions, coanc_subpops)
# a more complicated admixture model
# number of individuals
n_ind <- 5
# number of intermediate subpops
k_subpops <- 2
# non-trivial admixture proportions
admix_proportions <- admix_prop_1d_linear(n_ind, k_subpops, sigma = 1)
# different Fst for each of the k_subpops
coanc_subpops <- c(0.1, 0.3)
# non-trivial coancestry matrix
coancestry <- coanc_admix(admix_proportions, coanc_subpops)