Croisement de codominance
Deux bovins rouans RW donnent des veaux dans un rapport 1:2:1, 25 % roux, 50 % rouans et 25 % blancs, car l'hétérozygote codominant exprime les deux allèles. Saisissez le génotype de chaque parent pour obtenir les proportions. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Parent 1
- RW
- Parent 2
- RW
- Phénotype aa
- red
- Phénotype bb
- white
- Phénotype ab
- roan
- Croisement
- RW × RW
- Allèle a
- R
- Hérédité
- codominance
- Taille du carré
- 4
Un calculateur de rapport de croisement en codominance transforme deux génotypes parentaux d’un unique locus biallélique en les rapports phénotypique et génotypique de la descendance que l’on lit sur un échiquier de Punnett. Contrairement à la dominance complète, où l’hétérozygote ressemble à l’homozygote dominant, les deux allèles s’expriment ensemble : les bovins qui héritent d’allèles rouge et blanc sont rouans, et les personnes qui héritent des allèles M et N du groupe sanguin sont typées MN. Saisissez le génotype diploïde de chaque parent, étiquetez au besoin les deux homozygotes et l’hétérozygote, et l’outil énumère les quatre appariements de gamètes également probables, regroupe les génotypes identiques, associe chaque classe à son phénotype codominant et renvoie des rapports réduits, des fractions et des pourcentages.
Ce qu’est un croisement de codominance et pourquoi le rapport n’est pas 3:1
La codominance est un schéma d’hérédité à un seul locus dans lequel l’hétérozygote exprime les deux allèles à la fois au lieu d’en masquer un. Les images classiques de cours sont les bovins Shorthorn, où RR est rouge, WW est blanc et RW est rouan avec des poils rouges et blancs visibles, et le système du groupe sanguin MN, où MM, NN et MN sont trois types distinguables.
Comme l’hétérozygote constitue son propre phénotype, un échiquier de Punnett monohybride ne s’effondre pas dans le rapport phénotypique 3:1 de la dominance complète. Deux hétérozygotes produisent quatre zygotes également probables —homozygote du premier allèle, deux hétérozygotes, homozygote du second allèle—, si bien que le rapport génotypique et le rapport phénotypique se réduisent à 1:2:1. Un hétérozygote croisé avec un homozygote donne un mélange 1:1 d’hétérozygotes et de cet homozygote.
Deux homozygotes différents ne donnent que des hétérozygotes. Deux homozygotes identiques ne donnent qu’une seule classe. Ce calculateur se limite à un locus diploïde d’au plus deux allèles distincts : chaque parent apporte exactement deux symboles d’allèle, les quatre appariements de gamètes sont énumérés, les allèles à l’intérieur d’un génotype s’écrivent dans un ordre lexicographique stable afin que RW et WR comptent comme la même classe, et les classes phénotypiques inutilisées sont omises du rapport au lieu d’être comblées de zéros.
La dominance incomplète, où l’hétérozygote est un mélange intermédiaire comme des fleurs roses, est une autre intention de recherche et n’est pas réaffectée ici ; les étiquettes que vous fournissez sont enregistrées telles quelles afin qu’un registre de troupeau rouan et une fiche de sérologie MN partagent le même moteur.
Contrat d’entrée, forme de la réponse et erreurs
Chaque valeur est une chaîne de deux lettres comme RW, MN ou AB, ou deux jetons d’allèle séparés par une barre, un signe plus ou un espace comme R/W ou IA/IB. Les symboles d’allèle commencent par une lettre et peuvent continuer par des lettres ou des chiffres, si bien que les allèles d’élevage d’une lettre et les allèles de groupe sanguin de deux lettres sont tous deux analysés.
Une chaîne qui n’a pas exactement deux allèles, un allèle qui échoue au motif de symbole, une étiquette de plus de quarante caractères ou un croisement qui introduit un troisième allèle distinct sont également rejetés. Ces échecs ne sont pas facturés. Associez les enregistrements à votre propre code de dessin si vous avez besoin d’un échiquier imprimé ; ce point de terminaison ne résout que les comptes.
Où ce calculateur de codominance est utile
Les salles de biologie et les plateformes de tutorat utilisent un calculateur Punnett de codominance afin que les apprenants vérifient une fiche rouane ou MN 1:2:1 sans inverser quelle classe est l’hétérozygote. Les générateurs de préparation d’examens ont besoin d’un oracle déterministe qui refuse un collage à trois allèles au lieu d’inventer en silence un rapport qu’un correcteur défectueux pourrait accepter. Une validation échouée ne consomme pas le solde.
Gardez les génotypes à deux allèles, figez les chaînes de rapport réduit dans les tests, et vous obtenez des résultats reproductibles 1:2:1, 1:1 et 1 pour les devoirs, les greffons LMS et les fiches d’élevage sans pile d’algèbre formelle. Les recherches voisines de dominance incomplète ou d’un échiquier dihybride 9:3:3:1 sont d’autres intentions : restez sur cette page lorsque les deux allèles doivent rester visibles chez l’hétérozygote, et utilisez un outil dédié de dominance ou à deux locus dans le cas contraire.
Cas d’usage
Contrôles scolaires de Punnett pour le rouan et MN
Les élèves envoient deux génotypes parentaux et comparent le rapport phénotypique réduit 1:2:1 ou 1:1 à un échiquier dessiné à la main avant le compte rendu de laboratoire.
Fiches de couleur en élevage
Les notes d’élevage de bovins rouges, blancs et rouans obtiennent un décompte à quatre cellules sans ouvrir une application de pedigree pour un seul locus de robe.
Questions fréquentes
En quoi cela diffère-t-il de la dominance complète ?
Sous dominance complète l’hétérozygote correspond à un homozygote et le rapport phénotypique monohybride est 3:1. Sous codominance l’hétérozygote est distinct, si bien que deux hétérozygotes donnent 1:2:1 tant au génotype qu’au phénotype.
Quels formats de génotype sont acceptés ?
Des chaînes de deux lettres comme RW, MN et AB, ou deux jetons avec barre, plus ou espace comme R/W et IA/IB. Chaque parent doit avoir exactement deux allèles et le croisement au plus deux allèles distincts.
Puis-je nommer les phénotypes rouge, blanc et rouan ?
Les valeurs par défaut sont le premier allèle, le second allèle, et premier+second pour l’hétérozygote.
Que donnent deux parents homozygotes de types différents ?
Uniquement des hétérozygotes. En croisant un animal roux RR avec un blanc WW, par exemple, tous les descendants sont rouans, car chacun reçoit un allèle de chaque sorte et les exprime tous les deux.
Quel rapport donne un hétérozygote croisé avec un homozygote ?
Un mélange 1:1 d'hétérozygotes et de cet homozygote. Un rouan RW croisé avec un roux RR, par exemple, donne moitié de descendants rouans et moitié de roux.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/bio/codominance-cross-ratio \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"parent1":"RW","parent2":"RW"}'const res = await fetch("https://api.kit.forhosting.com/bio/codominance-cross-ratio", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"parent1": "RW",
"parent2": "RW"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/bio/codominance-cross-ratio",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"parent1": "RW",
"parent2": "RW"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/bio/codominance-cross-ratio", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"parent1":"RW","parent2":"RW"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"parent1":"RW","parent2":"RW"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/bio/codominance-cross-ratio", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"parent1": "RW",
"parent2": "RW"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "bio.codominance_cross_ratio",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Le même module déterministe alimente l’exécuteur gratuit du navigateur et l’API, de sorte que les vérifications de devoirs et les scripts de notation ne divergent jamais sur un partage 1:2:1 ou 1:1.
Contrat d’entrée, forme de la réponse et erreurs
Envoyez un corps JSON avec deux génotypes diploïdes obligatoires, parent1 et parent2 (alias genotype1, p1, first_parent et genotype2, p2, second_parent). Les champs facultatifs phenotype_aa, phenotype_bb et phenotype_ab remplacent les étiquettes par défaut : le premier allèle par ordre lexicographique pour son homozygote, le second allèle pour son homozygote, et premier-plus-second pour l’hétérozygote. Les génotypes manquants, vides ou non textuels échouent avec invalid_input en nommant le champ. En cas de succès le corps répète les génotypes parentaux canoniques et une chaîne de croisement, nomme allele_a et, le cas échéant, allele_b, fixe inheritance à codominance, indique square_size et offspring_total de quatre, et publie phenotype_ratio et genotype_ratio comme comptes réduits séparés par des deux-points. phenotypes et genotypes sont des tableaux d’enregistrements avec genotype, phenotype, count, total, fraction et percent ; punnett dresse les quatre cellules avec les gamètes contributeurs. Exemple : parent1 RW, parent2 RW, phenotype_aa red, phenotype_bb white, phenotype_ab roan donne phenotype_ratio 1:2:1 et les pourcentages 25, 50, 25.
Où une API de rapport de codominance rend service
Les registres d’élevage de couleur Shorthorn ou Belgian Blue et les modules pédagogiques de banque de sang du système MN se réduisent au même échiquier biallélique ; appeler une petite API de parse évite de dresser un moteur de pedigree complet pour un seul locus. Comme l’implémentation est du parse pur de niveau A, chaque appel réussi coûte le tarif de base publié $0.002 sans jetons de modèle ni réseau sortant.
Cas d'intégration
Oracles d’examen et fixtures de kata de code
Les correcteurs et les solveurs génétiques d’étudiants figent les rapports phénotypiques attendus et les cas invalid_input pour des chaînes de génotype à trois allèles ou mal formées.
Questions techniques
Comment calcule-t-on un rapport phénotypique de codominance à partir de deux parents ?
Envoyez des génotypes diploïdes dans parent1 et parent2 (par exemple RW et RW, ou MN et NN). L’API énumère les quatre cellules de Punnett et renvoie phenotype_ratio et genotype_ratio réduits, plus les fractions et pourcentages par classe.
Combien coûte le calculateur de rapport de croisement en codominance ?
L’outil du navigateur est gratuit. Les requêtes API utilisent un solde prépayé à $0.002 par appel réussi ; une entrée invalide n’est pas facturée.