QQuaterelle
Spațiu de programare cu AI

Înmulțirea cuaternionilor Hamilton

Înmulțește doi cuaternioni Hamilton cu patru componente finite în ±10^6 și scalarul primul.

● ● ●Quaterelle●
Fluxuri de lucru · Înmulțirea cuaternionilor Hamilton ×
import math

def quaternion_product(a, b):
    for q in (a, b):
        if type(q) not in (list, tuple) or len(q) != 4:
            raise ValueError("quaternion.shape")
        if any(type(x) not in (int, float) or not -10**6 <= x <= 10**6 or not math.isfinite(x) for x in q):
            raise ValueError("quaternion.value")
    w, x, y, z = a
    v, i, j, k = b
    return (w*v-x*i-y*j-z*k, w*i+x*v+y*k-z*j,
            w*j-x*k+y*v+z*i, w*k+x*j-y*i+z*v)
✳Înmulțirea cuaternionilor Hamilton
✓ ModificăriVerifică înainte de aplicare ↗
Ilustrarea spațiului de lucru
Proiect
Testează identitatea și produsele de bază inversate, respinge booleene fără normalizare ascunsă sau afirmații despre rotații unitare.
Verifică înainte de aplicare
Compară comportamentul real cu rezultatul așteptat. Dacă o verificare eșuează, cercetează cauza înainte de alte modificări.
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.
Fluxuri de lucru

Înmulțirea cuaternionilor Hamilton

Fluxuri de lucru ↗
Fluxuri de lucru
import math

def quaternion_product(a, b):
    for q in (a, b):
        if type(q) not in (list, tuple) or len(q) != 4:
            raise ValueError("quaternion.shape")
        if any(type(x) not in (int, float) or not -10**6 <= x <= 10**6 or not math.isfinite(x) for x in q):
            raise ValueError("quaternion.value")
    w, x, y, z = a
    v, i, j, k = b
    return (w*v-x*i-y*j-z*k, w*i+x*v+y*k-z*j,
            w*j-x*k+y*v+z*i, w*k+x*j-y*i+z*v)
Spațiu de programare cu AI

Păstrează vizibile convențiile de reprezentare în timpul modificării codului

O eroare de rotație poate supraviețui unei modificări aritmetice aparent elegante când două module folosesc reprezentări diferite. Quaterelle este un spațiu de programare cu IA pentru Windows destinat investigării acestei neconcordanțe. Adu calculul și consumatorii săi în conversație și cere modelului conectat să identifice convențiile componentelor înainte de a sugera modificări. Începe cu mișcarea observată și rezultatul intenționat.

O sarcină posibilă este analiza înmulțirii cuaternionilor folosite de o transformare de scenă. Precizează ordinea componentelor și operația care trebuie să aibă loc prima, apoi oferă intrări și ieșiri cunoscute. Cere asistentului să urmărească aceste ipoteze prin apelant și să propună o corecție precisă. Sarcina este îmbunătățirea propriului cod de transformare cu o explicație verificabilă a modificării.

Verifică propunerea atât prin teste aritmetice, cât și prin comportamentul aplicației. Verifică compunerea cu identitatea, o pereche sensibilă la ordine și componente nevalide față de contractul proiectului. Apoi rulează personal scena afectată sau testul de integrare. Examinează dacă modificarea schimbă ipotezele de normalizare sau intervalele acceptate, deoarece aceste decizii pot afecta alți apelanți decât cei ai mișcării raportate inițial.

Quaterelle se conectează la endpointuri compatibile OpenAI sau Anthropic acceptate. Un model IA abliterat poate fi selectat dacă este disponibil la serviciul configurat; instrumentele, capacitatea contextului și restricțiile depind în continuare de model și server. Folosește spațiul de lucru pentru a păstra împreună convențiile și modificările propuse în timp ce evaluezi rezultatul.

Pregătirea unei analize a codului de rotație

Ce convenție pentru cuaternioni trebuie să includ?

Oferă ordinea componentelor, convenția înmulțirii și interpretarea folosită de modulul consumator. Include orice conversie la acea delimitare. Tablouri cu aspect similar pot reprezenta convenții diferite, deci asistentul nu trebuie să le deducă doar din numele variabilelor.

De ce să testez o pereche a cărei ordine contează?

Exemplele cu identitatea pot trece chiar când ordinea compunerii este greșită. Folosește o pereche cunoscută necomutativă și precizează ce transformare acționează prima. Verifică atât rezultatul aritmetic, cât și efectul așteptat pe calea de transformare a aplicației.

Înmulțirea trebuie să normalizeze fiecare rezultat?

Depinde de contract și de sensul intrărilor. Cere modelului să examineze unde are loc acum normalizarea înainte de a o adăuga. O etapă automată de normalizare poate schimba un comportament pe care apelanții se bazează intenționat.

Poate un test numeric înlocui verificarea scenei?

Verifică o parte a calculului, dar scena poate aplica conversii sau transformări suplimentare. Rulează și calea de integrare relevantă. Păstrează testul numeric pentru explicarea corecției și verificarea scenei pentru confirmarea utilizării sale efective.

Descarcă pentru Windows ↗

Quaterelle · Actualizat 2026-10-25