QQuaterelle
AIコーディングワークスペース

ハミルトン四元数の乗算

±10^6内の有限4成分を持つ2つのハミルトン四元数をスカラー先頭で乗算してください。

● ● ●Quaterelle●
ワークフロー · ハミルトン四元数の乗算 ×
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)
✳ハミルトン四元数の乗算
✓ 変更内容適用前に確認 ↗
ワークスペースのイメージ
プロジェクト
単位元と逆順の基底積を試し、真偽値を拒否し、暗黙の正規化や単位回転の主張をしないでください。
適用前に確認
実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。
モデル
OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。
ワークフロー

ハミルトン四元数の乗算

ワークフロー ↗
ワークフロー
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)
AIコーディングワークスペース

コード変更中も表現の規約を明確にする

二つのモジュールで表現が食い違うと、計算をきれいに修正しても回転の不具合が残ることがあります。Quaterelleはその食い違いを調べるWindows向けAIコーディング環境です。計算と利用側を会話に示し、変更案の前に成分の規約を接続したモデルに特定してもらってください。観測した動きと意図した結果から始めます。

作業例としてシーン変換に使う四元数の乗算をレビューできます。成分の順序と先に行う操作を示し、既知の入力と出力を提示してください。呼び出し側まで前提を追跡し、焦点を絞った修正を提案するよう依頼します。目的は、調べられる変更の説明とともに自分の変換コードを改善することです。

計算のテスト例とアプリケーションの動作の両方で提案を検証してください。単位元との合成、順序に依存するペア、無効な成分を仕様に照らして確認します。その後、影響するシーンや統合テストを自分で実行してください。正規化の前提や許容範囲の変更は、最初に報告した動き以外の呼び出し側にも影響するため調べます。

Quaterelleは対応するOpenAI互換またはAnthropicのエンドポイントに接続します。設定したサービスが提供する場合、拒否応答を抑える処理を施したAIモデル(abliteratedモデル)を選べます。ツール、コンテキスト容量、制限はモデルとサーバーに依存します。規約と修正案を同じ環境で扱いながら結果を評価してください。

回転コードのレビューを準備する

四元数のどの規約を示すべきですか?

成分順序、乗算規約、利用モジュールでの解釈を示し、その境界での変換も含めてください。似た配列でも異なる規約を表すため、変数名だけから推測させないようにします。

順序が重要なペアをテストするのはなぜですか?

単位元の例は合成順序が誤っていても通る場合があります。既知の非可換なペアを使い、どちらの変換を先に作用させるか指定してください。計算結果と変換経路で期待する効果の両方を確認します。

乗算のたびに結果を正規化すべきですか?

仕様と入力の意味によります。追加する前に現在の正規化箇所をモデルに調べてもらってください。自動正規化は呼び出し側が意図的に依存する動作を変える場合があります。

数値のテスト例でシーンの確認を代替できますか?

計算の一部は検証できますが、シーンで追加の変換が適用される場合があります。関連する統合経路も実行してください。修正の説明に数値例を、実際の利用の確認にシーン検証を残します。

Windows版をダウンロード ↗

Quaterelle · 更新日 2026-10-25