কেন ঘূর্ণন জন্য কোয়ার্টারন ব্যবহার করা হয়?


107

আমি একজন পদার্থবিজ্ঞানী, এবং কিছু প্রোগ্রামিং শিখছি, এবং ম্যাট্রিক্স / ভেক্টর আকারে কিছু লেখার পরিবর্তে ঘূর্ণনের জন্য কোয়ার্টারিয়ন ব্যবহার করে প্রচুর লোকের মুখোমুখি হয়েছি।

পদার্থবিজ্ঞানে, আমরা কোয়ার্টারিয়ন ব্যবহার না করার জন্য খুব ভাল কারণ রয়েছে (হ্যামিল্টন / গীবস / ইত্যাদি সম্পর্কে মাঝে মাঝে যে উদ্ভট গল্পটি বলা হয়) তা সত্ত্বেও। পদার্থবিজ্ঞানের প্রয়োজন যে আমাদের বর্ণনার ভাল বিশ্লেষণমূলক আচরণ থাকতে হবে (এটির একটি সুনির্দিষ্ট সংজ্ঞা দেওয়া অর্থ রয়েছে, তবে কিছু প্রযুক্তিগত উপায়ে যা সাধারণ পরিচিতি ক্লাসে শেখানো হয় তার থেকে অনেক বেশি এগিয়ে যায়, সুতরাং আমি কোনও বিবরণে যাব না)। দেখা যাচ্ছে যে চতুর্ভূজগুলির এই সুন্দর আচরণ নেই, এবং সুতরাং সেগুলি কার্যকর হয় না, এবং ভেক্টর / ম্যাট্রিকগুলি হয়, তাই আমরা সেগুলি ব্যবহার করি।

যাইহোক, অনমনীয় ঘূর্ণন এবং বিবরণে সীমাবদ্ধ যা কোনও বিশ্লেষণী কাঠামো ব্যবহার করে না, 3 ডি ঘূর্ণন সমানভাবে উভয় উপায়ে (বা কয়েকটি উপায়) বর্ণনা করা যেতে পারে।

সাধারণত, আমরা কেবল এক্স 2 = এক্স ' 2 এর সীমাবদ্ধতার অধীনে একটি নতুন বিন্দু X' = (x, y, z) এর সাথে একটি বিন্দু X = (x, y, z) এর ম্যাপিং চাই । এবং এই জিনিস প্রচুর আছে।

সহজ উপায় হ'ল এই ত্রিভুজগুলি কেবল এটি সংজ্ঞায়িত করে ত্রিকোণমিতি ব্যবহার করতে হবে বা একটি বিন্দু (x, y, z) এবং একটি ভেক্টর (x, y, z) এবং f (X) = X 'এবং ফাংশনটির মধ্যে আইসোর্ফিজম ব্যবহার করা হবে একটি ম্যাট্রিক্স এমএক্স = এক্স ', বা কোয়ার্টারিয়ন ব্যবহার করে বা পুরানো ভেক্টরের উপাদানগুলি নতুন কিছু বরাবর অন্য কোনও পদ্ধতি (x, y, z) টি ব্যবহার করে ব্যবহার করতে পারেন (x, y, z) টি (এ, বি, সি) (x', y ', z '), ইত্যাদি

গণিতের দৃষ্টিকোণ থেকে, এই বিবরণগুলি সমস্ত এই সেটিং-এর সমপরিমাণ (উপপাদ্য হিসাবে)। এগুলির সকলের স্বাধীনতার একই সংখ্যক ডিগ্রি, একই সংখ্যার সীমাবদ্ধতা ইত্যাদি রয়েছে have

তাহলে কোয়ার্ট্রনগুলি কেন ভেক্টরগুলির চেয়ে পছন্দসই বলে মনে হচ্ছে?

আমি যেসব সাধারণ কারণ দেখি তা হ'ল জিম্বল লক বা সংখ্যাগত সমস্যা।

কোনও জিম্বল লক আর্গুমেন্টটিকে বিশদ মনে হয় না, কারণ এটি কেবল ইউলারের কোণগুলির একটি সমস্যা। এটি কেবল একটি স্থানাঙ্ক্ষিত সমস্যা (যেমন মেরু স্থানাঙ্কে r = 0 এর একাকীত্বের মতো (জ্যাকোবিয়ান হ'ল র‌্যাঙ্ক)), যার অর্থ এটি কেবল একটি স্থানীয় সমস্যা, এবং স্থানাঙ্ক পরিবর্তন করে, অধঃপতনের বাইরে ঘোরার মাধ্যমে সমাধান করা যেতে পারে, অথবা দুটি ওভারল্যাপিং সমন্বয় ব্যবস্থা ব্যবহার করে।

আমি সংখ্যাসূচক বিষয়গুলি সম্পর্কে কম নিশ্চিত, যেহেতু এই দুটি (এবং কোনও বিকল্প) কীভাবে কার্যকর করা হবে তা আমি বিস্তারিতভাবে জানি না। আমি পড়েছি যে একটি ঘূর্ণন ম্যাট্রিক্সের জন্য চতুর্ভুজটিকে পুনরায় সাধারণকরণ করা তার চেয়ে সহজ তবে এটি সাধারণ ম্যাট্রিক্সের ক্ষেত্রেই সত্য; একটি ঘূর্ণনের অতিরিক্ত বাধা রয়েছে যা এটি তুচ্ছ করে তোলে (যা চতুষ্পদের সংজ্ঞায় অন্তর্নির্মিত হয়) (বাস্তবে, এটি সত্য হতে হবে যেহেতু তাদের স্বাধীনতার একই সংখ্যা রয়েছে)।

সুতরাং ভেক্টর বা অন্যান্য বিকল্পের উপর চতুর্থাংশ ব্যবহারের কারণ কী?


2
"নো গিম্বল লক" জিনিসটি যাইহোক মিথ্যা। আপনি যদি কোয়ার্ট্রিয়ন দিয়ে দুটি অर्थোগোনাল ঘূর্ণন ব্যবহার করেন তবে আপনার একই জিম্বল লক সমস্যা রয়েছে যা আপনার কাছে অয়লার কোণগুলির সাথে রয়েছে। এটি কেবলমাত্র 3 টি নয়, 1 টি অপারেশন হওয়ার কারণে আপনার কোনও একক আবর্তনের জন্য কোনও সমস্যা নেই
ড্যামন

2
@ দামন এটি সম্পূর্ণ সত্য নয়। Mathoverflow.net/a/95908/97344
প্লাজম্যাসেল

উত্তর:


61

গিম্বল লক হ'ল একটি কারণ, যদিও আপনি বলেছেন এটি কেবল ইউলারের কোণগুলির সাথে সমস্যা এবং সহজেই সমাধানযোগ্য। ইউলারের কোণগুলি এখনও ব্যবহৃত হয় যখন মেমরিটি উদ্বেগজনক কারণ আপনার কেবলমাত্র 3 টি সংখ্যা সঞ্চয় করতে হবে।

কোয়াটার্নিয়ান্স বনাম একটি 3x3 রোটেশন ম্যাট্রিক্সের জন্য, কোয়ার্ট্রিয়নের আকার (4 স্কেলার বনাম 9) এবং গতি (কোয়ার্টেরিয়ান গুণটি 3x3 ম্যাট্রিক্স গুণণের তুলনায় অনেক দ্রুত) এর সুবিধা রয়েছে।

মনে রাখবেন যে, সব ঘুর্ণন এই উপস্থাপনা চর্চা ব্যবহার করা হয়। ইউলার কোণগুলি সর্বনিম্ন মেমরি ব্যবহার করে; ম্যাট্রিকগুলি আরও মেমরি ব্যবহার করে তবে গিম্বল লক থেকে ভুগবেন না এবং তাদের বিশ্লেষণাত্মক বৈশিষ্ট্য রয়েছে; হালকা ওজনের, কিন্তু গিম্বল লক থেকে মুক্ত, এবং কোয়ার্টার্নানগুলি উভয়েরই একটি দুর্দান্ত ভারসাম্য রুদ্ধ করে।


তবে একটি রোটেশন ম্যাট্রিক্সের অনেকগুলি স্বতন্ত্র উপাদান নেই - এটি সীমাবদ্ধ। একটি দ্বি মাত্রিক ঘূর্ণন তিনটি স্থানাঙ্ক দ্বারা তিন মাত্রায় নির্ধারিত হয়, নির্বিশেষে প্রতিনিধিত্ব না করে। ম্যাট্রিকের সাধারণভাবে আরও বেশি উপাদান থাকে কারণ তারা ঘূর্ণনের চেয়ে আরও বেশি কিছু করতে পারে। তবে আবর্তনের ক্ষেত্রে অতিরিক্ত উপাদানগুলি অন্যের নিরিখে নির্ধারিত হয়।
জেএমপি

1
@ জেএমপি: আপনি ঠিক বলেছেন। প্রচুর লোক ম্যাট্রিক্সকে "সংকুচিত" করে থাকে যাতে আপনি কেবল প্রয়োজন হিসাবে বেশি তথ্য সঞ্চয় করেন তবে একটি সংকীর্ণ ম্যাট্রিক্স মোকাবেলা করা আরও বেশি কঠিন, সুতরাং আপনি অভিনয়টি হারাবেন। এগুলি মেমরি এবং পারফরম্যান্সে ট্রেড-অফ সম্পর্কে।
পিটার আলেকজান্ডার

10
যদিও @ জেএমপি স্ট্যান্ডার্ড ম্যাট্রিক্সের গুণনের রুটিনগুলিতে সমস্ত 9 টি মান প্রয়োজন। যদিও এর মধ্যে কেবল তিনটিই স্বতন্ত্র, আপনি যখন গণিতটি করতে যান তখন অবশ্যই এটি 9 সংখ্যার মেমরির প্রয়োজন (আবার যদি আপনি কম্পিউটারে ম্যাট্রিক্সের গুণকেই করছেন)।
ডেভিড জেড

1
"কোয়ার্টারিয়ন গুণটি 3x3 ম্যাট্রিক্স গুণনের চেয়ে অনেক দ্রুত" সত্যিই? কোয়ার্টেরিয়ন রোটেশনটির জন্য 24 অ্যাড / মুল অপারেশন প্রয়োজন হয় (দ্বিগুণ ক্রস-পণ্য এবং পরিপূরক ক্রিয়াকলাপের কারণে), 3x3 ম্যাট্রিক্সে কেবল 15 অ্যাড / মুল অপারেশন প্রয়োজন requires
মারাত বুহারভ

সম্পূর্ণভাবে একটি 3D অভিযোজন উপস্থাপন করতে 2 টি ভেক্টর (6 ফ্লোট) ব্যবহার করতে পারেন, 3 য় ভেক্টরটি কেবল একটি ক্রস দূরে। ম্যাট্রিকের একটি সুবিধা হ'ল তারা ইতিমধ্যে এমন একটি ফর্মে রয়েছে যা অনেকগুলি অ্যাপ্লিকেশনের জন্য ব্যবহারের জন্য প্রস্তুত। অয়লার এবং কোয়াট উভয়ের জন্য প্যাকিং (ম্যাট্রিক্স থেকে) এবং আনপ্যাকিং (ম্যাট্রিক্সে) প্রয়োজন যা অতিরিক্ত প্রক্রিয়াজাতকরণ গ্রহণ করে। এলিউর এবং কোটস কমপ্যাক্ট দীর্ঘমেয়াদী স্টোরেজ জন্য দরকারী হতে পারে।
ব্যবহারকারী 3015682

39

পদার্থবিজ্ঞানে, আমরা কোয়ার্টারিয়ন ব্যবহার না করার জন্য খুব ভাল কারণ রয়েছে (হ্যামিল্টন / গীবস / ইত্যাদি সম্পর্কে মাঝে মাঝে যে উদ্ভট গল্পটি বলা হয়) তা সত্ত্বেও। পদার্থবিজ্ঞানের প্রয়োজন যে আমাদের বর্ণনার ভাল বিশ্লেষণমূলক আচরণ থাকতে হবে (এটির একটি সুনির্দিষ্ট সংজ্ঞা দেওয়া অর্থ রয়েছে, তবে কিছু প্রযুক্তিগত উপায়ে যা সাধারণ পরিচিতি ক্লাসে শেখানো হয় তার থেকে অনেক বেশি এগিয়ে যায়, সুতরাং আমি কোনও বিবরণে যাব না)। দেখা যাচ্ছে যে চতুর্ভূজগুলির এই সুন্দর আচরণ নেই, এবং সুতরাং সেগুলি কার্যকর হয় না, এবং ভেক্টর / ম্যাট্রিকগুলি হয়, তাই আমরা সেগুলি ব্যবহার করি।

ঠিক আছে, আমিও একজন পদার্থবিদ। এবং এমন কিছু পরিস্থিতি রয়েছে যেখানে কোয়ার্টার্নগুলি কেবল কাঁপায়! উদাহরণস্বরূপ গোলাকার হার্মোনিক্স। আপনার কাছে দুটি বৈদ্যুতিন বিনিময়কারী পরমাণু রয়েছে: কক্ষপথ স্পিন স্থানান্তর কী? কোয়াটার্নিয়ান্সের সাথে এটি কেবলমাত্র গুণ, অর্থাত্ চতুষ্পদ হিসাবে প্রকাশিত এসএইচ বেস ফাংশনগুলির সংখ্যককে যোগ করে। (লেজেন্ড্রে পলিনোমিয়ালসকে কোয়ার্টারিওনের স্বরলিপিতে পাওয়া কিছুটা ক্লান্তিকর হলেও)।

তবে আমি একমত, এগুলি কোনও সর্বজনীন সরঞ্জাম নয় এবং বিশেষত অনমনীয় শরীরের যান্ত্রিকগুলিতে এগুলি ব্যবহার করা খুব জটিল। তবুও একজন শিক্ষার্থীর প্রশ্নের জবাবে বার্ট্র্যান্ড রাসেলের উত্তরের জন্য একজন পদার্থবিজ্ঞানী কতটা গণিতের জানা প্রয়োজন: "যতটা সম্ভব!"

যাইহোক: আমরা কম্পিউটার গ্রাফিকগুলিতে কোয়ার্টার্নানগুলি কেন পছন্দ করি? কারণ তাদের কাছে বেশ কয়েকটি আবেদনময়ী সম্পত্তি রয়েছে। প্রথমে কেউ এগুলি সুন্দরভাবে বিভক্ত করতে পারে, এটি গুরুত্বপূর্ণ যদি কোনও জয়েন্টের চারপাশের অঙ্গগুলির মতো ঘোরানো জিনিসগুলি অ্যানিমেট করে। একটি চৌম্বকটি সহ এটি কেবল স্কেলার গুণ এবং স্বাভাবিককরণ। ম্যাট্রিক্সের সাথে এটি প্রকাশের জন্য পাপ এবং কোসগুলির মূল্যায়ন প্রয়োজন, তারপরে একটি ঘূর্ণন ম্যাট্রিক্স তৈরি করা উচিত। তারপরে একটি ভেক্টরকে একটি কোয়ার্টেরিয়নের সাথে গুন করা সম্পূর্ণ ভেক্টর-ম্যাট্রিক্স গুণনের মধ্য দিয়ে যাওয়া এখনও সস্তা, এটি পরেও কোনও অনুবাদ যুক্ত করলে এটি এখনও সস্তা aper যদি আপনি কোনও মানুষের চরিত্রের জন্য একটি কঙ্কাল অ্যানিমেশন সিস্টেম বিবেচনা করেন, যেখানে কোনও একটি বৃহত সংখ্যার শীর্ষে জন্য অনেকগুলি অনুবাদ / ঘূর্ণন মূল্যায়ন করতে হবে, এটির বিশাল প্রভাব রয়েছে।

চতুষ্কোণ ব্যবহারের আর একটি দুর্দান্ত পার্শ্ব প্রতিক্রিয়া হ'ল যে কোনও রূপান্তর সহজাতভাবে অরথনরমাল। অনুবাদ ম্যাট্রিক্সের সাথে সংখ্যাসূচক রাউন্ড-অফ ত্রুটির কারণে একটি অবশ্যই প্রতিটি অ্যানিমেশন পদক্ষেপের পুনরায় orthonormalize করতে হবে ize


1
চতুর্ভুজগুলির সাথে গোলকীয় সুরেলা / লেজেন্ড্রে বহুপদীগুলির জন্য আপনার কাছে কোনও উল্লেখ রয়েছে? আমি সম্পর্কিত বিষয়ের সাথে সম্পর্কিত একটি কাগজ জমা দিতে চলেছি এবং এ সম্পর্কে অন্যান্য কাজ (উদ্ধৃত করতে সক্ষম হতে) পছন্দ করতে চাই।
মাইকে

4
@ মাইক: আমার মাথার বাইরে, দুর্ভাগ্যক্রমে কিছুই প্রকাশিত হয়নি। দুর্ভাগ্যক্রমে চতুর্ভূত পদার্থবিজ্ঞানীদের কাছে এখনও অস্পষ্ট। আমি কেবল এটি মনে করি, কারণ আমার কোয়ান্টাম মেকানিক 2 এর টিউটর এটি একটি অনুশীলন করেছিলেন এবং আমি এটি দ্বারা উড়ে গিয়েছিলাম। আমরা মূলত যা করছিলাম তা হল এক্সপ ((a · iω + b · jθ + c · kη + d) r) শব্দটি ব্যবহার করা, যেখানে r নিজেই একটি জটিল পরিবর্তনশীল। আপনি যদি এটির পরিকল্পনা করেন তবে আপনি একটি 3 টি মাত্রিক বিতরণ পাবেন (আমাদের প্রথমে একটি চতুর্ভুজ ভেরিয়েবলের প্রতি শ্রদ্ধাশীল সিরিজটি বিকাশ করতে হবে)। এটি "ফুরিয়ার" রূপান্তর করার অনুমতি দেয়, যার ফলে এমন কিছু ঘটে যায় যা আপনি পরিচিত এসএইচ পদগুলিতে রূপান্তর করতে পারেন।
ডেটনল্ফ

31

কোনও জিম্বল লক আর্গুমেন্টটিকে বিশদ মনে হয় না, কারণ এটি কেবল ইউলারের কোণগুলির একটি সমস্যা। এটি কেবল একটি স্থানাঙ্ক্ষিত সমস্যা (যেমন মেরু স্থানাঙ্কে r = 0 এর একাকীত্বের মতো (জ্যাকোবিয়ান হ'ল র‌্যাঙ্ক)), যার অর্থ এটি কেবল একটি স্থানীয় সমস্যা, এবং স্থানাঙ্ক পরিবর্তন করে, অধঃপতনের বাইরে ঘোরার মাধ্যমে সমাধান করা যেতে পারে, অথবা দুটি ওভারল্যাপিং সমন্বয় ব্যবস্থা ব্যবহার করে।

অনেকগুলি 3D অ্যাপ্লিকেশন যেমন কোনও বস্তুর অভিযোজনকে সংজ্ঞায়িত করার জন্য ইউলার কোণ ব্যবহার করে। বিশেষত ফ্লাইট-সিমগুলির জন্য, তারা ওরিয়েন্টেশনটি এমনভাবে সংরক্ষণের একটি তাত্ত্বিকভাবে কার্যকর উপায়ে উপস্থাপন করে যা সহজেই পরিবর্তনযোগ্য।

আপনার এও সচেতন হওয়া উচিত যে "কোঅর্ডিনেটগুলি স্যুইচিং, অবক্ষয় থেকে ঘোরানো, বা দুটি ওভারল্যাপিং সমন্বয় ব্যবস্থা ব্যবহার করা" এর মতো বিষয়গুলির জন্য প্রচেষ্টা দরকার। প্রচেষ্টা মানে কোড। এবং কোড মানে পারফরম্যান্স। হারানো পারফরম্যান্স না তখন আছে অনেক 3D অ্যাপ্লিকেশনের জন্য একটি ভাল জিনিস নয়। সর্বোপরি, এই সমস্ত কৌশল দ্বারা কী অর্জন করা উচিত, যদি কেবল চতুর্থাংশ ব্যবহার করা আপনার প্রয়োজনীয় সমস্ত জিনিস পেয়ে যায়।

আমি সংখ্যাসূচক বিষয়গুলি সম্পর্কে কম নিশ্চিত, যেহেতু এই দুটি (এবং কোনও বিকল্প) কীভাবে কার্যকর করা হবে তা আমি বিস্তারিতভাবে জানি না। আমি পড়েছি যে একটি ঘূর্ণন ম্যাট্রিক্সের জন্য চতুর্ভুজটিকে পুনরায় সাধারণকরণ করা তার চেয়ে সহজ তবে এটি সাধারণ ম্যাট্রিক্সের ক্ষেত্রেই সত্য; একটি ঘূর্ণনের অতিরিক্ত বাধা রয়েছে যা এটি তুচ্ছ করে তোলে (যা চতুষ্পদের সংজ্ঞায় অন্তর্নির্মিত হয়) (বাস্তবে, এটি সত্য হতে হবে যেহেতু তাদের স্বাধীনতার একই সংখ্যা রয়েছে)।

অভিমুখীকরণের একাধিক পরপর ঘূর্ণন নিয়ে কাজ করার সময় সংখ্যাসূচক বিষয়গুলি সামনে আসে। কল্পনা করুন আপনার মহাকাশে কোনও বস্তু রয়েছে। এবং প্রতিটি টাইমলাইস, আপনি এটিতে ইয়াবার একটি ছোট পরিবর্তন প্রয়োগ করেন। প্রতিটি পরিবর্তনের পরে, আপনাকে ওরিয়েন্টেশনটি পুনরায় স্বাভাবিক করতে হবে; অন্যথায়, নির্ভুলতার সমস্যাগুলি ক্রাইপ হবে এবং জিনিসগুলি স্ক্রু আপ করবে।

আপনি যদি ম্যাট্রিক ব্যবহার করেন, প্রতিবার আপনি ম্যাট্রিক্সের গুণন করেন, আপনাকে অবশ্যই ম্যাট্রিক্সকে পুনরায় অরথনরমাইজ করতে হবে। আপনি যে ম্যাট্রিক্সকে অর্থনোরমাইজ করছেন সেটি এখনও কোনও রোটেশন ম্যাট্রিক্স নয়, সুতরাং আমি সেই সহজ অরথনোরালাইজেশন সম্পর্কে খুব বেশি নিশ্চিত হতে পারব না। তবে আমি এই সম্পর্কে নিশ্চিত হতে পারি:

এটি 4 ডি ভেক্টর স্বাভাবিককরণের মতো দ্রুত হবে না। একের পর এক আবর্তনের পরে চতুর্ভুজগুলি স্বাভাবিক করতে ব্যবহার করে।

কোয়ার্টেরিয়নের স্বাভাবিককরণ সস্তা is এমনকি বিশেষ ঘূর্ণন ম্যাট্রিক্স নিয়মমাফিককরণ হবে না যেমন সস্তা। আবার, পারফরম্যান্সের বিষয়গুলি।

ম্যাট্রিকগুলি সহজেই না করে এমন আরও একটি সমস্যা রয়েছে: দুটি পৃথক অভিযোজনের মধ্যে বিরতি।

3 ডি চরিত্রের সাথে ডিল করার সময় আপনার প্রায়শই চরিত্রের প্রতিটি হাড়ের অবস্থান নির্ধারণ করে এমন ধারাবাহিক রূপান্তর ঘটে। হাড়ের এই শ্রেণিবিন্যাস একটি নির্দিষ্ট ভঙ্গিতে চরিত্রকে উপস্থাপন করে।

বেশিরভাগ অ্যানিমেশন সিস্টেমে কোনও নির্দিষ্ট সময়ে কোনও চরিত্রের জন্য পোজ গণনা করার জন্য, একটি রূপান্তরগুলির মধ্যে বিভক্ত হয়। এর জন্য সংশ্লিষ্ট রূপান্তরগুলিকে ফাঁক করা দরকার।

দুটি ম্যাট্রিককে ইন্টারপোল্ট করা হচ্ছে ... অ-তুচ্ছ। অন্ততপক্ষে, আপনি যদি এমন কিছু চান যা শেষে ঘূর্ণন ম্যাট্রিক্সের অনুরূপ হয়। সর্বোপরি, অন্তরঙ্গকরণের উদ্দেশ্য হ'ল দুটি রূপান্তরের মধ্যে কিছু অংশ তৈরি করা।

কোয়ার্টেরিয়নের জন্য, আপনার যা দরকার তা হ'ল একটি 4D লিরপ এবং তারপরে একটি নরমালাইজ করা। এগুলি সবই: দুটি চতুর্ভুজ নিন এবং উপাদানগুলিকে রৈখিকভাবে ইন্টারপোলেট করুন। ফলাফলটি স্বাভাবিক করুন।

আপনি যদি আরও উন্নত মানের ইন্টারপোলেশন চান (এবং কখনও কখনও আপনি করেন) তবে আপনি গোলাকার লিরপটি আনতে পারেন । এটি আরও স্বতন্ত্র ওরিয়েন্টেশনের জন্য আন্তঃবিবাহকে আরও ভাল আচরণ করে। এই গণিত অনেক বেশি কঠিন এবং কোয়াটেরনিয়ন চেয়ে ম্যাট্রিক্স জন্য আরো অপারেশন প্রয়োজন।


7

মতামত: চতুষ্পদ সুন্দর।

ঘূর্ণন ম্যাট্রিক্স: মাইনর অসুবিধা : ম্যাট্রিক্সের গুণাগুণ কোয়াটার্নগুলির তুলনায় ~ 2 গুণ ধীর। গৌণ সুবিধা : ম্যাট্রিক্স-ভেক্টর গুণটি ~ 2 গুণ দ্রুত এবং বড়। বিশাল অসুবিধা : সাধারণীকরণ! ঘরম-শিমিট হ'ল অসম্পূর্ণ, যা ডিফারেনশিয়াল সমীকরণ করার সময় উচ্চতর আদেশের সঠিক উত্তর দেয় না। আরও পরিশীলিত পদ্ধতি খুব জটিল এবং ব্যয়বহুল।

অক্ষ (কোণ = অক্ষের দৈর্ঘ্য) গৌণ সুবিধা : ছোট। মাঝারি অসুবিধা : গুণ এবং একটি ভেক্টর প্রয়োগ ট্রিগার সঙ্গে ধীর। মাঝারি অসুবিধা : দৈর্ঘ্যের উত্তর-মেরু এককত্ব = 2 * পাই, যেহেতু সমস্ত অক্ষের দিকনির্দেশ কিছুই করে না। এটি 2pi এর কাছাকাছি এলে স্বয়ংক্রিয়ভাবে এটিকে পুনরুদ্ধার করতে আরও কোড (এবং ডিবাগিং)।


5

সাধারণত, আমরা কেবলমাত্র X (2 = X '^ 2 এর সীমাবদ্ধতার অধীনে একটি নতুন বিন্দু X' = (x, y, z)) এর বিন্দু X = (x, y, z) এর ম্যাপিং চাই want এবং এই জিনিস প্রচুর আছে।

আমরা একেবারে এটি চাই না । একটি খুব গুরুত্বপূর্ণ সূক্ষ্মতা রয়েছে যা প্রচুর লোক মিস করে । আপনি যে নির্মাণের কথা বলছেন (ত্রিভুজগুলি আঁকুন এবং ট্রিগ ইত্যাদি ব্যবহার করুন) একটি ভেক্টরকে অন্যটিতে সঠিকভাবে আবর্তিত করবে। তবে অসীম অনেকগুলি ঘূর্ণন রয়েছে যা এটি করবে। বিশেষত, আপনি আপনার ঘোরানোর পরে আমি আবার আসতে পারি এবং তারপরে পুরো এক্স সিস্টেমটিকে ঘোরান। এটি 'এক্স এর অবস্থান একেবারেই বদলাবে না। আপনার ঘোর এবং আমার সংমিশ্রণটি অন্য একক ঘূর্ণনের সমতুল্য (যেহেতু ঘূর্ণনগুলি একটি দল গঠন করে )। সাধারণভাবে, আপনাকে এ জাতীয় কোনও ঘূর্ণন প্রতিনিধিত্ব করতে সক্ষম হতে হবে।

দেখা যাচ্ছে যে আপনি এটি কেবল একটি ভেক্টর দিয়ে করতে পারেন । (এটি আবর্তনের অক্ষ-কোণ উপস্থাপনা )) তবে অক্ষ-কোণ উপস্থাপনে ঘূর্ণনগুলির সমন্বয় করা কঠিন difficult কোয়ার্টারিয়নস আরও অনেক কিছুর সাথে এটিকে সহজ করে তোলে। মূলত, চতুষ্পদগুলির অন্যান্য উপস্থাপনাগুলির সমস্ত সুবিধা রয়েছে এবং কোনও ত্রুটি নেই। (যদিও আমি স্বীকার করছি যে নির্দিষ্ট অ্যাপ্লিকেশন থাকতে পারে যার জন্য আরও কিছু উপস্থাপনা আরও ভাল হতে পারে))


4

আমি যে স্বাভাবিক কারণগুলি দেখি তা হ'ল কোনও জিম্বল লক বা সংখ্যাগত সমস্যা।

এবং তারা ভাল কারণ।

যেমন আপনি ইতিমধ্যে বুঝতে পেরেছেন বলে মনে হচ্ছে, চতুষ্কোণগুলি ইউলার 3-স্পেসের তিনটি ক্রমিক ঘূর্ণনের বিপরীতে একটি স্বেচ্ছাকৃতির অক্ষের চারপাশে একটি একক আবর্তনকে এনকোড করে। এটি চতুষ্কোণ জিম্বল লকের প্রতিরোধ ক্ষমতা তৈরি করে

এছাড়াও, স্প্লাপের কিছু ফর্মগুলি এসএইলআরপি-র মতো সুন্দর এবং করা সহজ হয়ে যায় ।

... অথবা দুটি ওভারল্যাপিং সমন্বয় ব্যবস্থা ব্যবহার করে।

পারফরম্যান্সের দৃষ্টিকোণ থেকে, আপনার সমাধানটি আরও ভাল কেন?

আমি যেতে পারতাম, তবে কোয়ার্টারিয়নগুলি কেবলমাত্র ব্যবহারের একটি সম্ভাব্য সরঞ্জাম। যদি তারা আপনার প্রয়োজন অনুসারে না খায় তবে সেগুলি ব্যবহার করবেন না।


তবুও ঘূর্ণন ম্যাট্রিকগুলি একই কাজ করে, পাশাপাশি আরও বীজগণিতীয় বৈশিষ্ট্যও রয়েছে যা খুব সুন্দরভাবে ব্যবহার করা যায়। এই ম্যাট্রিক্সের ম্যানিপুলেশনগুলির উপরে কম্পিউটারগুলি বিশেষত যে জিনিসগুলিতে ভাল।
pa2323

3

এটি মনে রাখা উচিত যে আবর্তনের সাথে সম্পর্কিত সমস্ত সম্পত্তি সত্যিকার অর্থে কোয়ার্টেরিয়নের বৈশিষ্ট্য নয়: এগুলি এলিউর -রডরিগ্রস প্যারামিটারাইজেশনগুলির বৈশিষ্ট্য , যা 3 ডি রোটেশন বর্ণনা করার জন্য প্রকৃত 4-উপাদান কাঠামো।

কোয়ার্টেরিয়নের সাথে তাদের সম্পর্ক নিখুঁতভাবে কেলে-র একটি গবেষণাপত্রের কারণে, যেখানে "কোয়ার্টেরিয়নের সাথে সম্পর্কিত কিছু ফলাফলের", যেখানে লেখক কোয়ার্টারিওনের গুণ এবং ইউলার-রডরিগ্রাসের প্যারামিটারাইজেশনের সংমিশ্রণের মধ্যে পারস্পরিক সম্পর্ককে পর্যবেক্ষণ করেছেন। ঘূর্ণন উপস্থাপনের জন্য এবং বিশেষত তাদের মধ্যে অন্তরঙ্গকরণের জন্য কোয়ার্টারিয়ন তত্ত্বের এই দিকগুলি সক্ষম করা হয়েছে।

আপনি এখানে কাগজটি পড়তে পারেন: https://archive.org/details/collmathpapers01caylrich । কিন্তু সেই সময়, কোয়ার্টেরিয়ানস এবং রোটেশনের মধ্যে কোনও সংযোগ ছিল না এবং কায়লি সেখানে উপস্থিত হয়ে অবাক হয়েছিলেন:

প্রকৃতপক্ষে সূত্রগুলি হ'ল এম। অলিন্দ রডরিগস লিউভিলি, টিভি দ্বারা এই ধরণের রূপান্তরের জন্য প্রদত্ত। iii। পৃষ্ঠা 224 [6])। এখানে এই গুণাগুণগুলির উপস্থিতির জন্য এটি অ্যাকাউন্টের জন্য একটি আকর্ষণীয় প্রশ্ন হবে a

যাইহোক, কোয়ার্ট্রিয়েন্স সম্পর্কে অভ্যন্তরীণ কিছুই নেই যা ঘূর্ণনের কোনও উপকার দেয়। চতুষ্পদ জিম্বল লক এড়ায় না; ইউলার-রডরিগগুলি প্যারামিটারাইজেশন করে। ঘূর্ণন সম্পাদনকারী খুব কম কম্পিউটার প্রোগ্রামগুলি সম্ভবত প্রথম শ্রেণীর জটিল গাণিতিক মানগুলি কোয়াটারিওন প্রকারগুলি বাস্তবায়িত করতে পারে। দুর্ভাগ্যক্রমে, কোয়ার্ট্রিয়েন্সের ভূমিকার একটি ভুল বোঝাবুঝির কোথাও ফাঁস হয়ে গেছে যার ফলস্বরূপ বেশ কয়েকটি চমকপ্রদ গ্রাফিক্স শিক্ষার্থীরা একাধিক কাল্পনিক ধ্রুবকগুলির সাথে জটিল গণিতের বিশদটি শিখেছে এবং তারপরে বিভ্রান্ত হয়ে পড়েছে যে এটি কেন ঘূর্ণন দিয়ে সমস্যার সমাধান করে।


1

এমন একটি উত্তর যা কেউ পড়তে পারে: সমস্ত উপস্থাপনা নিয়ে ক্লান্তিকর সমস্যা রয়েছে। কোয়ার্ট্রিনগুলি ম্যাট্রিক্সের চেয়ে ছোট তবে কোয়ার্টেরিয়ান গুণটি কেবল ভেক্টর ডট পণ্য বা এ জাতীয় নয় এবং প্রকৃতপক্ষে দুটি 3x3 ম্যাট্রিকের ডট প্রোডাক্টের চেয়ে কম্পিউটারে বেশি সময় নেয়। (কম্পিউটার সাধারণ ম্যাট্রিক্সের সাথে অপারেটিংয়ে খুব ভাল)

ম্যাট্রিকগুলিতে অন্যান্য বিরক্তিকর বৈশিষ্ট্য রয়েছে। উদাহরণস্বরূপ, তারা দীর্ঘকালীন স্থিতিশীল প্রাণী নয়। 3 ডি স্পেসে রোটেশনগুলি মডেলিং করার সময়, একজন সাধারণত একে অপরের উপরে ঘূর্ণনগুলি ওরিয়েন্টেশন ম্যাট্রিক্সে জমা করে, এটি কেবলমাত্র একটি একক আবর্তন ম্যাট্রিক্স একটি রেফারেন্স ফ্রেমের ওরিয়েন্টেশন সংরক্ষণ করে। এই প্রক্রিয়াটি কয়েক মিলিয়ন সংযোজনগুলিতে ও-ম্যাট্রিক্সকে কঠোর রোটেশন ম্যাট্রিক্স ফর্ম থেকে সরিয়ে নেবে cause এটি ম্যাট্রিক্সকে পর্যায়ক্রমে পুনরায় কনফিগার করার মাধ্যমে পরিলক্ষিত হতে পারে, তবে এমন পরিস্থিতি রয়েছে যখন এটি অযৌক্তিক হয়। যথা পরিচয় ম্যাট্রিক্সের নো-রোটেশন কেস।

আপনি ঘোরার একটি অক্ষ-কোণ উপস্থাপনা (বা চতুষ্পদ প্রতিনিধিত্ব) খুঁজতে চান এবং তার জন্য একটি ম্যাট্রিক্স পুনরুত্পাদন করতে চান। বেশিরভাগ অ্যালগরিদমগুলি একটি শূন্য ভেক্টর উত্পাদন করে এবং তারপরে এই ক্ষেত্রে শূন্য-বিভাগের মুখোমুখি হয়। এই ধরণের ক্ষেত্রে "যদি 0 তাহলে ..." - সমাধানের ধরণ, যেহেতু ক) কাঁটা ধীরে ধীরে এবং খ) আপনি এখনও মেশিনের এপিসিলন বাদ দিয়ে শেষ করতে পারেন তবে এই ধরণের ক্ষেত্রে সাধারণত এড়ানো চেষ্টা করা খুব খারাপ ধারণা you একাকিত্ব এবং ভয়াবহ ত্রুটি শেষ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.