Calculateur du rapport AT/GC selon les bases de l’ADN
Le calculateur du rapport AT/GC compare la somme de l’adénine et de la thymine à celle de la guanine et de la cytosine dans une molécule d’ADN.
Lancer gratuitement
Saisissez les quatre décomptes pour obtenir les totaux AT et GC, le quotient numérique, un rapport simplifié et le pourcentage de chaque groupe. Ce calcul déterministe permet de contrôler rapports, exercices et données génomiques sans transmettre toute la séquence.
Ce que représente le rapport AT/GC
La composition de l’ADN est souvent résumée en regroupant l’adénine avec la thymine, puis la guanine avec la cytosine. L’outil additionne A+T et G+C, puis divise le premier total par le second. Une valeur de 1 signifie que les quantités sont égales ; au-dessus de 1, AT domine, et en dessous, GC domine. `at_gc_ratio_text` réduit la relation à des entiers : 60 et 40 donnent 3:2. Les pourcentages prennent les quatre bases comme total et valent ensemble 100, sous réserve de l’arrondi. Ils décrivent la composition, pas la position des bases, les gènes ou les régions régulatrices.
Saisir et interpréter les décomptes
Indiquez quatre entiers positifs ou nuls dans `adenine`, `thymine`, `guanine` et `cytosine`. Employez zéro lorsqu’une base est absente, sans omettre de champ. Le calculateur produit `at_count`, `gc_count` et `total_bases`, arrondit le quotient à douze décimales au maximum et conserve le rapport entier exact. Quatre zéros ne définissent aucune composition. Si GC vaut zéro, la division est indéfinie et la requête renvoie une erreur plutôt qu’une valeur infinie trompeuse.
Périmètre, hypothèses et bon usage
Utilisez cet outil si vous disposez déjà du décompte des quatre bases canoniques. Il ne lit ni FASTA, ni FASTQ, ni séquence brute et ne classe pas les symboles ambigus N, R ou Y. Il ne déduit pas non plus température de fusion, stabilité, fonction, organisme ou diagnostic. Pour comparer des échantillons, appliquez la même méthode et documentez le traitement des bases ambiguës. Ce calcul convient à l’enseignement, aux contrôles reproductibles et aux pipelines légers ; seul, il ne justifie aucune conclusion biologique ou clinique.
Cas d’usage
Contrôler un rapport de composition
Transformez les décomptes A, T, G et C en totaux et rapport AT/GC vérifiables.
Comparer des échantillons d’ADN
Produisez les mêmes champs pour des échantillons comptés selon une méthode commune.
Enseigner la composition nucléotidique
Montrez comment quatre décomptes deviennent totaux, rapport et pourcentages.
Questions fréquentes
Quel est le prix du calcul par API ?
Chaque requête coûte $0.002. Le même calcul déterministe fonctionne aussi dans le navigateur.
Comment le rapport AT/GC est-il calculé ?
Le calculateur additionne adénine et thymine, puis guanine et cytosine, et divise le premier total par le second.
Pourquoi refuser un total GC nul ?
GC est le dénominateur ; une division par zéro ne définit aucun rapport fini.
Puis-je saisir des pourcentages ?
Non. Saisissez quatre entiers positifs ou nuls ; l’outil calcule les pourcentages.
L’outil compte-t-il les bases d’une séquence ?
Non. Il utilise des décomptes existants et ne traite ni séquence, ni FASTA, ni FASTQ.
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/at-gc-ratio \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"adenine":30,"thymine":30,"guanine":20,"cytosine":20}'const res = await fetch("https://api.kit.forhosting.com/bio/at-gc-ratio", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"adenine": 30,
"thymine": 30,
"guanine": 20,
"cytosine": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/bio/at-gc-ratio",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"adenine": 30,
"thymine": 30,
"guanine": 20,
"cytosine": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/bio/at-gc-ratio", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"adenine":30,"thymine":30,"guanine":20,"cytosine":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"adenine":30,"thymine":30,"guanine":20,"cytosine":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/bio/at-gc-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
{
"adenine": 30,
"thymine": 30,
"guanine": 20,
"cytosine": 20
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "bio.at_gc_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. |