Calculateur concentration réservoir
Un réservoir de volume 100 alimenté à un débit de 5 par une saumure de concentration 2, partant d’eau pure, atteint 0,7869386806 après 10 unités de temps, en route vers la valeur d’entrée 2. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Volume
- 100
- Débit
- 5
- Concentration d'entrée
- 2
- Concentration initiale
- 0
- Temps
- 10
- Concentration
- 0,7869386806
- Quantité de sel
- 78,6938680575
- Concentration d'équilibre
- 2
- Facteur exponentiel
- 0,6065306597
Un réservoir de mélange bien agité avec des débits d'entrée et de sortie égaux est l'équation différentielle linéaire du premier ordre classique du bilan de masse de sel. Étudiants, tuteurs et ingénieurs de procédé ont besoin de la concentration à un instant choisi sans redériver le facteur intégrant à chaque devoir ou séance de travaux pratiques. Ce calculateur de concentration en réservoir de mélange accepte le volume du réservoir, le débit volumétrique, la concentration d'entrée, la concentration initiale et le temps écoulé, puis renvoie la concentration en forme fermée C(t), la quantité de sel Q égale à C fois V, la concentration d'équilibre et le facteur exponentiel de décroissance qui multiplie l'écart initial par rapport à la force d'entrée.
Modèle de mélange à volume constant et forme fermée de C(t)
Supposez un réservoir de volume fixe V parfaitement mélangé, de sorte que la concentration de sortie égale toujours la concentration instantanée du réservoir C(t). La masse de sel Q(t) vaut C(t) fois V. C'est une équation différentielle ordinaire linéaire du premier ordre à coefficients constants.
Si le débit est nul, le facteur exponentiel vaut un pour tout temps fini et le réservoir conserve simplement C0 inchangé. Le temps de séjour hydraulique τ vaut V sur r lorsque r est positif ; après quelques multiples de τ le réservoir a largement oublié la condition initiale et se situe près de la concentration d'entrée.
Cette capacité évalue cette forme fermée à un seul instant demandé ; elle n'intègre pas numériquement pas à pas, ne traite ni le volume variable ni des débits d'entrée et de sortie inégaux, et ne modélise pas le mélange incomplet.
Où ce modèle de réservoir sert
Les cours d'équations différentielles proposent des problèmes de réservoir de sel chaque semestre : de l'eau pure qui rince un réservoir de saumure, ou une saumure plus forte alimentant un réservoir qui commence sans sel. Les apprenants ont besoin d'un oracle déterministe qui correspond à la forme fermée du manuel pour vérifier l'algèbre sans attendre les heures de permanence.
Les systèmes de gestion de l'apprentissage peuvent noter des réponses numériques libres en comparant celles de l'étudiant à ce point de terminaison dans une tolérance, en rejetant les temps négatifs et les volumes nuls comme invalides plutôt que des clés fausses en silence. Une entrée invalide n'est pas facturée. Gardez les requêtes petites, épinglez les champs arrondis dans les tests, et vous obtenez des concentrations reproductibles pour les devoirs, les plugins LMS et les workers de bord sans monter votre propre infrastructure de calcul symbolique.
Cas d’usage
Notation automatique LMS des items de réservoir de sel
Comparez les réponses de l'apprenant à la concentration et à la quantité de sel déterministes, et traitez un temps négatif ou un volume non positif comme entrée invalide plutôt qu'un faux accord numérique.
Carnets de procédé et d'environnement
Estimez à quel point un réservoir agité continu se rapproche de la concentration d'entrée après un temps de fonctionnement lorsque l'entrée égale la sortie et le mélange est idéal.
Questions fréquentes
Quelles hypothèses le modèle utilise-t-il ?
Volume de réservoir constant (débit d'entrée égal au débit de sortie), mélange parfait de sorte que la concentration de sortie égale celle du réservoir, et concentration d'entrée constante. Le volume variable et les réservoirs multi-entrées sont hors périmètre.
Que se passe-t-il lorsque le débit est nul ?
Le facteur exponentiel vaut 1 pour tout t fini, donc la concentration reste à la valeur initiale C0.
Quelle concentration atteint un réservoir de volume 100 après 10 unités de temps ?
Avec un débit de 5, une concentration d’entrée de 2 et un départ à 0, il atteint 0,7869386806 et contient donc 78,6938680575 unités de sel. Le facteur exponentiel restant vaut 0,6065306597.
Vers quelle concentration le réservoir tend-il à long terme ?
Vers la concentration d’entrée, qui est l’équilibre affiché par le calculateur. Le rapport entre volume et débit, 20 dans l’exemple, est le temps de séjour ; après quelques multiples, la valeur de départ ne compte presque plus.
Quelles unités faut-il utiliser ?
N’importe quel système cohérent. Le volume et le débit multiplié par le temps doivent partager la même unité de volume, les deux concentrations la même unité de masse par volume, et le temps doit correspondre à celui du débit.
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/calculus/mixing-tank-concentration \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"volume":100,"flow_rate":5,"inlet_concentration":2,"initial_concentration":0,"time":10}'const res = await fetch("https://api.kit.forhosting.com/calculus/mixing-tank-concentration", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"volume": 100,
"flow_rate": 5,
"inlet_concentration": 2,
"initial_concentration": 0,
"time": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/calculus/mixing-tank-concentration",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"volume": 100,
"flow_rate": 5,
"inlet_concentration": 2,
"initial_concentration": 0,
"time": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/calculus/mixing-tank-concentration", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"volume":100,"flow_rate":5,"inlet_concentration":2,"initial_concentration":0,"time":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"volume":100,"flow_rate":5,"inlet_concentration":2,"initial_concentration":0,"time":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/calculus/mixing-tank-concentration", 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
{
"volume": 100,
"flow_rate": 5,
"inlet_concentration": 2,
"initial_concentration": 0,
"time": 10
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "calculus.mixing_tank_concentration",
"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
Une validation échouée n'est pas facturée ; les appels réussis utilisent le prix de base publié $0.002 sans jetons de modèle ni réseau sortant.
Modèle de mélange à volume constant et forme fermée de C(t)
Le liquide entre au débit volumétrique r avec une concentration de sel dissous c_in et sort au même débit r, si bien que le volume ne change pas. Le bilan de masse affirme que le taux de variation du sel est sel entrant moins sel sortant : dQ/dt vaut r fois c_in moins r fois C, c'est-à-dire r fois c_in moins (r sur V) fois Q. En séparant les variables ou en utilisant un facteur intégrant, on obtient Q(t) égal à V fois c_in plus (Q0 moins V fois c_in) fois exp de moins r t sur V. En divisant par V on obtient la formule de concentration utilisée ici : C(t) égal à c_in plus (C0 moins c_in) fois exp de moins r t sur V, où C0 est la concentration initiale du réservoir. Lorsque t tend vers l'infini l'exponentielle s'annule et C s'approche de c_in, l'équilibre naturel d'une alimentation continue de force fixe. Si C0 égale déjà c_in, le terme exponentiel est multiplié par zéro et la concentration est constante pour tout t.
Contrat d'entrée, champs de réponse et règles de validation
Un entier optionnel precision de zéro à quinze fixe les décimales des sorties numériques et vaut dix par défaut. Un volume, un débit, des concentrations ou un temps négatifs échouent aussi avec des messages clairs, car ils brisent le modèle physique ou le domaine de l'exponentielle. Tous les nombres sont arrondis avec des décimales fixes pour des goldens stables entre runtimes. Exemple : volume cent, débit cinq, concentration d'entrée deux, concentration initiale zéro, temps dix produit un facteur exponentiel d'environ zéro virgule six zéro sept et une concentration d'environ zéro virgule sept huit sept dans la même unité de masse par volume que vous avez utilisée pour les entrées. Envoyez un corps JSON avec cinq nombres finis obligatoires : volume (volume positif du réservoir V), flow_rate (débit volumétrique non négatif r avec entrée égale à la sortie), inlet_concentration (force de sel d'entrée non négative c_in), initial_concentration (concentration non négative du réservoir C0 à t égal à zéro) et time (temps écoulé non négatif t). Chaque champ peut arriver comme nombre JSON ou chaîne décimale ; des alias tels que V, r, c_in, C0 et t sont acceptés pour que les carnets utilisent les symboles du manuel. Champs manquants, chaînes vides, NaN, Infinity et magnitudes au-delà de un fois dix à la quinze échouent avec invalid_input en nommant le champ. En cas de succès le corps renvoie les entrées arrondies, concentration C(t), salt_amount Q égal à C fois V, equilibrium_concentration égal à c_in, exponential_factor égal à exp de moins r t sur V, method valant mixing_tank_first_order, la chaîne formula, un court unit_note et, lorsque r est positif, le time_constant fini τ égal à V sur r. Lorsque r est nul le champ time_constant est omis pour que le client ne voie jamais un null JSON pour l'infini.
Où une API de concentration en réservoir de mélange apporte de la valeur
Les carnets d'ingénierie chimique et environnementale estiment combien de temps un réservoir agité continu met pour approcher une limite de rejet lorsque la concentration d'alimentation est fixe ; appeler une petite API parse évite de lancer un solveur ODE complet pour une seule exponentielle. Comme l'implémentation est pure parse de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant.
Cas d'intégration
Contrôles de devoirs et TP d'EDO
Les étudiants saisissent V, r, c_in, C0 et t pour vérifier C(t) par rapport aux solutions à la main de l'EDO de mélange à volume constant sans retaper le facteur intégrant à chaque fois.
Questions techniques
Comment calculer la concentration du réservoir de mélange au temps t ?
Envoyez un volume positif V, un flow_rate non négatif r, inlet_concentration c_in, initial_concentration C0 et un time non négatif t. L'API renvoie C(t)=c_in+(C0−c_in)·exp(−r·t/V) plus la quantité de sel Q=C·V.
Qu'est-ce que la concentration d'équilibre ?
Lorsque t→∞, C(t) s'approche de la concentration d'entrée c_in. Le champ de réponse equilibrium_concentration égale toujours la valeur d'entrée que vous avez fournie.
Combien coûte le calculateur de concentration en réservoir de mélange ?
L'outil dans le navigateur est gratuit. Les requêtes API utilisent le solde prépayé KIT à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.