Calcolatore Runge-Kutta 4 a passo singolo
Questo calcolatore Runge-Kutta 4 a passo singolo fa avanzare un’equazione differenziale del primo ordine da un punto noto a quello successivo.
Esegui gratis nel browser
Inserisca la derivata come f(x, y), le coordinate iniziali e un passo diverso da zero. Il risultato mostra k1, k2, k3 e k4 come stime della pendenza, i punti intermedi in cui vengono valutate, la loro media ponderata e l’approssimazione RK4 finale. Il procedimento completo consente a Lei di controllare un esercizio, convalidare un risolutore numerico o documentare un passo senza nascondere i calcoli.
Descriva con chiarezza il problema ai valori iniziali
Parta da un’equazione del primo ordine scritta come y' = f(x, y). Nel campo dell’espressione inserisca soltanto il membro destro, usando x e y come variabili indipendente e dipendente. Per esempio, se y' = x + y, scriva x + y. Il parser supporta l’aritmetica ordinaria, le parentesi, le potenze indicate con ^, le costanti pi ed e e funzioni comuni quali sin, cos, exp, log e sqrt. Fornisca poi il punto noto (x, y) e il passo h. Un h positivo procede verso destra, mentre un h negativo esegue la stessa costruzione RK4 all’indietro. Il passo non può essere zero, poiché la soluzione non avanzerebbe. Tutti gli ingressi numerici e ogni valore delle funzioni devono essere finiti. La moltiplicazione deve essere esplicita: scriva 2*x invece di 2x. Questo formato preciso evita che un’etichetta dell’equazione o una moltiplicazione implicita venga interpretata in modo indesiderato e rende riproducibili le quattro valutazioni.
Segua le quattro stime della pendenza
Il calcolatore riporta da k1 a k4 come pendenze, secondo la convenzione k1 = f(x, y), non come incrementi già moltiplicati per h. Per prima cosa, k1 usa il punto iniziale. La seconda stima usa il punto medio x + h/2 e ne prevede la coordinata y con h*k1/2. La terza rimane nel punto medio, ma sostituisce tale previsione con h*k2/2, correggendo la direzione mediante la seconda pendenza. Infine, k4 valuta la derivata in x + h con una previsione di y a passo intero basata su k3. I campi restituiti k2_point, k3_point e k4_point mostrano direttamente queste coordinate di valutazione. La distinzione è importante perché alcuni manuali usano gli stessi simboli k per indicare h volte ogni pendenza. Se la Sua fonte adotta tale convenzione alternativa, moltiplichi ogni valore k visualizzato per h prima di confrontare le singole fasi. L’approssimazione finale di y non cambia quando si applica coerentemente la formula corrispondente.
Interpreti l’aggiornamento ponderato e i suoi limiti
RK4 combina le pendenze come (k1 + 2*k2 + 2*k3 + k4)/6, assegnando alle due stime del punto medio un peso doppio rispetto a quelle degli estremi. Il calcolatore restituisce questa quantità come weighted_slope, quindi calcola y_next = y + h*weighted_slope e x_next = x + h. Un passo RK4 è accurato al quarto ordine nel consueto senso locale per una derivata sufficientemente regolare, ma ciò non garantisce che qualsiasi passo scelto sia abbastanza piccolo. Un problema che varia rapidamente, singolare, discontinuo o stiff può richiedere un h molto minore o un metodo con controllo dell’errore. Questo strumento esegue intenzionalmente un solo passo fisso: non stima l’errore di troncamento, non adatta il passo e non risolve un intervallo. Per valutare la sensibilità, confronti un passo di ampiezza h con due passi successivi di ampiezza h/2 in un risolutore completo. Usi le fasi mostrate per individuare differenze dovute all’espressione, all’arrotondamento o alla convenzione sulle pendenze.
Casi d'uso
Controllare un esercizio del manuale
Verifichi ogni pendenza RK4 intermedia e la successiva approssimazione di y, non soltanto il numero finale.
Correggere un risolutore numerico
Confronti un passo noto, compresi gli stati intermedi, con un foglio di calcolo, uno script o una simulazione.
Documentare un calcolo ingegneristico
Registri le quattro valutazioni deterministiche della derivata e l’aggiornamento ponderato che fa avanzare il modello.
Domande frequenti
Quanto costa un calcolo tramite API?
Una richiesta API costa $0.002. Il calcolatore nel browser viene eseguito localmente ed è gratuito.
k1, k2, k3 e k4 sono pendenze o incrementi?
Sono pendenze, ossia valori diretti di f(x, y). Le moltiplichi per h se il Suo riferimento definisce ogni k come incremento.
Il passo può essere negativo?
Sì. Un passo negativo finito applica le stesse formule RK4 per avanzare verso un valore di x inferiore.
Quale sintassi delle espressioni è supportata?
Usi x, y, numeri, pi, e, parentesi, +, -, *, /, ^ e funzioni supportate a un argomento come sin, cos, exp, log e sqrt.
Il calcolatore risolve l’equazione su un intervallo?
No. Esegue esattamente un passo RK4 fisso dal punto iniziale fornito e non sceglie il passo né stima l’errore.
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/calculus/rk4-single-step \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"expression":"x + y","x":0,"y":1,"step_size":0.1}'const res = await fetch("https://api.kit.forhosting.com/calculus/rk4-single-step", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"expression": "x + y",
"x": 0,
"y": 1,
"step_size": 0.1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/calculus/rk4-single-step",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"expression": "x + y",
"x": 0,
"y": 1,
"step_size": 0.1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/calculus/rk4-single-step", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"expression":"x + y","x":0,"y":1,"step_size":0.1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"expression":"x + y","x":0,"y":1,"step_size":0.1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/calculus/rk4-single-step", 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
{
"expression": "x + y",
"x": 0,
"y": 1,
"step_size": 0.1
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "calculus.rk4_single_step",
"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_chars | 500 |
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. |