الرباعيات والدوران المكاني

تُوفّر الكواترنيونات الوحدوية ، المعروفة باسم المتجهات ، تدوينًا رياضيًا ملائمًا لتمثيل التوجهات المكانية ودوران العناصر في الفضاء ثلاثي الأبعاد ( الدوران ثلاثي الأبعاد ). يُعدّ هذا تعميمًا لاستخدام الأعداد المركبة الوحدوية للدوران ثنائي الأبعاد . على وجه التحديد، تُشفّر الكواترنيونات معلومات حول دوران محور-زاوية حول محور اختياري. تُستخدم كواترنيونات الدوران والتوجه في تطبيقاتٍ عديدة ، منها رسومات الحاسوب [ 1 ] ، ورؤية الحاسوب ، والروبوتات [ 2 ] ، والملاحة ، وديناميكيات الجزيئات ، وديناميكيات الطيران [ 3 ] ، وميكانيكا مدارات الأقمار الصناعية [ 4 ] ، وتحليل النسيج البلوري [ 5 ] .

عند استخدامها لتمثيل الدوران، تُسمى الكواترنيونات الوحدوية أيضًا كواترنيونات الدوران لأنها تمثل مجموعة الدوران ثلاثية الأبعاد . وعند استخدامها لتمثيل التوجيه أو الوضع (دوران الجسم بالنسبة لنظام إحداثيات مرجعي )، تُسمى كواترنيونات التوجيه أو كواترنيونات الوضع . الدوران المكاني في مقدارθ{\displaystyle \theta }الراديان حول محور وحدة ثابت(X،Y،Z){\displaystyle (X,Y,Z)}يُعطى محور أويلر بواسطة الكواتيرنيون(ج،XS،YS،ZS){\displaystyle (C,X\,S,Y\,S,Z\,S)}، أينج=كوس(θ/2){\displaystyle C=\cos(\theta /2)}وS=الخطيئة(θ/2){\displaystyle S=\sin(\theta /2)}.

بالمقارنة مع مصفوفات الدوران ، تُعدّ الكواترنيونات أكثر إيجازًا وكفاءةً واستقرارًا عدديًا . وبالمقارنة مع زوايا أويلر ، فهي أبسط في التركيب . مع ذلك، فهي ليست بديهية وسهلة الفهم، ونظرًا للطبيعة الدورية لدالتي الجيب وجيب التمام، فإن زوايا الدوران التي تختلف بدقة بمقدار الدورة الطبيعية ستُشفّر في كواترنيونات متطابقة، وستكون الزوايا المستعادة بالراديان محدودة.[0،2π){\displaystyle [0,2\pi )}.

استخدام الكواترنيونات كدورانات

تصوير ثلاثي الأبعاد لدوران حول محور أويلر (هـ^{\displaystyle {\hat {e}}}) بزاويةθ{\displaystyle \theta }

في الفضاء ثلاثي الأبعاد، ووفقًا لنظرية دوران أويلر ، فإن أي دوران أو سلسلة من الدورانات لجسم صلب أو نظام إحداثيات حول نقطة ثابتة يكافئ دورانًا واحدًا بزاوية معينة.θ{\displaystyle \theta }حول محور ثابت (يُسمى محور أويلر ) يمر عبر النقطة الثابتة. [ 6 ] يُرمز لمحور أويلر عادةً بمتجه وحدة u{\displaystyle {\vec {u}}}(هـ^{\displaystyle {\hat {e}}}(كما هو موضح في الصورة). لذلك، يمكن تمثيل أي دوران في ثلاثة أبعاد كمتجه . u{\displaystyle {\vec {u}}}وزاويةθ{\displaystyle \theta }.

توفر الأعداد الرباعية طريقة بسيطة لترميز تمثيل المحور والزاوية باستخدام أربعة أعداد حقيقية، ويمكن استخدامها لتطبيق (حساب) الدوران المقابل لمتجه الموضع (x,y,z) ، الذي يمثل نقطة بالنسبة إلى الأصل في R 3. [ 7 ]

يمكن إعادة كتابة المتجهات الإقليدية مثل ( 2 ، 3، 4) أو (ax، ay، az) على النحو التالي: 2i + 3j + 4k أو axi + ayj + azk ، حيث i و j و k هي متجهات وحدة تمثل المحاور الديكارتية الثلاثة ( تقليديًا x و y و z ) ، وتخضع أيضًا لقواعد الضرب لوحدات الكواترنيون الأساسية من خلال تفسير المتجه الإقليدي ( ax ، ay ، az ) على أنه الجزء المتجه من الكواترنيون النقي ( 0 ، ax ، ay ، az ) .

دوران الزاويةθ{\displaystyle \theta }حول المحور المحدد بواسطة متجه الوحدة

u=(ux،uy،uz)=uxأنا+uyج+uzك{\displaystyle \mathbf {u} =(u_{x},u_{y},u_{z})=u_{x}\mathbf {i} +u_{y}\mathbf {j} +u_{z}\mathbf {k} }

يمكن تمثيلها بالاقتران بواسطة رباعي الوحدة q . بما أن حاصل ضرب الرباعي (0+uxأنا+uyج+uzك)(0-uxأنا-uyج-uzك){\displaystyle \ (0+u_{x}\mathbf {i} +u_{y}\mathbf {j} +u_{z}\mathbf {k} )(0-u_{x}\mathbf {i} -u_{y}\mathbf {j} -u_{z}\mathbf {k} )}يعطي 1، باستخدام متسلسلة تايلور للدالة الأسية، ينتج عن امتداد صيغة أويلر ما يلي:

q=هـθ2(uxأنا+uyج+uzك)=كوسθ2+(uxأنا+uyج+uzك)الخطيئةθ2=كوسθ2+uالخطيئةθ2// +u_{y}\mathbf {j} +u_{z}\mathbf {k} )\sin {\frac {\theta} {2}}=\cos {\frac {\theta} {2}}+\mathbf {u} \sin {\frac {\theta }{2}}}

يمكن إثبات [ 8 ] أنه يمكن تطبيق الدوران المطلوب على متجه عاديص=(صx،صy،صz)=صxأنا+صyج+صzك{\displaystyle \mathbf {p} =(p_{x},p_{y},p_{z})=p_{x}\mathbf {i} +p_{y}\mathbf {j} +p_{z}\mathbf {k} }في الفضاء ثلاثي الأبعاد، يُعتبر الجزء المتجه من الكواتيرنيون النقيص{\displaystyle \mathbf {p'} }، وذلك بتقييم اقتران p مع q ، المعطى بواسطة:  

ل(ص):=qصq-1=(0،ر)،{\displaystyle L(\mathbf {p'} ):=\mathbf {q} \mathbf {p'} \mathbf {q} ^{-1}=(0,\mathbf {r} ),}
ر=(كوس2θ2-الخطيئة2θ2||u||2)ص+2الخطيئة2θ2(uص)u+2كوسθ2الخطيئةθ2(u×ص)،{\displaystyle \mathbf {r} =(\cos ^{2}{\frac {\theta }{2}}-\sin ^{2}{\frac {\theta }{2}}||\mathbf {u} ||^{2})\mathbf {p} +2\sin ^{2}{\frac {\theta }{2}}(\mathbf {u} \cdot \mathbf {p} )\mathbf {u} +2\cos {\frac {\theta }{2}}\sin {\frac {\theta }{2}}(\mathbf {u} \times \mathbf {p} ),}

باستخدام جداء هاميلتون ، حيث يمثل الجزء المتجهي من الكواترنيون النقي L( p ) = (0, rx , ry , z ) متجه الموضع الجديد للنقطة بعد الدوران. في التطبيق البرمجي، يتم تحقيق الاقتران عن طريق إنشاء كواترنيون نقي يكون جزؤه المتجهي هو p ، ثم إجراء اقتران الكواترنيون. الجزء المتجهي من الكواترنيون النقي الناتج هو المتجه المطلوب r . من الواضح أنل{\displaystyle L}يوفر تحويلاً خطياً لفضاء الكواترنيون إلى نفسه؛ [ 9 ] أيضاً، بما أنq{\displaystyle \mathbf {q} }إذا كانت العملية وحدوية، فإن التحويل هو تحويل متساوي القياس. كذلك،ل(q)=q{\displaystyle L(\mathbf {q} )=\mathbf {q} }وهكذال{\displaystyle L}متجهات الأوراق موازية لـq{\displaystyle \mathbf {q} }ثابت. لذا، عن طريق التفكيكص{\displaystyle \mathbf {p} }كمتجه موازٍ للجزء المتجه(ux،uy،uz)الخطيئةθ2{\displaystyle (u_{x},u_{y},u_{z})\sin {\frac {\theta }{2}}}لq{\displaystyle \mathbf {q} } ومتجه عمودي على الجزء المتجه منq{\displaystyle \mathbf {q} } وبيان أن تطبيقل{\displaystyle L}إلى المكون الطبيعي لـص{\displaystyle \mathbf {p} }بتدويره، يظهر الادعاء. فلنقم بذلكن{\displaystyle \mathbf {n} }كن مكونًا منص{\displaystyle \mathbf {p} }متعامد مع الجزء المتجه منq{\displaystyle \mathbf {q} }ودعنتي=u×ن{\displaystyle \mathbf {n} _{T}=\mathbf {u} \times \mathbf {n} }اتضح أن الجزء المتجه منل(0،ن){\displaystyle L(0,\mathbf {n} )}يُعطى بواسطة

(كوس2θ2-الخطيئة2θ2)ن+2(كوسθ2الخطيئةθ2)نتي=كوسθن+الخطيئةθنتي// \theta \mathbf {n} +\sin \theta \mathbf {n} _{T}}.

يمكن التعبير عن اقتران p مع q بعدد أقل من العمليات الحسابية كما يلي:

ر=ص+2كوسθ2الخطيئةθ2(u×ص)+2الخطيئة2θ2u×(u×ص).{\displaystyle \mathbf {r} =\mathbf {p} +2\cos {\frac {\theta }{2}}\sin {\frac {\theta }{2}}(\mathbf {u} \times \mathbf {p} )+2\sin ^{2}{\frac {\theta }{2}}\mathbf {u} \times (\mathbf {u} \times \mathbf {p} ).}

من الحقائق الهندسية المستقلة عن الكواترنيونات وجود علاقة ثنائية من الدورانات الفيزيائية إلى مصفوفات التحويل الدوراني . إذا كان 0 ⩽θ{\displaystyle \theta }2π{\displaystyle 2\pi }دوران فيزيائي حولu{\displaystyle {\vec {u}}}بواسطةθ{\displaystyle \theta }ودوران جسدي حول-u{\displaystyle -{\vec {u}}}بواسطة2π-θ{\displaystyle 2\pi -\theta }يحقق كلا الاتجاهين نفس التوجيه النهائي عبر مسارات منفصلة تمر بتوجيهات وسيطة. بإدخال هذه المتجهات والزوايا في صيغة q أعلاه، نجد أنه إذا مثّل q الدوران الأول، فإن −q يمثل الدوران الثاني. هذا برهان هندسي على أن الاقتران بـ q و −q ينتج عنه نفس مصفوفة التحويل الدوراني. يتم تأكيد هذه الحقيقة جبريًا بملاحظة أن الاقتران تربيعي في q ، لذا فإن إشارة q تُلغى، ولا تؤثر على النتيجة. (انظر التحويل 2:1 من SU(2) إلى SO(3) ) إذا كان كلا الدورانين نصف دورة(θ=π){\displaystyle (\theta =\pi )}، سيكون لكل من q و −q إحداثي حقيقي يساوي صفرًا. وإلا، فسيكون لأحدهما جزء حقيقي موجب، يمثل دورانًا بزاوية أقل منπ{\displaystyle \pi }والأخرى سيكون لها جزء حقيقي سالب، يمثل دورانًا بزاوية أكبر منπ{\displaystyle \pi }.

رياضياً، تنقل هذه العملية مجموعة جميع الكواترنيونات "الخالصة" p (التي يكون جزءها الحقيقي مساوياً للصفر) - والتي تشكل فضاءً ثلاثي الأبعاد بين الكواترنيونات - إلى داخلها، عن طريق الدوران المطلوب حول المحور u ، بزاوية θ . (يتم نقل كل كواترنيون حقيقي إلى داخله بواسطة هذه العملية. ولكن لأغراض الدوران في الفضاء ثلاثي الأبعاد، نتجاهل الكواترنيونات الحقيقية).

يكون الدوران باتجاه عقارب الساعة إذا كان خط رؤيتنا يشير في نفس اتجاهu{\displaystyle {\vec {u}}}.

في هذه الحالة، q هو رباعي الوحدة و

q-1=هـ-θ2(uxأنا+uyج+uzك)=كوسθ2-(uxأنا+uyج+uzك)الخطيئةθ2.{\displaystyle \mathbf {q} ^{-1}=e^{-{\frac {\theta }{2}}{(u_{x}\mathbf {i} +u_{y}\mathbf {j} +u_{z}\mathbf {k} )}}=\cos {\frac {\theta }{2}}-(u_{x}\mathbf {i} +u_{y}\mathbf {j} +u_{z}\mathbf {k} )\sin {\frac {\theta} {2}}.}

يترتب على ذلك أن الاقتران بضرب عددين رباعيين هو تركيب اقترانات بهذين العددين الرباعيين: إذا كان p و q عددين رباعيين وحدويين، فإن الدوران (الاقتران) بواسطة pq هو 

صqv(صq)-1=صqvq-1ص-1=ص(qvq-1)ص-1{\displaystyle \mathbf {pq} {\vec {v}}(\mathbf {pq})^{-1}=\mathbf {pq} {\vec {v}}\mathbf {q} ^{-1}\mathbf {p} ^{-1}=\mathbf {p} (\mathbf {q} {\vec {v}}\mathbf {q} ^{-1})\mathbf {ص} ^{-1}}،

وهذا يُعادل الدوران (الاقتران) بواسطة q ثم بواسطة p . ويكون المكون القياسي للنتيجة صفرًا بالضرورة.  

معكوس الكواتيرنيون للدوران هو الدوران المعاكس، لأنq-1(qvq-1)q=v{\displaystyle \mathbf {q} ^{-1}(\mathbf {q} {\vec {v}}\mathbf {q} ^{-1})\mathbf {q} ={\vec {v}}}مربع دوران الكواترنيون هو دوران بزاوية تساوي ضعف الزاوية حول المحور نفسه. وبشكل أعم، فإن q<sub> n</sub> هو دوران بزاوية تساوي n ضعف الزاوية حول المحور نفسه الذي يدور حوله q . ويمكن تعميم ذلك على أي قيمة حقيقية لـ n ، مما يسمح بالاستكمال السلس بين التوجهات المكانية؛ انظر Slerp . 

يمكن دمج اثنين من الكواترنيونات الدورانية في كواترنيون مكافئ واحد من خلال العلاقة التالية:

q=q2q1{\displaystyle \mathbf {q} '=\mathbf {q} _{2}\mathbf {q} _{1}}

حيث يُمثل q الدوران q1 متبوعًا بالدوران q2 . وبالتالي، يُمكن تركيب عددٍ غير محدود من الدورانات معًا ثم تطبيقها كدوران واحد. (لاحظ أن ضرب الكواترنيونات ليس تبادليًا ) .

مثال على عملية الاقتران

يؤدي دوران بمقدار 120 درجة حول القطر الأول إلى تبديل قيم i و j و k بشكل دوري

يشير اقتران p بـ q إلى العملية pqpq −1 .

ضع في اعتبارك الدوران f حول المحورv=أنا+ج+ك{\displaystyle {\vec {v}}=\mathbf {i} +\mathbf {j} +\mathbf {k} }، بزاوية دوران تبلغ 120 درجة، أو 2 π / 3 راديان . 

α=2π3{\displaystyle \alpha ={\frac {2\pi }{3}}}
pq p حيث q = 1 + i + j + k / 2 على الكرة الثلاثية الأبعاد . لاحظ أن عملية الضرب من جانب واحد (أي من اليسار ) تُنتج دورانًا بزاوية 60 درجة للأعداد الرباعية .

طولv{\displaystyle {\vec {v}}}بما أن √3 ، فإن نصف الزاوية هو π / 3 (60° ) مع جيب تمام 1/2 ( cos 60° = 0.5 ) وجيب √3/ 2 ( sin 60 °0.866 ) . لذا ، نحن نتعامل مع اقتران بواسطة الكواترنيون الواحدي

u=كوسα2+الخطيئةα21vv=كوسπ3+الخطيئةπ313v=12+3213v=12+32أنا+ج+ك3=1+أنا+ج+ك2{\displaystyle {\begin{aligned}u&=\cos {\frac {\alpha }{2}}+\sin {\frac {\alpha }{2}}\cdot {\frac {1}{\|{\vec {v}}\|}}{\vec {v}}\\&=\cos {\frac {\pi }{3}}+\sin {\frac {\pi }{3}}\cdot {\frac {1}{\sqrt {3}}}{\vec {v}}\\&={\frac {1}{2}}+{\frac {\sqrt {3}}{2}}\cdot {\frac {1}{\sqrt {3}}}{\vec {v}}\\&={\frac {1}{2}}+{\frac {\sqrt {3}}{2}}\cdot {\frac {\mathbf {i} +\mathbf {j} +\mathbf {k} }{\sqrt {3}}}\\&={\frac {1+\mathbf {i} +\mathbf {j} +\mathbf {k} }{2}}\end{aligned}}}

إذا كانت f هي دالة الدوران،

و(أأنا+بج+جك)=u(أأنا+بج+جك)u-1{\displaystyle f(a\mathbf {i} +b\mathbf {j} +c\mathbf {k} )=u(a\mathbf {i} +b\mathbf {j} +c\mathbf {k} )u^{-1}}

يمكن إثبات أن معكوس الكواترنيون الواحدي يُحصل عليه ببساطة عن طريق تغيير إشارة مكوناته التخيلية. ونتيجة لذلك،

u-1=1-أنا-ج-ك2{\displaystyle u^{-1}={\dfrac {1-\mathbf {i} -\mathbf {j} -\mathbf {k} }{2}}}

و

و(أأنا+بج+جك)=1+أنا+ج+ك2(أأنا+بج+جك)1-أنا-ج-ك2{\displaystyle f(a\mathbf {i} +b\mathbf {j} +c\mathbf {k} )={\dfrac {1+\mathbf {i} +\mathbf {j} +\mathbf {k} }{2}}(a\mathbf {i} +b\mathbf {j} +c\mathbf {k} ){\dfrac {1-\mathbf {i} -\mathbf {j} -\mathbf {k} }{2}}}

يمكن تبسيط ذلك باستخدام القواعد العادية لحسابات الأعداد الرباعية، إلى

و(أأنا+بج+جك)=جأنا+أج+بك{\displaystyle f(a\mathbf {i} +b\mathbf {j} +c\mathbf {k} )=c\mathbf {i} +a\mathbf {j} +b\mathbf {k} }

وكما هو متوقع، فإن الدوران يتوافق مع تثبيت مكعب عند نقطة واحدة، وتدويره 120 درجة حول القطر الطويل الذي يمر عبر النقطة الثابتة (لاحظ كيف يتم تبديل المحاور الثلاثة بشكل دوري ).

مصفوفة الدوران المشتقة من الكواتيرنيون

دوران رباعيص=qصq-1{\displaystyle \mathbf {p'} =\mathbf {q} \mathbf {p} \mathbf {q} ^{-1}}(معq=qر+qأناأنا+qجج+qكك{\displaystyle \mathbf {q} =q_{r}+q_{i}\mathbf {i} +q_{j}\mathbf {j} +q_{k}\mathbf {k} }يمكن تحويل ) جبريًا إلى دوران مصفوفةص=Rص{\displaystyle \mathbf {p'} =\mathbf {Rp} }، أينR{\displaystyle \mathbf {R} }مصفوفة الدوران المعطاة بواسطة: [ 10 ]

R=[1-2s(qج2+qك2)2s(qأناqج-qكqر)2s(qأناqك+qجqر)2s(qأناqج+qكqر)1-2s(qأنا2+qك2)2s(qجqك-qأناqر)2s(qأناqك-qجqر)2s(qجqك+qأناqر)1-2s(qأنا2+qج2)]{\displaystyle \mathbf {R} ={\begin{bmatrix}1-2s(q_{j}^{2}+q_{k}^{2})&2s(q_{i}q_{j}-q_{k}q_{r})&2s(q_{i}q_{k}+q_{j}q_{r})\\2s(q_{i}q_{j}+q_{k}q_{r})&1-2s(q_{i}^{2}+q_{k}^{2})&2s(q_{j}q_{k}-q_{i}q_{r})\\2s(q_{i}q_{k}-q_{j}q_{r})&2s(q_{j}q_{k}+q_{i}q_{r})&1-2s(q_{i}^{2}+q_{j}^{2})\end{bmatrix}}}

هناs=q-2{\displaystyle s=\|q\|^{-2}}وإذا كان q عبارة عن كواترنيون وحدة،s=1-2=1{\displaystyle s=1^{-2}=1}.

يمكن الحصول على ذلك باستخدام حساب المتجهات والجبر الخطي إذا عبرناص{\displaystyle \mathbf {p} }وq{\displaystyle \mathbf {q} }كأجزاء قياسية ومتجهة، واستخدم صيغة عملية الضرب في المعادلةص=qصq-1{\displaystyle \mathbf {p'} =\mathbf {q} \mathbf {p} \mathbf {q} ^{-1}}إذا كتبناص{\displaystyle \mathbf {p} }مثل(0، ص){\displaystyle \left(0,\ \mathbf {p} \right)}،ص{\displaystyle \mathbf {p} '}مثل(0، ص){\displaystyle \left(0,\ \mathbf {p} '\right)}وq{\displaystyle \mathbf {q} }مثل(qر، v){\displaystyle \left(q_{r},\ \mathbf {v} \right)}، أينv=(qأنا،qج،qك){\displaystyle \mathbf {v} =\left(q_{i},q_{j},q_{k}\right)}، تتحول معادلتنا إلى(0، ص)=(qر، v)(0، ص)s(qر، -v){\displaystyle \left(0,\ \mathbf {p} '\right)=\left(q_{r},\ \mathbf {v} \right)\left(0,\ \mathbf {p} \right)s\left(q_{r},\ -\mathbf {v} \right)}باستخدام صيغة ضرب اثنين من الكواترنيونات التي يتم التعبير عنها كأجزاء قياسية ومتجهة،

(ر1، v1)(ر2، v2)=(ر1ر2-v1v2، ر1v2+ر2v1+v1×v2)،{\displaystyle \left(r_{1},\ {\vec {v}}_{1}\right)\left(r_{2},\ {\vec {v}}_{2}\right)=\left(r_{1}r_{2}-{\vec {v}}_{1}\cdot {\vec {v}}_{2},\ r_{1}{\vec {v}}_{2}+r_{2}{\vec {v}}_{1}+{\vec {v}}_{1}\times {\vec {v}}_{2}\right),}

يمكن إعادة كتابة هذه المعادلة على النحو التالي

(0، ص)=((qر، v)(0، ص))s(qر، -v)=(qر0-vص، qرص+0v+v×ص)s(qر، -v)=s(-vص، qرص+v×ص)(qر، -v)=s(-vصqر-(qرص+v×ص)(-v)، (-vص)(-v)+qر(qرص+v×ص)+(qرص+v×ص)×(-v))=s(-vصqر+qرvص، v(vص)+qر2ص+qرv×ص+v×(qرص+v×ص))=(0، s(vv+qر2أنا+2qر[v]×+[v]×2)ص)،{\displaystyle {\begin{aligned}(0,\ \mathbf {p} ')=&((q_{r},\ \mathbf {v} )(0,\ \mathbf {p} ))s(q_{r},\ -\mathbf {v} )\\=&(q_{r}0-\mathbf {v} \cdot \mathbf {p} ,\ q_{r}\mathbf {p} +0\mathbf {v} +\mathbf {v} \times \mathbf {p} )s(q_{r},\ -\mathbf {v} )\\=&s(-\mathbf {v} \cdot \mathbf {p} ,\ q_{r}\mathbf {p} +\mathbf {v} \times \mathbf {p} )(q_{r},\ -\mathbf {v} )\\=&s(-\mathbf {v} \cdot \mathbf {p} q_{r}-(q_{r}\mathbf {p} +\mathbf {v} \times \mathbf {p} )\cdot (-\mathbf {v} ),\ (-\mathbf {v} \cdot \mathbf {p} )(-\mathbf {v} )+q_{r}(q_{r}\mathbf {p} +\mathbf {v} \times \mathbf {p} )+(q_{r}\mathbf {p} +\mathbf {v} \times \mathbf {p} )\times (-\mathbf {v} ))\\=&s\left(-\mathbf {v} \cdot \mathbf {p} q_{r}+q_{r}\mathbf {v} \cdot \mathbf {p} ,\ \mathbf {v} \left(\mathbf {v} \cdot \mathbf {p} \right)+q_{r}^{2}\mathbf {p} +q_{r}\mathbf {v} \times \mathbf {p} +\mathbf {v} \times \left(q_{r}\mathbf {p} +\mathbf {v} \times \mathbf {p} \right)\right)\\=&\left(0,\ s\left(\mathbf {v} \otimes \mathbf {v} +q_{r}^{2}\mathbf {I} +2q_{r}[\mathbf {v} ]_{\times }+[\mathbf {v} ]_{\times }^{2}\right)\mathbf {p} \right),\end{aligned}}}

أين{\displaystyle \otimes }يشير إلى الضرب الخارجي ،أنا{\displaystyle \mathbf {I} }هي مصفوفة الوحدة و[v]×{\displaystyle [\mathbf {v} ]_{\times }}هي مصفوفة التحويل التي عند ضربها من اليمين بمتجهu{\displaystyle \mathbf {u} }يعطي الضرب الاتجاهيv×u{\displaystyle \mathbf {v} \times \mathbf {u} }.

منذص=Rص{\displaystyle \mathbf {p} '=\mathbf {R} \mathbf {p} }يمكننا تحديدR{\displaystyle \mathbf {R} }مثلs(vv+qر2أنا+2qر[v]×+[v]×2){\displaystyle s\left(\mathbf {v} \otimes \mathbf {v} +q_{r}^{2}\mathbf {I} +2q_{r}[\mathbf {v} ]_{\times }+[\mathbf {v} ]_{\times }^{2}\right)}، والذي عند توسيعه يجب أن ينتج عنه التعبير المكتوب في شكل مصفوفة أعلاه.

استعادة تمثيل المحور والزاوية

التعبيرqصq-1{\displaystyle \mathbf {q} \mathbf {p} \mathbf {q} ^{-1}}يقوم بتدوير أي متجه رباعيص{\displaystyle \mathbf {p} }حول محور محدد بواسطة المتجهأ{\displaystyle \mathbf {a} }من الزاويةθ{\displaystyle \theta }، أينأ{\displaystyle \mathbf {a} }وθ{\displaystyle \theta }يعتمد على الرباعيq=qر+qأناأنا+qجج+qكك{\displaystyle \mathbf {q} =q_{r}+q_{i}\mathbf {i} +q_{j}\mathbf {j} +q_{k}\mathbf {k} }.

أ{\displaystyle \mathbf {a} }وθ{\displaystyle \theta }يمكن إيجادها من المعادلات التالية:

(أx،أy،أz)=(qأنا،qج،qك)qأنا2+qج2+qك2θ=2atan2(qأنا2+qج2+qك2،qر)،{\displaystyle {\begin{aligned}(a_{x},a_{y},a_{z})={}&{\frac {(q_{i},q_{j},q_{k})}{\sqrt {q_{i}^{2}+q_{j}^{2}+q_{k}^{2}}}}\\[2pt]\theta =2\operatorname {atan2} &\left({\sqrt {q_{i}^{2}+q_{j}^{2}+q_{k}^{2}}},\,q_{r}\right),\end{aligned}}}

أينatan2{\displaystyle \operatorname {atan2} }دالة الظل العكسي ذات الوسيطين .θ=2أكوس(qر){\displaystyle \theta =2\operatorname {acos} (q_{r})}يعمل، ولكنه غير مستقر عدديًا (غير دقيق) بالقرب منqر=±1{\displaystyle q_{r}=\pm 1}للأعداد ذات الدقة المحدودة.

ينبغي توخي الحذر عندما يقترب الكواترنيون من عدد قياسي ، لأنه بسبب الانحلال، فإن محور دوران الهوية غير محدد جيدًا.

تكوين الدورانات المكانية

تتمثل إحدى فوائد صياغة الكواترنيون لتركيب دورانين R B و R A في أنها تعطي مباشرة محور الدوران وزاوية الدوران المركب R C = R B R A .

لنفترض أن الكواتيرنيون المرتبط بدوران مكاني R يتم إنشاؤه من محور دورانه S بزاوية الدورانφ{\displaystyle \varphi }حول هذا المحور. ويُعطى الكواترنيون المرتبط به بواسطة S=كوسφ2+Sالخطيئةφ2.{\displaystyle S=\cos {\frac {\varphi }{2}}+\mathbf {S} \sin {\frac {\varphi }{2}}.}إذن ، يكون تركيب الدوران RB مع RA هو الدوران RC = RBRA ، حيث يُحدد محور الدوران وزاويته بضرب الكواترنيونات .أ=كوسα2+أالخطيئةα2وب=كوسβ2+بالخطيئةβ2،{\displaystyle A=\cos {\frac {\alpha }{2}}+\mathbf {A} \sin {\frac {\alpha }{2}}\quad {\text{and}}\quad B=\cos {\frac {\beta }{2}}+\mathbf {B} \sin {\frac {\beta }{2}},} إنه ج=كوسγ2+جالخطيئةγ2=(كوسβ2+بالخطيئةβ2)(كوسα2+أالخطيئةα2).{\displaystyle C=\cos {\frac {\gamma }{2}}+\mathbf {C} \sin {\frac {\gamma }{2}}=\left(\cos {\frac {\beta }{2}}+\mathbf {B} \sin {\frac {\beta }{2}}\right)\left(\cos {\frac {\alpha }{2}}+\mathbf {A} \sin {\frac {\alpha }{2}}\right).}

قم بتوسيع هذا المنتج للحصول على كوسγ2+جالخطيئةγ2=(كوسβ2كوسα2-بأالخطيئةβ2الخطيئةα2)+(بالخطيئةβ2كوسα2+أالخطيئةα2كوسβ2+ب×أالخطيئةβ2الخطيئةα2).{\displaystyle \cos {\frac {\gamma }{2}}+\mathbf {C} \sin {\frac {\gamma }{2}}=\left(\cos {\frac {\beta }{2}}\cos {\frac {\alpha }{2}}-\mathbf {B} \cdot \mathbf {A} \sin {\frac {\beta }{2}}\sin {\frac {\alpha }{2}}\right)+\left(\mathbf {B} \sin {\frac {\beta }{2}}\cos {\frac {\alpha }{2}}+\mathbf {A} \sin {\frac {\alpha }{2}}\cos {\frac {\beta }{2}}+\mathbf {B} \times \mathbf {A} \sin {\frac {\beta }{2}}\sin {\frac {\alpha }{2}}\right).}

اقسم طرفي هذه المعادلة على المتطابقة، وهي قانون جيب التمام على الكرة . كوسγ2=كوسβ2كوسα2-بأالخطيئةβ2الخطيئةα2،{\displaystyle \cos {\frac {\gamma }{2}}=\cos {\frac {\beta }{2}}\cos {\frac {\alpha }{2}}-\mathbf {B} \cdot \mathbf {A} \sin {\frac {\beta }{2}}\sin {\frac {\alpha }{2}},} واحسب جلون برونزيγ2=بلون برونزيβ2+ألون برونزيα2+ب×ألون برونزيβ2لون برونزيα21-بألون برونزيβ2لون برونزيα2.{\displaystyle \mathbf {C} \tan {\frac {\gamma }{2}}={\frac {\mathbf {B} \tan {\frac {\beta }{2}}+\mathbf {A} \tan {\frac {\alpha }{2}}+\mathbf {B} \times \mathbf {A} \tan {\frac {\beta }{2}}\tan {\frac {\alpha }{2}}}{1-\mathbf {B} \cdot \mathbf {A} \tan {\frac {\beta }{2}}\tan {\frac {\alpha }{2}}}}.}

هذه هي صيغة رودريغز للدوران لمحور دوران مركب مُعرَّف بدلالة محاور الدورانين. وقد اشتق هذه الصيغة في عام 1840 (انظر الصفحة 408). [ 11 ]

تشكل محاور الدوران الثلاثة A و B و C مثلثًا كرويًا، وتُحدد زوايا الدوران الزوايا الثنائية بين المستويات المتكونة من أضلاع هذا المثلث. وقد قدم هاميلتون [ 12 ] الصيغة المركبة لهذه المعادلات، موضحًا أن حاصل ضرب الكواترنيون يحسب الرأس الثالث لمثلث كروي من رأسين معطيين وأطوال أقواسهما، وهو ما يُعرّف أيضًا جبرًا للنقاط في الهندسة الإهليلجية .

تركيب المحور والزاوية

محور الدوران المعياري، وإزالةكوسγ2{\textstyle \cos {\frac {\gamma }{2}}}ينتج عن عملية الضرب الموسعة متجه يمثل محور الدوران، مضروبًا في ثابت ما. يجب توخي الحذر عند تطبيع متجه المحور عندγ{\displaystyle \gamma }يكون0{\displaystyle 0}أوك2π{\displaystyle k2\pi }حيث يكون المتجه قريبًا0{\displaystyle 0}؛ وهو ما يمثل الهوية، أو الدوران 0 حول أي محور.

γ=2كوس-1(كوسβ2كوسα2-بأالخطيئةβ2الخطيئةα2)د=بالخطيئةβ2كوسα2+أالخطيئةα2كوسβ2+ب×أالخطيئةβ2الخطيئةα2{\displaystyle {\begin{aligned}\gamma &=2\cos ^{-1}\left(\cos {\frac {\beta }{2}}\cos {\frac {\alpha }{2}}-\mathbf {B} \cdot \mathbf {A} \sin {\frac {\beta }{2}}\sin {\frac {\alpha }{2}}\right)\\\mathbf {D} &=\mathbf {B} \sin {\frac {\beta }{2}}\cos {\frac {\alpha }{2}}+\mathbf {A} \sin {\frac {\alpha }{2}}\cos {\frac {\beta }{2}}+\mathbf {B} \times \mathbf {A} \sin {\frac {\beta }{2}}\sin {\frac {\alpha }{2}}\end{aligned}}}

أو باستخدام التعويضات المثلثية لجمع الزوايا ... γ=2كوس-1((1-أب)كوسβ-α2+(1+أب)كوسβ+α2)د=(الخطيئةβ+α2+الخطيئةβ-α2)أ+(الخطيئةβ+α2-الخطيئةβ-α2)ب+(كوسβ-α2-كوسβ+α2)ب×أ{\displaystyle {\begin{aligned}\gamma &=2\cos ^{-1}\left(\left(1-\mathbf {A} \cdot \mathbf {B} \right)\cos {\frac {\beta -\alpha }{2}}+\left(1+\mathbf {A} \cdot \mathbf {B} \right)\cos {\frac {\beta +\alpha }{2}}\right)\\\mathbf {D} &=\left(\sin {\frac {\beta +\alpha }{2}}+\sin {\frac {\beta -\alpha }{2}}\right)\mathbf {A} +\left(\sin {\frac {\beta +\alpha }{2}}-\sin {\frac {\beta -\alpha }{2}}\right)\mathbf {B} +\left(\cos {\frac {\beta -\alpha }{2}}-\cos {\frac {\beta +\alpha }{2}}\right)\mathbf {B} \times \mathbf {A} \end{aligned}}}

وأخيرًا، تطبيع محور الدوران:د2الخطيئة12γ{\textstyle {\frac {\mathbf {D} }{2\sin {\frac {1}{2}}\gamma }}}أودد{\textstyle {\frac {\mathbf {D} }{\|\mathbf {D} \|}}}.

التفاضل بالنسبة إلى الكواترنيون الدوراني

يجب اشتقاق الكواترنيون المُدار p' = q p q −1 بالنسبة إلى الكواترنيون المُدار q ، عند تقدير الدوران من خلال التحسين العددي. يُعد تقدير زاوية الدوران إجراءً أساسيًا في تسجيل الأجسام ثلاثية الأبعاد أو معايرة الكاميرا. بالنسبة لـ q ذي العدد الواحد و p التخيلي البحت ، أي للدوران في الفضاء ثلاثي الأبعاد، يمكن تمثيل مشتقات الكواترنيون المُدار باستخدام ترميز حساب المصفوفات كما يلي:

صq[صq0،صqx،صqy،صqz]=[qص-(qص)*،(qصأنا)*-qصأنا،(qصج)*-qصج،(qصك)*-qصك].{\displaystyle {\begin{aligned}{\frac {\partial \mathbf {p'} }{\partial \mathbf {q} }}\equiv \left[{\frac {\partial \mathbf {p'} }{\partial q_{0}}},{\frac {\partial \mathbf {p'} }{\partial q_{x}}},{\frac {\partial \mathbf {p'} }{\partial q_{y}}},{\frac {\partial \mathbf {p'} }{\partial q_{z}}}\right]=\left[\mathbf {qp} -(\mathbf {qp} )^{*},(\mathbf {qpi} )^{*}-\mathbf {qpi} ,(\mathbf {qpj} )^{*}-\mathbf {qpj} ,(\mathbf {qpk} )^{*}-\mathbf {qpk} \right].\end{aligned}}}

يمكن إيجاد الاشتقاق في [ 13 ]

خلفية

الرباعيات

يمكن تعريف الأعداد المركبة بإدخال رمز مجرد i يحقق قواعد الجبر المعتادة، بالإضافة إلى القاعدة = -1 . وهذا يكفي لإعادة إنتاج جميع قواعد حساب الأعداد المركبة، على سبيل المثال:

(أ+بأنا)(ج+دأنا)=أج+أدأنا+بأناج+بأنادأنا=أج+أدأنا+بجأنا+بدأنا2=(أج-بد)+(بج+أد)أنا.{\displaystyle (a+b\mathbf {i} )(c+d\mathbf {i} )=ac+ad\mathbf {i} +b\mathbf {i} c+b\mathbf {i} d\mathbf {i} =ac+ad\mathbf {i} +bc\mathbf {i} +bd\mathbf {i} ^{2}=(ac-bd)+(bc+ad)\mathbf {i} .}

وبالمثل، يمكن تعريف الأعداد الرباعية بإدخال رموز مجردة i و j و k تحقق القواعد = = = i j k = -1 والقواعد الجبرية المعتادة باستثناء قانون التبديل في الضرب (ومن الأمثلة الشائعة على هذا النوع من الضرب غير التبديلي ضرب المصفوفات ). ومن هذا تستنتج جميع قواعد حساب الأعداد الرباعية، مثل قواعد ضرب عناصر أساس الأعداد الرباعية . وباستخدام هذه القواعد، يمكن إثبات ما يلي:

(أ+بأنا+جج+دك)(هـ+وأنا+زج+حك)=(أهـ-بو-جز-دح)+(أو+بهـ+جح-دز)أنا+(أز-بح+جهـ+دو)ج+(أح+بز-جو+دهـ)ك.{\displaystyle {\begin{aligned}&(a+b\mathbf {i} +c\mathbf {j} +d\mathbf {k} )(e+f\mathbf {i} +g\mathbf {j} +h\mathbf {k} )=\\&(ae-bf-cg-dh)+(af+be+ch-dg)\mathbf {i} +(ag-bh+ce+df)\mathbf {j} +(ah+bg-cf+de)\mathbf {k} .\end{aligned}}}

الجزء الخياليبأنا+جج+دك{\displaystyle b\mathbf {i} +c\mathbf {j} +d\mathbf {k} }يتصرف الكواترنيون كمتجهv=(ب،ج،د){\displaystyle {\vec {v}}=(b,c,d)}في الفضاء المتجهي ثلاثي الأبعاد ، ويتصرف الجزء الحقيقي a ككمية قياسية في R. عند استخدام الكواترنيونات في الهندسة، يكون من الأنسب تعريفها على أنها كمية قياسية بالإضافة إلى متجه :

أ+بأنا+جج+دك=أ+v.{\displaystyle a+b\mathbf {i} +c\mathbf {j} +d\mathbf {k} =a+{\vec {v}}.}

قد يجد البعض غريباً إضافة عدد إلى متجه ، فهما كائنان مختلفان تماماً في طبيعتهما، أو ضرب متجهين معاً، لأن هذه العملية غير مُعرَّفة عادةً. مع ذلك، إذا تذكرنا أنها مجرد رمز للجزء الحقيقي والجزء التخيلي من الكواترنيون، يصبح الأمر أكثر منطقية. بعبارة أخرى، المنطق الصحيح هو جمع كواترنيونين، أحدهما بجزء تخيلي متجهي يساوي صفراً، والآخر بجزء حقيقي قياسي يساوي صفراً.

q1=s+v=(s،0)+(0،v).{\displaystyle q_{1}=s+{\vec {v}}=\left(s,{\vec {0}}\right)+\left(0,{\vec {v}}\right).}

يمكننا التعبير عن ضرب الكواترنيونات باللغة الحديثة للضرب الاتجاهي والضرب النقطي للمتجهات (والتي استُلهمت في الأصل من الكواترنيونات [ 14 ] ). عند ضرب الأجزاء المتجهة / التخيلية، بدلاً من القواعد = = = ijk = -1، لدينا قاعدة ضرب الكواترنيونات التالية:

vw=-vw+v×w،{\displaystyle {\vec {v}}{\vec {w}}=-{\vec {v}}\cdot {\vec {w}}+{\vec {v}}\times {\vec {w}},}

أين:

  • vw{\displaystyle {\vec {v}}{\vec {w}}}وهو الكواترنيون الناتج،
  • v×w{\displaystyle {\vec {v}}\times {\vec {w}}}هو حاصل الضرب الاتجاهي للمتجهات (متجه)،
  • vw{\displaystyle {\vec {v}}\cdot {\vec {w}}}هو حاصل ضرب متجهي قياسي (كمية قياسية).

عملية ضرب الكواترنيونات غير تبادلية (بسبب الضرب الاتجاهي، الذي يُعدّ مضادًا للتبادل )، بينما عمليات الضرب القياسي-القياسي والقياسي-المتجهي تبادلية. ومن هذه القواعد يتبين مباشرةً ما يلي (انظر الكواترنيونات §  الكواترنيونات والهندسة ثلاثية الأبعاد ):

q1q2=(s+v)(ت+w)=(sت-vw)+(sw+تv+v×w).{\displaystyle q_{1}q_{2}=\left(s+{\vec {v}}\right)\left(t+{\vec {w}}\right)=\left(st-{\vec {v}}\cdot {\vec {w}}\right)+\left(s{\vec {w}}+t{\vec {v}}+{\vec {v}}\times {\vec {w}}\right).}

يُعطى المعكوس الضربي (الأيسر والأيمن) أو المقلوب للرباعي غير الصفري بنسبة المرافق إلى المعيار ( انظر التفاصيل ):

q1-1=(s+v)-1=(s+v)*s+v2=s-vs2+v2،{\displaystyle q_{1}^{-1}=\left(s+{\vec {v}}\right)^{-1}={\frac {\left(s+{\vec {v}}\right)^{*}}{\lVert s+{\vec {v}}\rVert ^{2}}}={\frac {s-{\vec {v}}}{s^{2}+\lVert {\vec {v}}\rVert ^{2}}},}

كما يمكن التحقق من ذلك عن طريق الحساب المباشر (لاحظ التشابه مع المعكوس الضربي للأعداد المركبة ).

هوية الدوران

يتركu{\displaystyle {\vec {u}}}ليكن متجه وحدة (محور الدوران) وليكنq=كوسα2+uالخطيئةα2{\displaystyle q=\cos {\frac {\alpha }{2}}+{\vec {u}}\sin {\frac {\alpha }{2}}}هدفنا هو أن نوضح ذلك

v=qvq-1=(كوسα2+uالخطيئةα2)v(كوسα2-uالخطيئةα2){\displaystyle {\vec {v}}'=q{\vec {v}}q^{-1}=\left(\cos {\frac {\alpha }{2}}+{\vec {u}}\sin {\frac {\alpha }{2}}\right)\,{\vec {v}}\,\left(\cos {\frac {\alpha }{2}}-{\vec {u}}\sin {\frac {\alpha }{2}}\right)}

ينتج المتجهv{\displaystyle {\vec {v}}}تم تدويرها بزاويةα{\displaystyle \alpha }حول المحورu{\displaystyle {\vec {u}}}التوسع (مع الأخذ في الاعتبار أنuv=u×v-uv{\displaystyle {\vec {u}}{\vec {v}}={\vec {u}}\times {\vec {v}}-{\vec {u}}\cdot {\vec {v}}}لدينا

v=vكوس2α2+(uv-vu)الخطيئةα2كوسα2-uvuالخطيئة2α2=vكوس2α2+2(u×v)الخطيئةα2كوسα2-((u×v)-(uv))uالخطيئة2α2=vكوس2α2+2(u×v)الخطيئةα2كوسα2-((u×v)u-(uv)u)الخطيئة2α2=vكوس2α2+2(u×v)الخطيئةα2كوسα2-(((u×v)×u-(u×v)u)-(uv)u)الخطيئة2α2=vكوس2α2+2(u×v)الخطيئةα2كوسα2-((v-(uv)u)-0-(uv)u)الخطيئة2α2=vكوس2α2+2(u×v)الخطيئةα2كوسα2-(v-2u(uv))الخطيئة2α2=vكوس2α2+2(u×v)الخطيئةα2كوسα2+(2u(uv)-v)الخطيئة2α2{\displaystyle {\begin{aligned}{\vec {v}}'&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+\left({\vec {u}}{\vec {v}}-{\vec {v}}{\vec {u}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}-{\vec {u}}{\vec {v}}{\vec {u}}\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}-\left(\left({\vec {u}}\times {\vec {v}}\right)-\left({\vec {u}}\cdot {\vec {v}}\right)\right){\vec {u}}\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}-\left(\left({\vec {u}}\times {\vec {v}}\right){\vec {u}}-\left({\vec {u}}\cdot {\vec {v}}\right){\vec {u}}\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}-\left(\left(\left({\vec {u}}\times {\vec {v}}\right)\times {\vec {u}}-\left({\vec {u}}\times {\vec {v}}\right)\cdot {\vec {u}}\right)-\left({\vec {u}}\cdot {\vec {v}}\right){\vec {u}}\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}-\left(\left({\vec {v}}-\left({\vec {u}}\cdot {\vec {v}}\right){\vec {u}}\right)-0-\left({\vec {u}}\cdot {\vec {v}}\right){\vec {u}}\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}-\left({\vec {v}}-2{\vec {u}}\left({\vec {u}}\cdot {\vec {v}}\right)\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}+\left(2{\vec {u}}\left({\vec {u}}\cdot {\vec {v}}\right)-{\vec {v}}\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]\end{aligned}}}

إذا سمحناv{\displaystyle {\vec {v}}_{\bot }}وv{\displaystyle {\vec {v}}_{\|}}تساوي مكوناتv{\displaystyle {\vec {v}}}عمودي وموازٍ لـu{\displaystyle {\vec {u}}}على التوالي، ثمv=v+v{\displaystyle {\vec {v}}={\vec {v}}_{\bot }+{\vec {v}}_{\|}}وu(uv)=v{\displaystyle {\vec {u}}\left({\vec {u}}\cdot {\vec {v}}\right)={\vec {v}}_{\|}}مما يؤدي إلى

v=vكوس2α2+2(u×v)الخطيئةα2كوسα2+(2u(uv)-v)الخطيئة2α2=(v+v)كوس2α2+2(u×v)الخطيئةα2كوسα2+(v-v)الخطيئة2α2=v(كوس2α2+الخطيئة2α2)+(u×v)(2الخطيئةα2كوسα2)+v(كوس2α2-الخطيئة2α2){\displaystyle {\begin{aligned}{\vec {v}}'&={\vec {v}}\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}+\left(2{\vec {u}}\left({\vec {u}}\cdot {\vec {v}}\right)-{\vec {v}}\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&=\left({\vec {v}}_{\|}+{\vec {v}}_{\bot }\right)\cos ^{2}{\frac {\alpha }{2}}+2\left({\vec {u}}\times {\vec {v}}\right)\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}+\left({\vec {v}}_{\|}-{\vec {v}}_{\bot }\right)\sin ^{2}{\frac {\alpha }{2}}\\[6pt]&={\vec {v}}_{\|}\left(\cos ^{2}{\frac {\alpha }{2}}+\sin ^{2}{\frac {\alpha }{2}}\right)+\left({\vec {u}}\times {\vec {v}}\right)\left(2\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}\right)+{\vec {v}}_{\bot }\left(\cos ^{2}{\frac {\alpha }{2}}-\sin ^{2}{\frac {\alpha }{2}}\right)\\[6pt]\end{aligned}}}

باستخدام متطابقات فيثاغورس ومتطابقات الزاوية المزدوجة المثلثية ، نحصل على

v=v(كوس2α2+الخطيئة2α2)+(u×v)(2الخطيئةα2كوسα2)+v(كوس2α2-الخطيئة2α2)=v+(u×v)الخطيئةα+vكوسα{\displaystyle {\begin{aligned}{\vec {v}}'&={\vec {v}}_{\|}\left(\cos ^{2}{\frac {\alpha }{2}}+\sin ^{2}{\frac {\alpha }{2}}\right)+\left({\vec {u}}\times {\vec {v}}\right)\left(2\sin {\frac {\alpha }{2}}\cos {\frac {\alpha }{2}}\right)+{\vec {v}}_{\bot }\left(\cos ^{2}{\frac {\alpha }{2}}-\sin ^{2}{\frac {\alpha }{2}}\right)\\[6pt]&={\vec {v}}_{\|}+\left({\vec {u}}\times {\vec {v}}\right)\sin \alpha +{\vec {v}}_{\bot }\cos \alpha \end{aligned}}}

هذه هي صيغة الدوران بواسطةα{\displaystyle \alpha }حول المحور u

عمليات دوران الكواتيرنيون

يقدم ألتمان شرحاً رسمياً للغاية للخصائص المستخدمة في هذا القسم. [ 15 ]

الكرة الفائقة للدوران

تصور فضاء الدوران

تمثل الكواترنيونات الوحدوية مجموعة الدورانات الإقليدية في ثلاثة أبعاد بطريقة مباشرة للغاية. ويمكن فهم العلاقة بين الدورانات والكواترنيونات من خلال تصور فضاء الدورانات نفسه أولاً.

دورتان منفصلتان، تختلفان في كل من الزاوية والمحور، في فضاء الدورانات. هنا، يتناسب طول كل متجه محور مع مقدار الدوران المقابل حول ذلك المحور.

لتصوّر فضاء الدوران، من المفيد النظر إلى حالة أبسط. يمكن وصف أي دوران في ثلاثة أبعاد بدوران بزاوية معينة حول محور ما ؛ ولأغراضنا، سنستخدم متجه المحور لتحديد اتجاه الدوران . لنفترض الحالة الخاصة التي يقع فيها محور الدوران في المستوى xy . يمكننا حينها تحديد محور أحد هذه الدورانات بنقطة على دائرة يمر بها المتجه، ويمكننا اختيار نصف قطر الدائرة للدلالة على زاوية الدوران .

وبالمثل، يمكن وصف الدوران الذي يقع محوره في المستوى xy بنقطة على كرة ذات نصف قطر ثابت في ثلاثة أبعاد. بدءًا من القطب الشمالي للكرة في الفضاء ثلاثي الأبعاد، نحدد هذه النقطة كدوران محايد (دوران بزاوية صفر). وكما هو الحال في الدوران المحايد، لا يُحدد محور للدوران، وبالتالي فإن زاوية الدوران (صفر) غير مهمة. يمكن تحديد دوران بزاوية صغيرة جدًا برسم مقطع عرضي للكرة موازٍ للمستوى xy وقريب جدًا من القطب الشمالي. ستكون الدائرة التي يرسمها هذا المقطع صغيرة جدًا، بما يتناسب مع صغر زاوية الدوران. مع ازدياد زوايا الدوران، يتحرك المقطع في الاتجاه السالب للمحور z ، وتكبر الدوائر حتى الوصول إلى خط استواء الكرة، وهو ما يتوافق مع زاوية دوران 180 درجة. بالاستمرار جنوبًا، تصبح أنصاف أقطار الدوائر أصغر (بما يتوافق مع القيمة المطلقة لزاوية الدوران التي تُعتبر عددًا سالبًا ). وأخيرًا، عند الوصول إلى القطب الجنوبي، تتقلص الدوائر مرة أخرى إلى دوران الهوية، والذي يتم تحديده أيضًا على أنه النقطة عند القطب الجنوبي.

لاحظ أن هذا التصور يُظهر عددًا من خصائص هذه الدورانات وتمثيلاتها. فضاء الدورانات متصل، ولكل دوران جوار من الدورانات المتشابهة تقريبًا، ويصبح هذا الجوار مسطحًا كلما تقلص. كما أن كل دوران يُمثَّل فعليًا بنقطتين متقابلتين على الكرة، تقعان على طرفي خط يمر بمركز الكرة. وهذا يعكس حقيقة أن كل دوران يمكن تمثيله كدوران حول محور ما، أو بصورة مكافئة، كدوران معاكس حول محور يشير إلى الاتجاه المعاكس (ما يُسمى بالتغطية المزدوجة ). سيكون "خط العرض" لدائرة تُمثل زاوية دوران معينة نصف الزاوية التي يُمثلها ذلك الدوران، لأنه عند تحريك النقطة من القطب الشمالي إلى القطب الجنوبي، يتراوح خط العرض من صفر إلى 180 درجة، بينما تتراوح زاوية الدوران من صفر إلى 360 درجة. (يمثل "خط الطول" لنقطة ما محور دوران معين). مع ذلك، لاحظ أن هذه المجموعة من الدورانات ليست مغلقة تحت التركيب. لا ينتج عن دورانين متتاليين بمحورين في المستوى xy بالضرورة دوران محوره في المستوى xy ، وبالتالي لا يمكن تمثيله كنقطة على الكرة. لكن هذا لا ينطبق على الدوران العام في الفضاء ثلاثي الأبعاد، حيث تشكل الدورانات مجموعة مغلقة عند التركيب.

مجال الدوران للدوران الذي له محور "أفقي" (في المستوى xy ).

يمكن توسيع هذا التصور ليشمل الدوران العام في الفضاء ثلاثي الأبعاد. الدوران المحايد هو نقطة، ويمكن تمثيل زاوية دوران صغيرة حول محور ما كنقطة على كرة ذات نصف قطر صغير. مع ازدياد زاوية الدوران، تكبر الكرة، حتى تصل زاوية الدوران إلى 180 درجة، وعندها تبدأ الكرة بالانكماش، لتصبح نقطة عندما تقترب الزاوية من 360 درجة (أو صفر درجة من الاتجاه السالب). تمثل هذه المجموعة من الكرات المتمددة والمتقلصة كرة فائقة في الفضاء رباعي الأبعاد (كرة ثلاثية الأبعاد). وكما في المثال الأبسط أعلاه، يقابل كل دوران ممثل كنقطة على الكرة الفائقة نقطة مقابلة له على نفس الكرة. سيكون "خط العرض" على الكرة الفائقة نصف زاوية الدوران المقابلة، وستصبح منطقة الجوار لأي نقطة "أكثر تسطحًا" (أي يتم تمثيلها بفضاء إقليدي ثلاثي الأبعاد من النقاط) مع انكماش منطقة الجوار. يُقابل هذا السلوك مجموعة الكواترنيونات الوحدوية: يُمثل الكواترنيون العام نقطةً في فضاء رباعي الأبعاد، ولكن تقييده ليكون له مقدار وحدة يُنتج فضاءً ثلاثي الأبعاد يُكافئ سطح كرة فائقة. سيكون مقدار الكواترنيون الوحدوي واحدًا، مُقابلًا لكرة فائقة نصف قطرها وحدة واحدة. يُمثل الجزء المتجهي من الكواترنيون الوحدوي نصف قطر الكرة ثنائية الأبعاد المُقابلة لمحور الدوران، ومقداره هو جيب نصف زاوية الدوران. يُمثل كل دوران بكواترنيونين وحدويين بإشارتين متعاكستين، وكما هو الحال في فضاء الدورانات في ثلاثة أبعاد، فإن حاصل ضرب كواترنيونين وحدويين يُنتج كواترنيونًا وحدويًا واحدًا. كذلك، يكون فضاء الكواترنيونات الوحدوية "مسطحًا" في أي جوار متناهي الصغر لكواترنيون وحدوي مُعطى.

تحديد معلمات فضاء الدوران

يمكننا تمثيل سطح الكرة بإحداثيين، كخط العرض وخط الطول. لكن خطي العرض والطول غير منتظمين ( متدهورين كما يصفهما قانون الكرة المشعرة ) عند القطبين الشمالي والجنوبي، مع أن القطبين لا يختلفان جوهريًا عن أي نقاط أخرى على الكرة. عند القطبين (خطي عرض +90° و-90°)، يصبح خط الطول بلا معنى.

يمكن إثبات أنه لا يمكن لأي نظام إحداثيات ثنائي المعاملات تجنب هذا التدهور. يمكننا تجنب هذه المشاكل بتضمين الكرة في فضاء ثلاثي الأبعاد وتحديدها بثلاث إحداثيات ديكارتية ( w , x , y ) ، مع وضع القطب الشمالي عند ( w , x , y ) = (1, 0, 0) ، والقطب الجنوبي عند ( w , x , y ) = (-1, 0, 0) ، وخط الاستواء عند w = 0 ، + = 1. تحقق النقاط على الكرة القيد + + = 1 ، لذا لا يزال لدينا درجتا حرية فقط على الرغم من وجود ثلاث إحداثيات. تمثل النقطة ( w , x , y ) على الكرة دورانًا في الفضاء العادي حول المحور الأفقي الموجه بواسطة المتجه ( x , y , 0) بزاويةα=2كوس-1w=2الخطيئة-1x2+y2{\displaystyle \alpha =2\cos ^{-1}w=2\sin ^{-1}{\sqrt {x^{2}+y^{2}}}}.

وبالمثل، يمكن تمثيل الفضاء الكروي الفائق للدوران ثلاثي الأبعاد بثلاث زوايا ( زوايا أويلر )، ولكن أي تمثيل من هذا القبيل يكون غير دقيق عند بعض النقاط على الكرة الفائقة، مما يؤدي إلى مشكلة قفل جيمبال . يمكننا تجنب ذلك باستخدام أربع إحداثيات إقليدية w و x و y و z ، حيث + + + = 1. تمثل النقطة ( w , x , y , z ) دورانًا حول المحور الموجه بواسطة المتجه ( x , y , z ) بزاويةα=2كوس-1w=2الخطيئة-1x2+y2+z2.{\displaystyle \alpha =2\cos ^{-1}w=2\sin ^{-1}{\sqrt {x^{2}+y^{2}+z^{2}}}.}

شرح خصائص الكواترنيونات باستخدام الدورانات

عدم التبادلية

دوران النرد غير التبادلي

إن ضرب الكواترنيونات ليس عملية تبادلية . هذه الحقيقة تفسر كيف يمكن لصيغة pq p q −1 أن تعمل أصلاً، حيث أن q q −1 = 1 بحسب التعريف. وبما أن ضرب الكواترنيونات الوحدوية يقابل تركيب الدورانات ثلاثية الأبعاد، يمكن جعل هذه الخاصية بديهية من خلال إثبات أن الدورانات ثلاثية الأبعاد ليست تبادلية بشكل عام.

يوضح الشكل على اليمين ذلك باستخدام النرد. استخدم يدك اليمنى لعمل دورانين بزاوية 90 درجة. يتم ضبط كلا النردين مبدئيًا كما هو  موضح في الزاوية العلوية اليسرى (مع وجود نقطة واحدة على الوجه العلوي). يبدأ المسار أ بدوران حول المحور -y (باستخدام قاعدة اليد اليمنى )، يليه دوران حول المحور + z ، مما ينتج عنه التكوين الموضح في الزاوية السفلية اليسرى (5 نقاط على الوجه العلوي). يعكس المسار ب تسلسل الدورانات، مما ينتج عنه 3 نقاط في الأعلى.

أو بدلاً من ذلك، ضع كتابين بجانب بعضهما. أدر أحدهما 90  درجة باتجاه عقارب الساعة حول المحور z ، ثم اقلبه 180  درجة حول المحور x . خذ الكتاب الآخر، اقلبه 180 درجة حول المحور x أولاً، ثم 90 درجة باتجاه عقارب الساعة حول المحور z لاحقاً. لن يصبح الكتابان متوازيين في النهاية. هذا يدل على أنه، بشكل عام، لا يمكن تبادل تركيب دورانين مختلفين حول محورين مكانيين مختلفين.

توجيه

يُضفي الضرب الاتجاهي للمتجهات ، المستخدم لتعريف تمثيل المحور والزاوية، اتجاهًا ("يدوية") على الفضاء: ففي فضاء متجهي ثلاثي الأبعاد، تُشكّل المتجهات الثلاثة في المعادلة a × b = c دائمًا مجموعة يمينية (أو مجموعة يسارية، اعتمادًا على تعريف الضرب الاتجاهي)، مما يُحدد اتجاهًا في الفضاء المتجهي. وبدلاً من ذلك، يُمكن التعبير عن الاعتماد على الاتجاه بالإشارة إلى...u{\displaystyle {\vec {u}}}يُحدد ذلك دورانًا بالنسبة للمتجهات المحورية . في الصيغة الرباعية، يتوافق اختيار اتجاه الفضاء مع ترتيب الضرب: ij = k ولكن ji = − k . إذا عُكس الاتجاه، فإن الصيغة أعلاه تصبح pq −1 p q ، أي أن الوحدة q تُستبدل بالرباعي المرافق - وهو نفس سلوك المتجهات المحورية.

اتفاقيات بديلة

ورد في [ 16 ] أن وجود واستخدام اتفاقية بديلة للأعداد الرباعية في مجال الطيران والفضاء، وبدرجة أقل في مجال الروبوتات، يُكبّد تكلفة كبيرة ومستمرة . وقد اقترح شوستر إم دي هذه الاتفاقية البديلة في [ 17 وهي تختلف عن الاتفاقية التقليدية بعكس تعريف ضرب عناصر أساس العدد الرباعي ، بحيث أنه بموجب اتفاقية شوستر،أناج=-ك{\displaystyle \mathbf {i} \mathbf {j} =-\mathbf {k} }بينما تعريف هاميلتون هوأناج=ك{\displaystyle \mathbf {i} \mathbf {j} =\mathbf {k} }. ويشار إلى هذا الاتفاق أيضًا باسم "اتفاق JPL" لاستخدامه في بعض أجزاء مختبر الدفع النفاث التابع لناسا .

وفقًا لاتفاقية شوستر، يتم تعديل صيغة ضرب اثنين من الكواترنيونات بحيث

(ر1، v1)(ر2، v2)=(ر1ر2-v1v2، ر1v2+ر2v1-v1×v2)،(اتفاقية بديلة، يُنصح بعدم استخدامها!){\displaystyle \left(r_{1},\ {\vec {v}}_{1}\right)\left(r_{2},\ {\vec {v}}_{2}\right)=\left(r_{1}r_{2}-{\vec {v}}_{1}\cdot {\vec {v}}_{2},\ r_{1}{\vec {v}}_{2}+r_{2}{\vec {v}}_{1}\mathbin {\color {red}\mathbf {-} } {\vec {v}}_{1}\times {\vec {v}}_{2}\right),\qquad {\text{(Alternative convention, usage discouraged!)}}}

يتم تعديل صيغة تدوير متجه بواسطة رباعي لتصبح

صبديل=(vv+qر2أنا-2qر[v]×+[v]×2)ص(اتفاقية بديلة، يُنصح بعدم استخدامها!)= (أنا-2qر[v]×+2[v]×2)ص{\displaystyle {\begin{aligned}\mathbf {p} '_{\text{alt}}={}&(\mathbf {v} \otimes \mathbf {v} +q_{r}^{2}\mathbf {I} \mathbin {\color {red}\mathbf {-} } 2q_{r}[\mathbf {v} ]_{\times }+[\mathbf {v} ]_{\times }^{2})\mathbf {p} &{\text{(Alternative convention, usage discouraged!)}}\\=&\ (\mathbf {I} \mathbin {\color {red}\mathbf {-} } 2q_{r}[\mathbf {v} ]_{\times }+2[\mathbf {v} ]_{\times }^{2})\mathbf {p} &\end{aligned}}}

لتحديد التغييرات وفقًا لاتفاقية شوستر، لاحظ أن الإشارة قبل الضرب الاتجاهي يتم عكسها من زائد إلى ناقص.

وأخيرًا، تم تعديل صيغة تحويل الكواترنيون إلى مصفوفة دوران لتصبح

Rألت=أنا-2qر[v]×+2[v]×2(اتفاقية بديلة، يُنصح بعدم استخدامها!)=[1-2s(qج2+qك2)2(qأناqج+qكqر)2(qأناqك-qجqر)2(qأناqج-qكqر)1-2s(qأنا2+qك2)2(qجqك+qأناqر)2(qأناqك+qجqر)2(qجqك-qأناqر)1-2s(qأنا2+qج2)]{\displaystyle {\begin{aligned}\mathbf {R} _{alt}&=\mathbf {I} \mathbin {\color {red}\mathbf {-} } 2q_{r}[\mathbf {v} ]_{\times }+2[\mathbf {v} ]_{\times }^{2}\qquad {\text{(Alternative convention, usage discouraged!)}}\\&={\begin{bmatrix}1-2s(q_{j}^{2}+q_{k}^{2})&2(q_{i}q_{j}\mathbin {\color {red}\mathbf {+} } q_{k}q_{r})&2(q_{i}q_{k}\mathbin {\color {red}\mathbf {-} } q_{j}q_{r})\\2(q_{i}q_{j}\mathbin {\color {red}\mathbf {-} } q_{k}q_{r})&1-2s(q_{i}^{2}+q_{k}^{2})&2(q_{j}q_{k}\mathbin {\color {red}\mathbf {+} } q_{i}q_{r})\\2(q_{i}q_{k}\mathbin {\color {red}\mathbf {+} } q_{j}q_{r})&2(q_{j}q_{k}\mathbin {\color {red}\mathbf {-} } q_{i}q_{r})&1-2s(q_{i}^{2}+q_{j}^{2})\end{bmatrix}}\end{aligned}}}

وهو بالضبط منقول مصفوفة الدوران المحولة وفقًا للاتفاقية التقليدية.

تطبيقات البرمجيات المستخدمة بشكل تقليدي

يصنف الجدول أدناه التطبيقات حسب مدى التزامها بأي من اصطلاحات الكواترنيون: [ 16 ]

اتفاقية الضرب الهاميلتونيةاتفاقية شوستر للضرب

في حين أن استخدام أي من الاتفاقيتين لا يؤثر على قدرة أو صحة التطبيقات التي تم إنشاؤها بهذه الطريقة، فقد جادل مؤلفو [ 16 ] بأنه ينبغي التخلي عن اتفاقية شوستر لأنها تختلف عن اتفاقية ضرب الكواترنيون الأقدم بكثير التي وضعها هاميلتون وقد لا يتم اعتمادها أبدًا من قبل مجالات الفيزياء الرياضية أو النظرية.

مقارنة مع تمثيلات أخرى للدوران

مزايا الرباعيات

يُعدّ تمثيل الدوران باستخدام الكواترنيون (أربعة أرقام) أكثر إيجازًا من تمثيله باستخدام المصفوفة المتعامدة (تسعة أرقام). علاوة على ذلك، يُمكن بسهولة إنشاء الكواترنيون المناسب لمحور وزاوية مُحددين، وبالعكس، يُمكن بسهولة استخلاص المحور والزاوية من كواترنيون مُحدد. ويُعدّ كلا الأمرين أكثر صعوبةً مع المصفوفات أو زوايا أويلر .

في ألعاب الفيديو وغيرها من التطبيقات، غالبًا ما يكون الاهتمام منصبًا على "الدوران السلس"، أي أن المشهد يجب أن يدور ببطء وليس دفعة واحدة. يمكن تحقيق ذلك باختيار منحنى ، مثل الاستيفاء الخطي الكروي في الكواترنيونات، حيث تكون إحدى نقطتي النهاية هي التحويل المطابق 1 (أو أي دوران ابتدائي آخر)، والأخرى هي الدوران النهائي المطلوب. لكن هذا الأمر يصبح أكثر تعقيدًا مع تمثيلات الدوران الأخرى.

عند إجراء عدة عمليات دوران على الحاسوب، تتراكم أخطاء التقريب حتمًا. حتى بعد تطبيع الكواترنيون الذي يختلف قليلاً، فإنه يظل يمثل دورانًا: قد لا تكون المصفوفة التي تختلف قليلاً متعامدة ، ويصعب تحويلها مرة أخرى إلى مصفوفة متعامدة صحيحة.

تتجنب الكواترنيونات أيضًا ظاهرة تُسمى " قفل جيمبال" ، والتي قد تحدث عندما، على سبيل المثال في أنظمة الدوران ذات المحاور الثلاثة (الميل/الانعراج/الدوران) ، يدور الميل بزاوية 90 درجة لأعلى أو لأسفل، بحيث يتوافق الانعراج والدوران مع نفس الحركة، مما يؤدي إلى فقدان درجة من حرية الدوران. في نظام الملاحة بالقصور الذاتي الفضائي القائم على الجيمبال ، على سبيل المثال، قد تكون لهذه الظاهرة نتائج كارثية إذا كانت الطائرة في حالة انحدار حاد أو صعود حاد.

التحويل من وإلى تمثيل المصفوفة

من الرباعي إلى المصفوفة المتعامدة

تُعطى المصفوفة المتعامدة الموافقة للدوران بواسطة الكواترنيون الوحدوي z = a + b i + c j + d k (حيث | z | = 1 ) عند الضرب من الخلف بمتجه عمودي بالصيغة التالية:

R=(أ2+ب2-ج2-د22بج-2أد2بد+2أج2بج+2أدأ2-ب2+ج2-د22جد-2أب2بد-2أج2جد+2أبأ2-ب2-ج2+د2).{\displaystyle R={\begin{pmatrix}a^{2}+b^{2}-c^{2}-d^{2}&2bc-2ad&2bd+2ac\\2bc+2ad&a^{2}-b^{2}+c^{2}-d^{2}&2cd-2ab\\2bd-2ac&2cd+2ab&a^{2}-b^{2}-c^{2}+d^{2}\\\end{pmatrix}}.}

تُستخدم مصفوفة الدوران هذه على المتجه w كما هوwتم تدويرها=Rw{\displaystyle w_{\text{rotated}}=R\cdot w}يُعطى تمثيل الكواترنيون لهذا الدوران بالصيغة التالية:

[0wتم تدويرها]=z[0w]z*،{\displaystyle {\begin{bmatrix}0\\w_{\text{rotated}}\end{bmatrix}}=z{\begin{bmatrix}0\\w\end{bmatrix}}z^{*},}

أينz*{\displaystyle z^{*}}هو المرافق للرباعيz{\displaystyle z}، مقدمة منz*=أ-بأنا-جج-دك{\displaystyle \mathbf {z} ^{*}=a-b\mathbf {i} -c\mathbf {j} -d\mathbf {k} }

كما يُعرَّف ضرب الكواترنيون على النحو التالي (بافتراض أن a و b كواترنيونات، مثل z أعلاه):

أب=(أ0ب0-أب؛أ0ب+ب0أ+أ×ب){\displaystyle ab=\left(a_{0}b_{0}-{\vec {a}}\cdot {\vec {b}};a_{0}{\vec {b}}+b_{0}{\vec {a}}+{\vec {a}}\times {\vec {b}}\right)}

حيث أن الترتيب a و b مهم لأن الضرب الاتجاهي لمتجهين ليس تبادليًا.

يتم تقديم حساب أكثر كفاءة لا يحتاج فيه الكواترنيون إلى أن يكون معياريًا للوحدة بواسطة [ 20 ]

R=(1-جج-ددبج-أدبد+أجبج+أد1-بب-ددجد-أببد-أججد+أب1-بب-جج)،{\displaystyle R={\begin{pmatrix}1-cc-dd&bc-ad&bd+ac\\bc+ad&1-bb-dd&cd-ab\\bd-ac&cd+ab&1-bb-cc\\\end{pmatrix}},}

حيث تم تعريف الكميات الوسيطة التالية:

  s=2/(أأ+بب+جج+دد)،بs=بs،جs=جs،دs=دs،أب=أبs،أج=أجs،أد=أدs،بب=ببs،بج=بجs،بد=بدs،جج=ججs،جد=جدs،دد=ددs.{\displaystyle {\begin{alignedat}{2}&\ \ s=2/(a\cdot a+b\cdot b+c\cdot c+d\cdot d),\\&{\begin{array}{lll}bs=b\cdot s,&cs=c\cdot s,&ds=d\cdot s,\\ab=a\cdot bs,&ac=a\cdot cs,&ad=a\cdot ds,\\bb=b\cdot bs,&bc=b\cdot cs,&bd=b\cdot ds,\\cc=c\cdot cs,&cd=c\cdot ds,&dd=d\cdot ds.\\\end{array}}\end{alignedat}}}

من مصفوفة متعامدة إلى رباعي

يجب توخي الحذر عند تحويل مصفوفة الدوران إلى كواتيرنيون، إذ تميل العديد من الطرق المباشرة إلى عدم الاستقرار عندما يكون أثر مصفوفة الدوران (مجموع عناصر القطر الرئيسي) صفرًا أو صغيرًا جدًا. للاطلاع على طريقة مستقرة لتحويل مصفوفة متعامدة إلى كواتيرنيون، راجع قسم مصفوفة الدوران#الكواتيرنيون .

تركيب الرباعيات

شرح القسم السابق كيفية استخلاص الكواترنيون q من مصفوفة دوران Q بحجم 3 × 3. لنفترض، مع ذلك، أن لدينا مصفوفة Q ليست دورانًا خالصًا - بسبب أخطاء التقريب ، على سبيل المثال - ونرغب في إيجاد الكواترنيون q الذي يمثل Q بأدق صورة . في هذه الحالة، نقوم بإنشاء مصفوفة متناظرة بحجم 4 × 4.

ك=13[سؤالxx-سؤالyy-سؤالzzسؤالyx+سؤالxyسؤالzx+سؤالxzسؤالzy-سؤالyzسؤالyx+سؤالxyسؤالyy-سؤالxx-سؤالzzسؤالzy+سؤالyzسؤالxz-سؤالzxسؤالzx+سؤالxzسؤالzy+سؤالyzسؤالzz-سؤالxx-سؤالyyسؤالyx-سؤالxyسؤالzy-سؤالyzسؤالxz-سؤالzxسؤالyx-سؤالxyسؤالxx+سؤالyy+سؤالzz]،{\displaystyle K={\frac {1}{3}}{\begin{bmatrix}Q_{xx}-Q_{yy}-Q_{zz}&Q_{yx}+Q_{xy}&Q_{zx}+Q_{xz}&Q_{zy}-Q_{yz}\\Q_{yx}+Q_{xy}&Q_{yy}-Q_{xx}-Q_{zz}&Q_{zy}+Q_{yz}&Q_{xz}-Q_{zx}\\Q_{zx}+Q_{xz}&Q_{zy}+Q_{yz}&Q_{zz}-Q_{xx}-Q_{yy}&Q_{yx}-Q_{xy}\\Q_{zy}-Q_{yz}&Q_{xz}-Q_{zx}&Q_{yx}-Q_{xy}&Q_{xx}+Q_{yy}+Q_{zz}\end{bmatrix}},}

ثم أوجد المتجه الذاتي ( x , y , z , w ) الموافق لأكبر قيمة ذاتية (تكون هذه القيمة 1 إذا وفقط إذا كانت Q دورانًا خالصًا ) . سيتوافق الكواترنيون الناتج مع الدوران الأقرب إلى المصفوفة الأصلية Q. [ 21 ]

مقارنات الأداء

يناقش هذا القسم الآثار المترتبة على الأداء لاستخدام الكواترنيونات مقابل الطرق الأخرى (مصفوفات المحور/الزاوية أو الدوران) لإجراء عمليات الدوران في ثلاثة أبعاد.

نتائج

متطلبات التخزين
طريقةتخزين
مصفوفة الدوران9 أو 6 (انظر أدناه)
الرباعي4 أو 3 (انظر أدناه)
محور الزاوية4 أو 3 (انظر أدناه)

ثلاثة فقط من مكونات الكواترنيون مستقلة، إذ يُمثَّل الدوران بكواترنيون وحدة. لإجراء حسابات إضافية، نحتاج عادةً إلى العناصر الأربعة جميعها، لذا ستتكبد جميع الحسابات تكلفة إضافية لاستعادة المكون الرابع. وبالمثل، يمكن تخزين زاوية المحور في متجه ثلاثي المكونات بضرب اتجاه الوحدة في الزاوية (أو دالة منها)، لكن هذا يُضيف تكلفة حسابية عند استخدامه في الحسابات. كذلك، تتطلب مصفوفة الدوران متجهات أساسية متعامدة، لذا في الفضاء ثلاثي الأبعاد، يمكن حساب المتجه الثالث بشكل لا لبس فيه من المتجهين الأولين باستخدام الضرب الاتجاهي (مع وجود غموض في إشارة المتجه الثالث إذا سُمح بدوران غير صحيح ).

مقارنة أداء عمليات تسلسل الدوران
طريقة# يتضاعف# جمع/طرحالعمليات الكاملة
مصفوفات الدوران271845
الرباعيات161228
مقارنة أداء عمليات تدوير المتجهات [ 22 ] [ 23 ]
طريقة# يتضاعف# جمع/طرح# sin/cosالعمليات الكاملة
مصفوفة الدوران96015
الرباعيات *بدون مصفوفة وسيطة1515030
مع مصفوفة وسيطة2118039
محور الزاويةبدون مصفوفة وسيطة1813231 + 2
مع مصفوفة وسيطة2116237 + 2

* يمكن تحويل الكواترنيونات ضمنيًا إلى مصفوفة تشبه الدوران (12 عملية ضرب و12 عملية جمع/طرح)، مما يؤدي إلى تسوية تكلفة دوران المتجهات التالية باستخدام طريقة مصفوفة الدوران.

الأساليب المستخدمة

هناك ثلاث طرق أساسية لتدوير متجه v :

  1. احسب حاصل ضرب المصفوفة R ، وهي مصفوفة دوران من الرتبة 3 × 3، في مصفوفة الأعمدة الأصلية من الرتبة 3 × 1 التي تمثل المتجه v . يتطلب هذا 9 عمليات ضرب و6 عمليات جمع، أي 3 × (3 عمليات ضرب + 2 عملية جمع)، وهي الطريقة الأكثر كفاءة لتدوير متجه.
  2. يمكن تمثيل الدوران بواسطة رباعي الأضلاع ذي طول وحدة واحدة q = ( w , r ) حيث يمثل الجزء القياسي (الحقيقي) w والجزء المتجه (التخيلي) r . ويمكن تطبيق الدوران على متجه ثلاثي الأبعاد v باستخدام الصيغة التالية:vجديد=v+2ر×(ر×v+wv){\displaystyle {\vec {v}}_{\text{new}}={\vec {v}}+2{\vec {r}}\times ({\vec {r}}\times {\vec {v}}+w{\vec {v}})}يتطلب هذا 15 عملية ضرب و15 عملية جمع فقط للتقييم (أو 18 عملية ضرب و12 عملية جمع إذا تم حساب العامل 2 عن طريق الضرب). هذه الصيغة، التي كان يُعتقد في الأصل أنها تُستخدم مع ترميز المحور/الزاوية (صيغة رودريغز)، يمكن تطبيقها أيضًا على ترميز الكواترنيون. وهذا يُعطي نفس نتيجة صيغة ضرب الكواترنيون الأقل كفاءة ولكنها أكثر إيجازًا.vجديد=qvq-1{\displaystyle {\vec {v}}_{\text{new}}=q{\vec {v}}q^{-1}}.
  3. استخدم صيغة الزاوية/المحور لتحويل الزاوية/المحور إلى مصفوفة دوران R ، ثم اضربها في متجه. وبالمثل، استخدم صيغة لتحويل ترميز الكواترنيون إلى مصفوفة دوران، ثم اضربها في متجه. يتطلب تحويل الزاوية/المحور إلى R 12 عملية ضرب، واستدعاء دالتين (الجيب، جيب التمام)، و10 عمليات جمع/طرح. من البند 1، يضيف الدوران باستخدام R 9 عمليات ضرب و6 عمليات جمع، ليصبح المجموع 21 عملية ضرب، و16 عملية جمع/طرح، واستدعاء دالتين (الجيب، جيب التمام). يتطلب تحويل الكواترنيون إلى R 12 عملية ضرب و12 عملية جمع/طرح. من البند 1، يضيف الدوران باستخدام R 9 عمليات ضرب و6 عمليات جمع، ليصبح المجموع 21 عملية ضرب و18 عملية جمع/طرح.
مقارنة أداء عمليات تدوير المتجهات n
طريقة# يتضاعف# جمع/طرح# sin/cosالعمليات الكاملة
مصفوفة الدوران9 ن6 ن015 ن
الرباعيات *بدون مصفوفة وسيطة15 ن15 ن030 ن
مع مصفوفة وسيطة9 ن + 126 ن + 12015 ن + 24
محور الزاويةبدون مصفوفة وسيطة18 ن12 ن + 1230 ن + 3
مع مصفوفة وسيطة9 ن + 126 ن + 10215 ن + 24

أزواج من الكواترنيونات الوحدوية كدورانات في فضاء رباعي الأبعاد

زوج من الكواترنيونات الوحدويةzل=أل+بلأنا+جلج+دلك{\displaystyle \mathbf {z} _{\rm {L}}=a_{\rm {L}}+b_{\rm {L}}i+c_{\rm {L}}j+d_{\rm {L}}k}وzR=أR+بRأنا+جRج+دRك{\displaystyle \mathbf {z} _{\rm {R}}=a_{\rm {R}}+b_{\rm {R}}i+c_{\rm {R}}j+d_{\rm {R}}k}يمكن أن يمثل أي دوران في الفضاء رباعي الأبعاد . بالنظر إلى متجه رباعي الأبعادv{\displaystyle {\vec {v}}}، معبر عنها كرباعيv=w+xأنا+yج+zك{\displaystyle {\vec {v}}=w+xi+yj+zk}يمكننا تدويرها على النحو التالي:

و(v)=zلvzR=ملمRv=(أل-بل-جل-دلبلأل-دلجلجلدلأل-بلدل-جلبلأل)(أR-بR-جR-دRبRأRدR-جRجR-دRأRبRدRجR-بRأR)(wxyz)،{\displaystyle f\left({\vec {v}}\right)=\mathbf {z} _{\rm {L}}{\vec {v}}\mathbf {z} _{\rm {R}}=M_{\rm {L}}M_{\rm {R}}{\vec {v}}={\begin{pmatrix}a_{\rm {L}}&-b_{\rm {L}}&-c_{\rm {L}}&-d_{\rm {L}}\\b_{\rm {L}}&a_{\rm {L}}&-d_{\rm {L}}&c_{\rm {L}}\\c_{\rm {L}}&d_{\rm {L}}&a_{\rm {L}}&-b_{\rm {L}}\\d_{\rm {L}}&-c_{\rm {L}}&b_{\rm {L}}&a_{\rm {L}}\end{pmatrix}}{\begin{pmatrix}a_{\rm {R}}&-b_{\rm {R}}&-c_{\rm {R}}&-d_{\rm {R}}\\b_{\rm {R}}&a_{\rm {R}}&d_{\rm {R}}&-c_{\rm {R}}\\c_{\rm {R}}&-d_{\rm {R}}&a_{\rm {R}}&b_{\rm {R}}\\d_{\rm {R}}&c_{\rm {R}}&-b_{\rm {R}}&a_{\rm {R}}\end{pmatrix}}{\begin{pmatrix}w\\x\\y\\z\end{pmatrix}},}

حيث المصفوفاتمل{\displaystyle M_{\rm {L}}}ومR{\displaystyle M_{\rm {R}}}تمثل هذه المصفوفات عمليات ضرب الكواترنيون الأيسر والأيمن، على التوالي. وتشكل هذه المصفوفات معًا تحليلًا متساوي الميل لدوران فيR4{\displaystyle \mathbb {R} ^{4}}بما أن عملية ضرب الكواترنيون عملية تجميعية ، فإننا نحصل على:

(zلv)zR=مRملv=ملمRv=zل(vzR){\displaystyle (\mathbf {z} _{\rm {L}}{\vec {v}})\mathbf {z} _{\rm {R}}=M_{\rm {R}}M_{\rm {L}}{\vec {v}}=M_{\rm {L}}M_{\rm {R}}{\vec {v}}=\mathbf {z} _{\rm {L}}({\vec {v}}\mathbf {z} _{\rm {R}})}.

وبالتالي، فإن المصفوفتينمل{\displaystyle M_{\rm {L}}}ومR{\displaystyle M_{\rm {R}}}يجب أن تكون هذه المجموعات تبادلية. وهذا يعني وجود مجموعتين فرعيتين تبادليتين ضمن مجموعة الدورانات رباعية الأبعاد. يمتلك أي دوران رباعي الأبعاد ست درجات حرية، حيث تساهم كل مصفوفة بثلاث من هذه الدرجات الست.

بما أن مولدات الدوران رباعي الأبعاد يمكن تمثيلها بأزواج من الكواترنيونات (كما يلي)، فإنه يمكن أيضًا تمثيل جميع الدورانات رباعية الأبعاد.

zلvzR=(1-دتأب-دتأج-دتأددتأب1-دتبج-دتبددتأجدتبج1-دتجددتأددتبددتجد1)(wxyz)zل=1+دتأب+دتجد2أنا+دتأج-دتبد2ج+دتأد+دتبج2كzR=1+دتأب-دتجد2أنا+دتأج+دتبد2ج+دتأد-دتبج2ك{\displaystyle {\begin{aligned}\mathbf {z} _{\rm {L}}{\vec {v}}\mathbf {z} _{\rm {R}}&={\begin{pmatrix}1&-dt_{ab}&-dt_{ac}&-dt_{ad}\\dt_{ab}&1&-dt_{bc}&-dt_{bd}\\dt_{ac}&dt_{bc}&1&-dt_{cd}\\dt_{ad}&dt_{bd}&dt_{cd}&1\end{pmatrix}}{\begin{pmatrix}w\\x\\y\\z\end{pmatrix}}\\[3pt]\mathbf {z} _{\rm {L}}&=1+{dt_{ab}+dt_{cd} \over 2}i+{dt_{ac}-dt_{bd} \over 2}j+{dt_{ad}+dt_{bc} \over 2}k\\[3pt]\mathbf {z} _{\rm {R}}&=1+{dt_{ab}-dt_{cd} \over 2}i+{dt_{ac}+dt_{bd} \over 2}j+{dt_{ad}-dt_{bc} \over 2}k\end{aligned}}}

انظر أيضاً

مراجع

  1. شومايك، كين (1985). "تحريك الدوران باستخدام منحنيات الكواتيرنيون" (ملف PDF) . رسومات الحاسوب . 19 (3): 245-254 . doi : 10.1145/325165.325242 .تم تقديمه في مؤتمر SIGGRAPH '85.
  2. جيه إم مكارثي، 1990، مقدمة في علم الحركة النظري ، مطبعة معهد ماساتشوستس للتكنولوجيا
  3. أمنون كاتز (1996) ديناميكيات المركبات الصلبة الحاسوبية ، دار نشر كريجر، رقم ISBN 978-1575240169
  4. جيه بي كويبرز (1999) الرباعيات ومتواليات الدوران: مدخل مع تطبيقات على المدارات والفضاء والواقع الافتراضي ، مطبعة جامعة برينستون ، رقم ISBN 978-0-691-10298-6
  5. كارستن كونزه، هيلموت شايبن (نوفمبر 2004). "توزيع بينغهام للأعداد الرباعية وتحويل رادون الكروي الخاص به في تحليل النسيج". الجيولوجيا الرياضية . 36 (8): 917-943 . doi : 10.1023/B:MATG.0000048799.56445.59 . ResearchGate 226385995 .
  6. الهندسة الإقليدية وغير الإقليدية. باتريك ج. رايان، مطبعة جامعة كامبريدج، كامبريدج، 1987.
  7. IL Kantor. الأعداد فائقة التعقيد، Springer-Verlag، نيويورك، 1989.
  8. أندرو ج. هانسون. تصور الرباعيات، دار نشر مورغان كوفمان، أمستردام، 2006.
  9. جيه إتش كونواي ودي إيه سميث. حول الرباعيات والأوكتونيات، إيه كيه بيترز، ناتيك، ماساتشوستس، 2003.
  10. "أسئلة وأجوبة حول خوارزميات الرسومات الحاسوبية" . تم الاطلاع عليه بتاريخ 2 يوليو 2017 .
  11. ^ رودريغز، أو. (1840). "Des lois Geométriques التي تحدد إزاحات نظام متين في الفضاء، والتنوع المنسق الناتج عن إزاحاتها التي تعتبر مستقلة عن الأسباب التي يمكن أن تنتج" . مجلة الرياضيات البحتة والتطبيقات . السلسلة 1. 5 : 380–440 .
    ترجم في فريدبرج، ريتشارد (2022). “Rodrigues، Olinde: “Des lois géométriques qui régissent les déplacements d'un système Solide...”، ترجمة وتعليق. أرخايف : 2211.07787 [ math.HO ].
  12. ويليام روان هاميلتون (1844-1850)، حول الرباعيات أو نظام جديد للأعداد التخيلية في الجبر ، مجلة الفلسفة ، رابط لمجموعة ديفيد ر. ويلكنز في كلية ترينيتي، دبلن
  13. لي، بيونغ-أوك (1991)، "التفريق باستخدام الرباعيات، الملحق ب" (ملف PDF) ، المطابقة المجسمة لمعالم الجمجمة ( أطروحة دكتوراه)، جامعة ستانفورد، ص 57-58 
  14. ألتمان، سيمون ل. (1989). "هاميلتون، رودريغز، وفضيحة الكواتيرنيون". مجلة الرياضيات . 62 (5): 306. doi : 10.2307/2689481 . JSTOR 2689481 . 
  15. سيمون ل. ألتمان (1986) الدورانات، الرباعيات، والمجموعات المزدوجة ، منشورات دوفر (انظر الفصل 12 على وجه الخصوص).
  16. 1 2 3 سومر، هـ. (2018)، "لماذا وكيفية تجنب ضرب الكواترنيون المعكوس"، الفضاء الجوي ، 5 (3): 72، arXiv : 1801.07478 ، Bibcode : 2018Aeros...5...72S ، doi : 10.3390/aerospace5030072 ، ISSN 2226-4310 
  17. شوستر، دكتور في الطب (1993)، "دراسة استقصائية لتمثيلات المواقف"، مجلة العلوم الفضائية ، 41 (4): 439-517 ، رمز Bibcode : 1993JAnSc..41..439S ، ISSN 0021-9142 
  18. "MATLAB Aerospace Toolbox quatrotate" .
  19. تستخدم مجموعة أدوات MATLAB Aerospace اصطلاح ضرب هاميلتون، ولكن نظرًا لأنها تطبق دورانات *سلبية* بدلاً من دورانات *فعالة*، فإن الكواترنيونات المدرجة هي في الواقع دورانات فعالة باستخدام اصطلاح شوستر. [ 18 ]
  20. آلان وات ومارك وات (1992) تقنيات الرسوم المتحركة والتقديم المتقدمة: النظرية والتطبيق ، مطبعة ACM، رقم ISBN 978-0201544121
  21. بار-إتزهاك، إتزهاك ي. (نوفمبر-ديسمبر 2000)، "طريقة جديدة لاستخراج الكواترنيون من مصفوفة الدوران"، مجلة التوجيه والتحكم والديناميكا ، 23 (6): 1085-1087 ، رمز Bibcode : 2000JGCD...23.1085B ، doi : 10.2514/2.4654 ، ISSN 0731-5090 
  22. إيبرلي، د.، تمثيلات الدوران وقضايا الأداء
  23. "Bitbucket" . bitbucket.org . مؤرشف من الأصل بتاريخ 17-11-2015 . تم الاطلاع عليه بتاريخ 14-11-2015 .

للمزيد من القراءة

  • غروبين، كارل (1970). "اشتقاق مخطط الكواترنيون عبر محور أويلر وزاويته". مجلة المركبات الفضائية والصواريخ . 7 (10): 1261-1263 . Bibcode : 1970JSpRo...7.1261G . doi : 10.2514/3.30149 .
  • باتي-برات، إي بي؛ وريسي، تي جيه (1980). "نموذج هندسي للجسيمات الأساسية". المجلة الدولية للفيزياء النظرية . 19 (6): 437-475 . Bibcode : 1980IJTP...19..437B . doi : 10.1007/BF00671608 . S2CID 120642923 . 
  • أريباس، م.؛ إيليبي، أ.؛ بالاسيوس، م. (2006). "الكواترنيونات ودوران الجسم الصلب". علم الفلك والميكانيكا السماوية والديناميكا الفلكية . 96 ( 3-4 ): 239-251 . Bibcode : 2006CeMDA..96..239A . doi : 10.1007/s10569-006-9037-6 . S2CID 123591599 .