একটি জটিল এবং দীর্ঘ প্রশ্ন, যা আমি স্বীকার করব, আমি এখনও খুব ভাল বুঝতে পারি না তাই আমি চেষ্টা করব এবং যথাসম্ভব সেরা ব্যাখ্যা করব।
সংক্ষিপ্ত সংস্করণ: কোনও বস্তুর আকারের ভিত্তিতে জড়তা টেনেসর গণনা করার জন্য কি কোনও সাধারণ সি ++ / ফিজিক্স সূত্র আছে?
দীর্ঘ সংস্করণ: আমাদের পদার্থবিজ্ঞানের জন্য আমাদের x, y এবং z জড়তা টেনারগুলি নির্দিষ্ট করতে হবে। বর্তমানে আমরা যেভাবে এটি করি তা ভর ছাড়াই একটি অনুপাত মাত্র। সুতরাং যদি কোনও বস্তু এক্স অক্ষের উপরে দীর্ঘ এবং ওয়াই এবং জেডের উপর পাতলা হয় এবং ভর 10000 হয় তবে আমরা জেড এবং ওয়াইকে 7000 এবং এক্স থেকে 3000 সেট করব ((এটি সঠিক নয়, তবে কেবল একটি ধারণা দেওয়ার জন্য)
এটি তুলনামূলকভাবে ভাল কাজ করে তবে আমাদের বৃহত্তম সমস্যাটি হ'ল যখন কোথাও যৌথ অস্থিতিশীলতা রয়েছে, তখন কোনটি সবচেয়ে ভাল কাজ করে তা বের না করা অবধি আমাদের ট্যান্সারে অনুমান করতে হবে। যদি আমাদের কাছে খুব বড় পদার্থবিজ্ঞানের সিমুলেশন থাকে এবং 20+ জনের মধ্যে একটিতে অন্য সমস্ত স্থিরতা হারাতে পারে তবে এটি খুব সময়সাপেক্ষ হয়ে উঠতে পারে।
আমি যা নিয়ে কাজ করছি তা হ'ল একটি ফাংশন যা কোনও বস্তুর বাউন্ডিং বাক্সটি গ্রহণ করবে এবং আশা করি তুলনামূলকভাবে সঠিক টেনজারগুলি গণনা করবে। আমি http://en.wikedia.org/wiki/List_of_moment_of_inertia_tensors থেকে কিছু গণিত নিয়েছি এবং একটি ফাংশন তৈরি করেছি যা নীচে অনুরূপ ঘূর্ণনের জন্য মূলত নীচের মতো কাজ করে।
অথবা ঘূর্ণন যদি শেষ হয় তবে এটির মতো:
সুতরাং, এটি আমাকে ফলাফলগুলি বলে মনে হচ্ছে যা আমরা এটির মতো করে চলেছি তবে এটি সাধারণ ব্যবহারের জন্য কার্যকর হবে কিনা তা নিশ্চিত করে আমি এই পথে স্যুইচ করতে চাই না। নীচে একটি ঘনক্ষেত্র এবং কেন্দ্রের পিভট সহ প্রথম চিত্রের উপর ভিত্তি করে আমার ফাংশনের কোড রয়েছে।
NxVec3 CalculateInertiaTensor( VisBoundingBox_cl boundingBox, float m )
{
float width = boundingBox.GetSizeX();
float height = boundingBox.GetSizeZ();
float depth = boundingBox.GetSizeY();
float xTensor = 0.083f * m*(height*height + depth*depth);
float yTensor = 0.083f * m*(width*width + depth*depth);
float zTensor = 0.083f * m*(width*width + height*height);
return NxVec3(xTensor, yTensor, zTensor);
}
আমি গ্যারান্টি দিতে পারি না যে এটি করার সঠিক উপায় (সর্বাধিক সঠিক উপায়টি হ'ল বাউন্ডিং বাক্সের পরিবর্তে আসল আকৃতিটি ব্যবহার করা) এবং আমি জড়তা টেনেসর এবং গণিতের সাথে খুব বেশি পরিচিত নই তবে মনে হয় এটিগুলি ফিরে আসে আমরা যা ব্যবহার করছিলাম তার সাথে মোটামুটি মিল similar এটির জন্য আরও ভাল উপায় আছে কিনা তা এখানে কেউ জানতে পারে?