DDecayMarsh
Spațiu de programare cu AI

Pași de descreștere Runge–Kutta

Integrează descreșterea exponențială scalară cu cel mult 1000 pași clasici Runge–Kutta și intrări finite limitate.

● ● ●DecayMarsh●
Fluxuri de lucru · Pași de descreștere Runge–Kutta ×
def decay_steps(initial, rate, dt, steps):
    if any(type(v) not in (int, float) for v in (initial, rate, dt)):
        raise ValueError("decay.numeric")
    if not -10**6 <= initial <= 10**6 or not 0 <= rate <= 1000 or not 0 <= dt <= 1 or rate * dt > 1:
        raise ValueError("decay.range")
    if type(steps) is not int or not 0 <= steps <= 1000:
        raise ValueError("decay.steps")
    y = float(initial)
    for _ in range(steps):
        k1 = -rate * y
        k2 = -rate * (y + dt*k1/2)
        k3 = -rate * (y + dt*k2/2)
        k4 = -rate * (y + dt*k3)
        y += dt*(k1 + 2*k2 + 2*k3 + k4)/6
    return y
✳Integrează descreșterea exponențială scalară cu cel mult 1000 pași clasici Runge–Kutta și intrări finite limitate.
✓ ModificăriVerifică înainte de aplicare ↗
Ilustrarea spațiului de lucru
01

Modele

Configurează un endpoint compatibil OpenAI sau Anthropic cu URL-ul de bază și cheia API, dacă este necesară. Testează conexiunea. Serverul local trebuie să ruleze; instrumentele externe pot transmite date separat.

02

Proiect

Testează zero pași și rată zero, respinge rata sau pasul negativ și produsul lor peste unu.

03

Verifică înainte de aplicare

Compară comportamentul real cu rezultatul așteptat. Dacă o verificare eșuează, cercetează cauza înainte de alte modificări.

Fluxuri de lucru

Pași de descreștere Runge–Kutta

Fluxuri de lucru ↗
Fluxuri de lucru
def decay_steps(initial, rate, dt, steps):
    if any(type(v) not in (int, float) for v in (initial, rate, dt)):
        raise ValueError("decay.numeric")
    if not -10**6 <= initial <= 10**6 or not 0 <= rate <= 1000 or not 0 <= dt <= 1 or rate * dt > 1:
        raise ValueError("decay.range")
    if type(steps) is not int or not 0 <= steps <= 1000:
        raise ValueError("decay.steps")
    y = float(initial)
    for _ in range(steps):
        k1 = -rate * y
        k2 = -rate * (y + dt*k1/2)
        k3 = -rate * (y + dt*k2/2)
        k4 = -rate * (y + dt*k3)
        y += dt*(k1 + 2*k2 + 2*k3 + k4)/6
    return y
Spațiu de programare cu AI

Oferă actualizărilor numerice o referință dincolo de rezultate plauzibile

Un rezultat numeric poate părea rezonabil, deși se îndepărtează de comportamentul pe care aplicația vrea să îl modeleze. DecayMarsh oferă un spațiu de lucru Windows pentru programare cu IA, destinat examinării acestui risc în codul sursă. Deschide proiectul și discută regula de actualizare, parametrii acceptați și rezultatul de referință înainte să ceri modelului conectat modificarea implementării.

De exemplu, solicită examinarea unor pași Runge–Kutta cu limite definite pentru un calcul de descreștere. Arată expresiile pantelor și explică intervalul și numărul de pași dorite. Cere modelului să examineze cum intră valorile intermediare în panta următoare, apoi raportează valoarea finală la o referință calculată independent pentru un caz simplu.

Păstrează limita aplicației în cadrul examinării. Limitele parametrilor, zero pași și valorile numerice nevalide necesită un comportament deliberat, mai ales când intrările provin dintr-un formular sau fișier de configurare. Examinează diferențele propuse și rulează verificări pentru cazuri obișnuite și cazuri-limită. Descrie explicit toleranțele de comparație, astfel încât o aserțiune care trece să aibă o semnificație numerică clară.

DecayMarsh acceptă endpointuri de modele compatibile cu OpenAI sau Anthropic, inclusiv un model de IA fără cenzură disponibil. Modelul și serverul selectate determină capacitățile și limitele contextului. Folosește conversația pentru a face vizibile ipotezele și a pregăti modificări, în timp ce execuția proiectului și comparația cu referința stabilesc dacă implementarea îndeplinește cerințele.

O referință dincolo de rezultate plauzibile — întrebări înaintea modificării

Ce referință ar trebui să însoțească examinarea codului de descreștere?

Folosește un caz cu rezultat cunoscut independent și precizează toleranța comparației. Include parametrii și numărul de pași. O a doua implementare copiată din aceleași expresii poate repeta aceeași greșeală în loc să ofere dovezi independente.

Ce ar trebui să returneze zero pași?

Precizează direct contractul și verifică-l în apelant. Pentru o actualizare bazată pe pași, păstrarea valorii inițiale este un caz așteptat util de discutat. Verifică dacă validarea propusă nu respinge accidental o cerere permisă de zero pași.

De ce să examinez pantele intermediare, nu doar rezultatul?

O dependență intermediară incorectă poate produce uneori un număr final plauzibil. Cere modelului să urmărească un caz scurt prin expresii și să îl compare cu sursa. Apoi rulează verificările numerice relevante în mediul tău.

Poate modelul să aleagă toleranța erorii pentru mine?

Poate discuta o propunere, dar toleranța trebuie să reflecte nevoile aplicației și calculul. Documentează regula de comparație aleasă și justificarea sa. Evită acceptarea unui prag arbitrar de permisiv doar pentru că face testul să treacă.

Descarcă pentru Windows ↗

DecayMarsh · Actualizat 2026-10-25