From Genome Analysis Wiki
Jump to navigationJump to search
498 bytes removed
, 14:19, 2 October 2013
Line 20: |
Line 20: |
| Transpose(from, to, thetas[i]); | | Transpose(from, to, thetas[i]); |
| | | |
− | // Find nearest informative marker | + | RetrieveMemoryBlock(i); |
− | double theta = 0.0;
| |
− | int left = i;
| |
| | | |
− | while (left > 0 && genotypes[states / 2][left] == GENOTYPE_MISSING) | + | ImputeGenotypes(leftMatrices[i], to, i); |
− | {
| |
− | // Cumulative recombination fraction to nearest marker
| |
− | theta = theta + thetas[left - 1] - theta * thetas[left - 1];
| |
− | left--;
| |
− | }
| |
− | | |
− | RetrieveMemoryBlock(left);
| |
− | float * leftMatrix = leftMatrices[left];
| |
− | | |
− | if (left != i)
| |
− | {
| |
− | Transpose(leftMatrix, from, theta);
| |
− | leftMatrix = from;
| |
− | }
| |
− | | |
− | ImputeGenotypes(leftMatrix, to, i);
| |
| ConditionOnData(to, i, genotypes[states / 2][i]); | | ConditionOnData(to, i, genotypes[states / 2][i]); |
| | | |