Organisation et Génération des informations génétique (phases/proba de transmission/reconstruction d'haplotype) : les objets spt et shp¶
Type structuré "Probabilités de transmission des segments parentaux et Phases parentales"¶
type ,public :: PDD_BUILD real (kind=dp) ,dimension(:,:,:,:),pointer ,public :: pdd => null() integer ,dimension(:,:) ,pointer ,public :: ngenom => null() integer ,dimension(:,:) ,pointer ,public :: ngend => null() integer ,dimension(:,:) ,pointer ,public :: ndesc => null() real (kind=dp) ,dimension(:,:) ,pointer ,public :: probg => null() logical ,dimension(:,:) ,pointer ,public :: phasp => null() logical ,dimension(:,:) ,pointer ,public :: phasm => null() real (kind=dp) ,dimension(:,:,:,:),pointer ,public :: prot => null() integer(kind=KIND_PHENO),dimension(:,:,:,:),pointer ,public :: genotyp => null() integer(kind=KIND_PHENO),dimension(:,:,:,:),pointer ,public :: genotypm => null() logical , dimension (:,:,:), pointer ,public :: reconstructed => null() contains procedure ,public :: copy => copy_pdd_build procedure ,public :: release => release_pdd_build procedure ,public :: get_maxnbgenotypedam end type PDD_BUILD
Codification des cas de transmissions des allèles parentaux¶
Pour simplifié l'accès à l'information des cas de transmissions des segments chromosomiques, on codifie (voir le tableau) les quatre possibilités de transmissions :
Sire \Dam | All1 | All2 |
---|---|---|
All1 | 1 | 2 |
All2 | 3 | 4 |
Description des données membres¶
Structures concernants les phases parentales¶
phasp(ichr,ip)
vrai si le génotype du pèreip
sur le chromosomeich
est orientéphasm(ichr,jm)
vrai si le génotype de la mèrejm
sur le chromosomeich
est orienténgenom(chr,jm)+1
donne une référence sur le premier génotype possible de la mèrejm
(référence dans GENEALOGY_BASE)ngenom(chr,jm+1)
donne une référence sur le dernier génotype possible de la mèrejm
(référence dans GENEALOGY_BASE)probg(chr,igeno)
donne la probabilité du genotype maternel référencé parigeno
dans le tableaungenom
ngend(chr,igeno)+1
donne le premier pour utiliser les tableauxpdd
etndesc
ndesc(chr,id)
donne la correspondance de l'individuid
dans le type GENEALOGY_BASE
Structure concernant les probabilités de transmissions des segments parentaux¶
- le tableau
prot(ich,ll,kd,icas)
donne pour un individukd
référencé par la structure GENEALOGY_BASE, la probabilité duicas
type de transmission au marqueurll
porté sur le chromosomeich
- le tableau
pdd(ich,id,icas,ipo)
donne pour un individuid
référencé par une valeurid
du tableaungend
, la probabilité duicas
type de transmission à la positionipo
porté sur le chromosomeich
Parcours des génotypes possibles des mères et des probabilités de transmissions des segments parentaux des descendants¶
do ip=1,dataset%genea%np !// pour tous les peres du dispositif do jm=nmp(ip)+1,nmp(ip+1) !// pour les mères associés au pere ip do igeno=spt%ngenom(chr,jm)+1,spt%ngenom(chr,jm+1) !// Pour tous les possibilités de génotype pour la mere jm sur le choromosome chr print *,probg(chr,igeno) !// est la probabilité du genotype courant de la mère jm do id=spt%ngend(chr,ig)+1,spt%ngend(chr,ig+1) !// Pour tous les indices associés aux descendants kd=spt%ndesc(chr,id) !// kd est l'individus référencé par la structure GENEALOGY_BASE print *,pdd(chr,id,1,1) !// est la proba de transmission de l'individus kd sur la premiere position du chromosome chr !// d'avoir recu le 1er allele de son pere et le 1er allele de sa mere end do end do end do end do