Calcolatore di miscela termica
Mescolando 100 g a 80 °C con 200 g a 20 °C, entrambi con calore specifico 4,184, la miscela si assesta a 40 °C. Si inseriscono due masse, due calori specifici e due temperature per ottenere la temperatura finale comune con tutti i passaggi. Gratis nel browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- M1
- 100
- C1
- 4,184
- T1
- 80
- M2
- 200
- C2
- 4,184
- T2
- 20
- Temperatura finale
- 40
- Temperatura di equilibrio
- 40
Un calcolatore di temperatura di miscela risponde a una domanda classica di calorimetria: se Lei mette a contatto termico due corpi o campioni di fluido e attende, a quale unica temperatura si stabilizzano? Inserisca massa, calore specifico e temperatura iniziale di ciascuna sostanza; lo strumento restituisce la temperatura di equilibrio adiabatico Tf uguale a (m1 c1 T1 più m2 c2 T2) su (m1 c1 più m2 c2), insieme ai pesi di capacità termica, a una breve stringa di formula e alla sostituzione passo passo che può copiare in compiti o test unitari. La capacità termica totale zero (entrambe le masse nulle) è pure rifiutata così il solver non divide mai per zero. Preparazione di laboratorio, controlli di intuizione a scala da cucina e valori attesi di coding-kata hanno tutti bisogno di quello stesso risultato di energia conservata senza aprire una suite termodinamica completa.
Cosa significa l'equilibrio termico dopo la miscela
Quando due sostanze che possono scambiare calore sono messe a contatto e isolate dall'ambiente, la conservazione dell'energia richiede che il calore perso dal corpo più caldo uguagli il calore guadagnato dal più freddo finché entrambi condividono una temperatura comune. Ponendo a zero la somma di quei termini di calore per due sostanze si ottiene la formula chiusa Tf uguale alla media ponderata per massa e capacità termica delle due temperature iniziali: numeratore m1 c1 T1 più m2 c2 T2, denominatore m1 c1 più m2 c2.
Quel risultato è indipendente da quale corpo parta più caldo; l'algebra è la stessa sia che si pensi al calore che scorre da sinistra a destra o viceversa. Le unità di temperatura devono coincidere per entrambe le entrate — Celsius con Celsius, kelvin con kelvin o Fahrenheit con Fahrenheit — perché la formula è affine-invariante su un'unica scala lineare di temperatura ma non è un convertitore di unità.
Anche le unità di massa devono coincidere tra m1 e m2, e le unità di calore specifico devono essere coerenti con quelle masse e temperature affinché m c abbia unità di energia per temperatura. Il percorso di controllo ricalcola la media ponderata con lo stesso arrotondamento fisso usato per i campi pubblicati, così una risposta di successo porta sempre passi che Lei può asserire in test o fogli di lavoro.
Consigli pratici, limiti e ricerche correlate
Tenga le entrate entro l'intervallo assoluto pubblicato affinché i prodotti m c T non trabocchino in un numeratore non finito che il solver deve rifiutare. Preferisca inviare numeri piuttosto che stringhe preformattate quando controlla il client; le stringhe numeriche sono accettate solo se corrispondono a un pattern numerico finito rigoroso. Usi la stessa scala di temperatura per entrambi i campioni e converta prima se i dati sorgente mescolano Celsius e kelvin.
Questa pagina mira a chi cerca un calcolatore di temperatura di miscela, temperatura di equilibrio dopo la miscela, o calorimetria a due sostanze online; non è un miscelatore multi-corpo con tre o più correnti, non è un calcolatore di cambiamento di fase o calore latente, e non è un convertitore di sole unità di temperatura.
Preferisca questa capacità quando ha già due masse, due calori specifici e due temperature iniziali e le serve solo l'equilibrio adiabatico; se il problema implica ghiaccio che fonde o ebollizione, risolva prima le fasi di calore latente separatamente.
Casi d'uso
Controlli compiti di calorimetria
Gli studenti inseriscono due masse, calori specifici e temperature iniziali da problemi di miscela del libro e confrontano Tf e medie ponderate scritte a mano con un risultato deterministico prima di consegnare.
Test unitari per solver termici degli studenti
Generi casi noti a masse uguali, masse disuguali e c diversi più rifiuti deliberati di massa negativa per i valori attesi di coding kata.
Preparazione di laboratorio e intuizione di processo
Stimi rapidamente la temperatura dopo la miscelazione di due correnti di processo o campioni di laboratorio quando i calori specifici sono approssimativamente costanti e la perdita di calore è trascurabile.
Domande frequenti
Quale formula usa il calcolatore di temperatura di miscela?
In condizioni adiabatiche con calori specifici costanti e senza cambiamento di fase, Tf = (m1·c1·T1 + m2·c2·T2) / (m1·c1 + m2·c2). È la media ponderata per capacità termica delle due temperature iniziali.
Cosa succede se una massa è negativa?
La massa negativa non è fisicamente valida in questo modello.
Le unità di temperatura contano?
Entrambe le temperature devono usare la stessa scala lineare (°C con °C, K con K, o °F con °F). Il calcolatore non converte tra unità di temperatura.
Gestisce la fusione del ghiaccio o l'ebollizione?
No. Assume calori specifici costanti e senza cambiamento di fase. Risolva separatamente le fasi di calore latente se un campione attraversa un punto di fusione o ebollizione.
Il calcolatore di temperatura di miscela è gratuito?
Lo strumento del browser è gratuito e gira in locale.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/thermo/final-temperature-mixing \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"m1":100,"c1":4.184,"t1":80,"m2":200,"c2":4.184,"t2":20}'const res = await fetch("https://api.kit.forhosting.com/thermo/final-temperature-mixing", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"m1": 100,
"c1": 4.184,
"t1": 80,
"m2": 200,
"c2": 4.184,
"t2": 20
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/thermo/final-temperature-mixing",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"m1": 100,
"c1": 4.184,
"t1": 80,
"m2": 200,
"c2": 4.184,
"t2": 20
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/thermo/final-temperature-mixing", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"m1":100,"c1":4.184,"t1":80,"m2":200,"c2":4.184,"t2":20}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"m1":100,"c1":4.184,"t1":80,"m2":200,"c2":4.184,"t2":20}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/thermo/final-temperature-mixing", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"m1": 100,
"c1": 4.184,
"t1": 80,
"m2": 200,
"c2": 4.184,
"t2": 20
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "thermo.final_temperature_mixing",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_abs | 1000000000000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
La massa negativa è rifiutata con un chiaro errore invalid_input perché non ha senso fisico in questo modello. Il percorso è aritmetica pura deterministica — senza rete, senza semi casuali, senza dipendenza dall'orologio — così l'esecutore gratuito del browser e l'API prepagata restituiscono lo stesso JSON dopo l'arrotondamento decimale fisso a ogni chiamata.
Cosa significa l'equilibrio termico dopo la miscela
Nel modello standard a calore specifico costante senza cambiamento di fase, il calore scambiato dalla sostanza i è m_i per c_i per la variazione della sua temperatura. Docenti e valutatori automatici curano il rifiuto di massa negativa quanto il percorso di successo: uno studente che digita un meno per sbaglio deve vedere un messaggio invalid_input esplicito piuttosto che una temperatura silenziosamente assurda.
Come chiamare l'API e cosa torna indietro
Le masse non devono essere negative; i calori specifici devono essere strettamente positivi; la capacità termica combinata m1 c1 più m2 c2 deve essere positiva così entrambe le masse non possono essere zero insieme. Invii un corpo JSON con sei numeri finiti obbligatori: m1 (alias mass1 e mass_1), c1 (alias specific_heat1, cp1 e heat_capacity1), t1 (alias T1, temp1 e temperature1), m2 (alias mass2 e mass_2), c2 (alias specific_heat2, cp2 e heat_capacity2), e t2 (alias T2, temp2 e temperature2). I valori assoluti devono restare entro il limite pubblicato di un trilione così i prodotti intermedi restano finiti in doppia precisione IEEE sul Worker e nel browser. In caso di successo la risposta restituisce m1, c1, t1, m2, c2 e t2 arrotondati, imposta final_temperature e equilibrium_temperature allo stesso Tf arrotondato, formula alla stringa Tf uguale a (m1 c1 T1 più m2 c2 T2) su (m1 c1 più m2 c2), message a un breve riepilogo in inglese e steps a un array ordinato di righe di sostituzione. Validazione fallita — campi mancanti, numeri non finiti, valori fuori limiti assoluti, massa negativa, calore specifico non positivo o capacità termica totale zero — restituisce invalid_input e non viene mai addebitata. Il prezzo è un flat $0.002 per richiesta riuscita con elemento unitario e prezzo marginale unitario zero.
Consigli pratici, limiti e ricerche correlate
Nell'insegnare, accoppi esempi: masse uguali dello stesso fluido a ottanta e venti gradi danno un punto medio di cinquanta; masse disuguali pesano il risultato verso il campione più grande; calori specifici diversi (ad esempio acqua contro olio) pesano verso il prodotto di capacità termica più alto; e una massa deliberatamente negativa dimostra il percorso duro di invalid_input. I task falliti che restituiscono invalid_input non consumano saldo prepagato, il che mantiene economici gli script esplorativi quando gli allievi inviano di proposito masse sbagliate. I controlli andata-ritorno sono facili: ricalcoli la media ponderata a mano e confermi che uguaglia il final_temperature pubblicato nello stesso arrotondamento a dodici decimali, e confermi che scambiare le etichette uno e due lascia Tf invariato.