QQuaterelle
Espacio de programación con IA

Multiplicación de cuaterniones de Hamilton

Multiplica dos cuaterniones de Hamilton de cuatro componentes finitos dentro de ±10^6 con el escalar primero.

● ● ●Quaterelle●
Flujos de trabajo · Multiplicación de cuaterniones de 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)
✳Multiplicación de cuaterniones de Hamilton
✓ CambiosRevisa antes de aplicar ↗
Vista ilustrativa
Proyecto
Prueba identidad y productos de base invertidos, rechazando booleanos sin normalizar silenciosamente ni afirmar rotaciones unitarias.
Revisa antes de aplicar
Compara el comportamiento real con el resultado esperado. Si una prueba falla, investiga la causa antes de hacer más cambios.
Modelos
Configura un endpoint compatible con OpenAI o Anthropic usando la URL base y, si hace falta, una clave API. Prueba la conexión. Un servidor local debe estar en ejecución; las herramientas remotas pueden enviar datos por separado.
Flujos de trabajo

Multiplicación de cuaterniones de Hamilton

Flujos de trabajo ↗
Flujos de trabajo
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)
Espacio de programación con IA

Mantén visibles las convenciones de representación durante los cambios de código

Un error de rotación puede sobrevivir a un cambio aritmético de aspecto impecable cuando dos módulos discrepan sobre la representación. Quaterelle es un espacio de programación con IA para Windows donde investigar esa discrepancia. Lleva el cálculo y sus consumidores a la conversación y pide al modelo conectado que identifique las convenciones de componentes antes de sugerir cambios. Empieza por el movimiento observado y el resultado previsto.

Una posible tarea es revisar la multiplicación de cuaterniones utilizada por una transformación de escena. Indica el orden de componentes y qué operación debe producirse primero, y proporciona entradas y salidas conocidas. Pide al asistente que siga esos supuestos a través del código consumidor y proponga una corrección concreta. La tarea consiste en mejorar tu propio código de transformaciones con una explicación del cambio que pueda examinarse.

Verifica la propuesta mediante casos aritméticos y el comportamiento de la aplicación. Comprueba la composición con la identidad, un par sensible al orden y componentes no válidos según el contrato del proyecto. Después ejecuta tú mismo la escena o prueba de integración afectada. Examina si el cambio modifica los supuestos de normalización o los rangos aceptados, ya que esas decisiones pueden afectar a consumidores más allá del movimiento comunicado inicialmente.

Quaterelle se conecta a endpoints compatibles con OpenAI o de Anthropic admitidos. Se puede seleccionar un modelo de IA ablacionado si tu servicio configurado lo ofrece; las herramientas, la capacidad de contexto y las restricciones siguen dependiendo del modelo y del servidor. Usa el espacio de trabajo para mantener juntas las convenciones y las ediciones propuestas mientras evalúas el resultado.

Preparar una revisión de código de rotaciones

¿Qué convención de cuaterniones debo incluir?

Indica el orden de componentes, la convención de multiplicación y la interpretación que utiliza el módulo consumidor. Incluye cualquier conversión en esa interfaz. Matrices de aspecto similar pueden representar convenciones distintas, así que el asistente no debe deducirlas solo de los nombres de variables.

¿Por qué probar un par cuyo orden importe?

Los ejemplos de identidad pueden pasar aunque el orden de composición sea incorrecto. Usa un par conocido no conmutativo y especifica qué transformación actúa primero. Comprueba tanto el resultado aritmético como el efecto que espera la ruta de transformación de la aplicación.

¿Debe la multiplicación normalizar todos los resultados?

Depende del contrato y del significado de las entradas. Pide al modelo que examine dónde se realiza actualmente la normalización antes de añadirla. Una normalización automática puede alterar comportamientos de los que los consumidores dependen intencionadamente.

¿Puede un caso numérico sustituir la comprobación de la escena?

Verifica parte del cálculo, pero la escena puede aplicar conversiones o transformaciones adicionales. Ejecuta también la ruta de integración pertinente. Conserva el caso numérico para explicar la corrección y la comprobación de la escena para confirmar su uso real.

Descargar para Windows ↗

Quaterelle · Actualizado 2026-10-25