taman

taman

Selasa, 31 Desember 2013

BAB II

2 Konsep Object Collusion Modelling

Collision modelling menimbulkan banyak asumsi dan perikiraan, juga konsep intuitif yang selalu jelas. Hal ini sebelumnya telah kita bahas pada halaman ini dan sangat dianjurkan untuk membaca halaman sebelumnya sebelum membaca halaman ini. Kesulitan utama yang cukup sulit adalah memahami cara kerja benda benda yang memiliki rotasi dan gerak linier. Metode utama yang akan kita gunakan melibatkan tahap-tahap berikut :
  1. Tentukan titik tumbukkan dan arah normal.
  2. Hitung dorongan minimum untuk mencegah benda berpotongan atau membalikkan kecepatan secara dekat.
  3. Hitung efek impuls pada suatu perputaran da gerak linier secara terpisah berikut adalah rumusan untuk kasus 3D yang telah kami ringkas :

  • Arah
Ketika kita bekerja diluar persamaan secara manual cukup mudah untuk bekerja keluar dari arah dorongan dan karena itu kita perlu memahami apa maksud dari simbol simbol diatas, akan tetapi memahami bagian dari program komputer sangatlah penting agar kita dapatkan sedikit gambaran tentang konvensi yang kita asumsikan untuk mendapatkan tanda tanda yang bernilai benar. dalam diagram berikut panah menunjukkan arah positif, bukan kecepatan putlak yang mungkin menjadi negatif.

dalam hal ini bi v>vai sebelum tabrakan dan vbf <= vaf setelah terjadinya tabrakan. Jadi impuls mengurangi momentum dari objek dan menambahkannya ke objek b sehingga kita akan mendapatkan rumusan sebagai berikut :

Sekarang kita akan membalik urutan objek dan objek b

Dalam hal ini bi v> v ai sebelum tabrakan dan v bf <= v af setelah terjadinya. Jadi impuls mengurangi momentum dari objek b dan menambahkannya ke objek sehingga kita mendapatkan :

Sekarang tampaknya agak berantakan untuk mendapatkan program untuk menguji yang merupakan kecepatan tertinggi untuk menentukan persamaan untuk menggunakan jadi mungkin lebih mudah untuk menggunakan J negatif untuk menunjukkan kasus kedua. Jika anda perhatikan dengan teliti maka anda akan menyadari bahwa J negatif tidak berarti menarik dan bukan mengompresi, itu artinya benda bertabrakan di arah lain.
  • Rotasi Arah
Hal-hal yang lebih rumit dengan rotasi dalam momentum sudut harus diukur relatif terhadap beberapa titik tertentu. Jadi jika ‘a’ obyek berputar searah jarum jam sekitar pusat massanya mungkin juga memberikan momentum berlawanan arah jarum jam untuk mengajukan keberatan ‘b’ tentang pusat massa. Namun hal ini belum tentu mengubah momentum sudut total sistem, bahkan untuk sistem tertutup, karena gerakan linear dari pusat yang berbeda massa.

kecepatan pada titik tumbukan ‘a’ object = VPA = VCA + ωa × (r-pa)
kecepatan titik tumbukan pada objek ‘b’ = vpb = VCB + ωb × (r-pb)
  • Penurunan
Seperti halnya dengan kasus 1D kita bisa mulai dengan definisi koefisien restitusi yang merupakan rasio konvergen divergen dan kecepatan. Namun, dalam kasus ini, kecepatan bukanlah kecepatan dari pusat massa, mereka adalah kecepatan poin (dalam koordinat absolut) pada benda padat, ini adalah titik-titik pada benda yang benar-benar bertabrakan.

Biarkan Δvc a = vc ai – vc af Ini adalah perubahan kecepatan dari titik tumbukan pada tubuh ‘a’ karena dorongan. dan b = Δvc vc bi – vc bf Ini adalah perubahan kecepatan dari titik tumbukan pada tubuh ‘b’ karena dorongan. sehingga,
e * (vc ai – vc bi) = – (vc af – vc bf)
(E +1) * (vc ai – vc bi) = – (vc af – vc bf) + (vc ai – vc bi)
(E +1) * (vc ai – vc bi) = a + Δvc Δvc b
Cara yang Δvc dan Δvc b terkait dengan impuls (J), dari rumusan diatas kita akan mendapatkan :

Jadi kita mendapatkan :
  • (E +1) * (v ai – v bi) = J / Ma + ([Ia] -1 (J × ra)) x ra + J / Mb + ([Ib] -1 (J × rb)) x rb
Kami ingin memecahkan ini untuk J, untuk melakukan hal ini kita perlu memisahkan istilah J di sisi kanan. Arah impuls akan tergantung pada sifat bertabrakan material dan koefisien gesekan nya. Jika gesekan tinggi maka impuls akan berada di arah pendekatan titik bertabrakan, jika gesekan rendah maka impuls akan tegak lurus terhadap permukaan bertabrakan, tidak ada dorongan sejajar dengan permukaan karena mereka dapat meluncur dalam arah. Jadi membelah dorongan ke besarnya dan arah dapat memungkinkan gesekan untuk diperhitungkan dan memungkinkan besarnya dorongan untuk dibawa keluar dari sisi kanan sebagai istilah umum.

Dengan asumsi bahwa ada semacam solusi dan kita perlu membuat
([Ia] -1 (J × ra)) × ra = | J | * ([Ia] -1 (n × ra)) × ra
Jadi hasilnya adalah :
| J | = (e +1) * (v ai – v bi) / (1/Ma + n • ([Ia] -1 (n × ra)) x ra + 1/Mb + n • ([pon] -1 (n × rb)) × rb)
  • Kode
/** This function calulates the velocities after a 3D collision vaf, vbf,waf and wbf from information about the colliding bodies
@param double e coefficient of restitution which depends on the nature of the two colliding materials
@param double ma total mass of body a
@param double mb total mass of body b
@param matrix Ia inertia tensor for body a in absolute coordinates(if this is known in local body coordinates it must be converted before this is called).
@param matrix Ib inertia tensor for body b in absolute coordinates(if this is known in local body coordinates it must be converted before this is called).
@param vector ra position of collision point relative to centre of mass of body a in absolute coordinates (if this is known in local body coordinates it must be converted before this is called).
@param vector rb position of collision point relative to centre of mass of body b in absolute coordinates (if this is known in local body coordinates it must be converted before this is called).
@param vector n normal to collision point, the line along which the impulse acts.
@param vector vai initial velocity of centre of mass on object a
@param vector vbi initial velocity of centre of mass on object b
@param vector wai initial angular velocity of object a
@param vector wbi initial angular velocity of object b
@param vector vaf final velocity of centre of mass on object a
@param vector vbf final velocity of centre of mass on object a
@param vector waf final angular velocity of object a
@param vector wbf final angular velocity of object b
*/
CollisionResponce(double e,double ma,double mb,matrix Ia, matrix Ib,vector ra,vector rb,vector n, vector vai, vector vbi, vector wai, vector wbi, vector vaf, vector vbf, vector waf, vector wbf) {
matrix IaInverse = Ia.inverse();
vector normal = n.normalise();
vector angularVelChangea = normal.copy();
// start calculating the change in abgular rotation of a angularVelChangea.cross(ra);
IaInverse.transform(angularVelChangea);
vector vaLinDueToR = angularVelChangea.copy().cross(ra);
// calculate the linear velocity of collision point on a due to rotation of a double scalar = 1/ma + vaLinDueToR.dot(normal);
matrix IbInverse = Ib.inverse();
vector angularVelChangeb = normal.copy();
// start calculating the change in abgular rotation of b angularVelChangeb.cross(rb);
IbInverse.transform(angularVelChangeb);
vector vbLinDueToR = angularVelChangeb.copy().cross(rb);
// calculate the linear velocity of collision point on b due to rotation of b scalar += 1/mb + vbLinDueToR.dot(normal);
double Jmod = (e+1)*(vai-vbi).magnitude()/scalar;
vector J = normal.mul(Jmod); vaf = vai – J.mul(1/ma); vbf = vbi – J.mul(1/mb);
waf = wai – angularVelChangea; wbf = wbi – angularVelChangeb; }
  • Metode alternatif menggunakan matriks
Sepertinya pemikiran yang baik untuk mengekspresikan semua persyaratan menggunakan jenis aljabar yang sama, tidaklah mungkin untuk mengekspresikan kemurnian inersia tensor dalam hal vektor atau quaternions sehingga kita bisa menghitung kmurnian dalam metode matriks? Hubungan antara impuls J dan perubahan kecepatan dari titik di mana J diterapkan Jadi sekarang kita mencakup dampak J pada kecepatan relatif tubuh A dan B :

Dimana : 
Jadi sekarang kita mencangkup dampak J pada kecepatan relative badan A dan B Perubahan dalam kecepatan linear relatif titik tumbukan karena J = (E +1) * (v ai – v bi)

Oleh karena itu kita perlu untuk membalikkan matriks ini untuk mendapatkan ekspresi untuk J dalam hal kecepatan approch, adakah yang dapat membantu saya memecahkan masalah ini ?
  • Metode Lainnya
  1. Solusi menggunakan impuls
  2. Tabrakan Sempurna Inelastis
  3. Tabrakan Sempurna Elastis
  4. Solusi menggunakan kekekalan momentum dan energi
  5. Solusi Menggunakan Impuls Impuls ditransfer antara obyek = [NEMA] * (v af – v ai) = – [NEMb] * (v bf – v bi) di mana :
  • [Nema] = Newton-Euler Matrix untuk objek, ini adalah matriks 6×6 elemen.
  • [NEMb] = Newton-Euler Matrix untuk objek b, ini adalah matriks 6×6 elemen.
  • v = kecepatan akhir af untuk objek, ini adalah vektor berdimensi 6 mengandung kedua linear dan komponen rotasi di semua 3 dimensi. ( lihat di sini untuk penjelasan )
  • v ai = kecepatan awal untuk objek, ini adalah vektor berdimensi 6 mengandung kedua linear dan komponen rotasi di semua 3 dimensi.
  • v = kecepatan akhir bf untuk objek b, ini adalah vektor berdimensi 6 mengandung kedua linear dan komponen rotasi di semua 3 dimensi.
  • v = kecepatan bi awal untuk objek b, ini adalah vektor berdimensi 6 mengandung kedua linear dan komponen rotasi di semua 3 dimensi.
Catatan: Saya mengasumsikan bahwa dalam kasus elastis, bahwa hanya bagian linear dari impuls tersebut ditransfer antara obyek. Torsi eksternal karena itu selalu nol, sehingga persamaan di atas berlaku. Dalam kasus inelastis mungkin ada dorongan rotasi ditransfer? Situasi-satunya yang saya bisa memikirkan di mana impuls rotasi elastis mungkin terjadi adalah tabrakan dua massa berputar pada ulir sekrup yang sama. Ada yang bisa membantu saya menjelaskan ini ? Apakah kita perlu mempertimbangkan komponen impuls rotasi dalam tabrakan bebas benda padat mengambang ?
  • Inelastis Tabrakan Sempurna
Pertama mengambil kasus tabrakan inelastis sempurna (di mana benda saling menempel setelah tumbukan) dan kecepatan akhir mereka adalah sama. Jadi, v = v af bf (hal ini tidak sepenuhnya benar karena ketika benda tetap bersama-sama mereka akan mulai mengorbit sekitar satu sama lain, tetapi mereka akan memiliki kecepatan rata-rata yang sama, yang merupakan kecepatan pusat massa umum)
[Nema] * (v af – v ai) = – [NEMb] * (v bf – v bi)
sehingga substitutingv af untuk v bf memberikan :
[Nema] * (v af – v ai) = [NEMb] * (-v af + v bi)
Kita ingin memecahkan untuk menemukan nilai v af, ketika mengalikan matriks vektor, perkalian adalah distributif atas penambahan sehingga
[Nema] * v af – [NEMA] * v ai = [NEMb] * v bi – [NEMb] * v af
Kita dapat mengatur ulang vektor untuk memberikan :
[Nema] * v af + [NEMb] * v af = [NEMb] * v bi + [NEMA] * v ai
Aku tidak tahu cukup tentang aljabar matriks untuk melangkah lebih jauh di sini jadi saya akan memperluas syarat-syarat :
 
Saya tidak yakin ini akan membantu ! Tapi mungkin ada cara ke yang lain, mungkin kita bisa menggantikan dua matriks di sebelah kiri persamaan dengan matriks tunggal yang mewakili inersia / massa benda gabungan. Hal ini juga mendapat putaran masalah sebelumnya bahwa dua benda orbit putaran satu sama lain, sehingga memiliki gabungan yang berbeda inersia / massa matriks pula. Jadi :
[NEMcombined] * v af = [NEMb] * v bi + [NEMA] * v ai
sehingga solusinya adalah :
v = v af bf = [NEMcombined] invers * ([NEMb] * v bi + [NEMA] * v ai)
Nilai impuls adalah :
impuls = [NEMA] * (v af – v ai)
impuls = [NEMA] * ([NEMcombined] invers * ([NEMb] * v bi + [NEMA] * v ai) – v ai)
  • Tabrakan Sempurna Elastis
Dalam hal ini mengasumsikan bahwa persamaan untuk impuls adalah sama dengan kasus inelastis (tapi nilainya dua kali karena benda-benda yang terpisah pada tingkat yang sama bahwa mereka mendekati). Saya tidak berpikir ini benar-benar terjadi karena, dalam kasus 3D tanpa gesekan maka impuls harus normal terhadap permukaan tabrakan, dan dorongan rotasi harus nol. Can anyone menyarankan bagaimana menghitung nilai impuls ini ?
impuls = 2 [Nema] * ([NEMcombined] invers * ([NEMb] * v bi + [NEMA] * v ai) – v ai)
Kecepatan akhir = kecepatan awal + impuls v = v af ai + 2 [Nema] * ([NEMcombined] invers * ([NEMb] * v bi + [NEMA] * v ai) – v ai)
Solusi Menggunakan Kekelan Momentum dan Energi Dengan kekekalan momentum linier :


Semua rotasi dalam persamaan di atas adalah tentang titik yang sama, seperti yang dijelaskan dalam kasus 2D. Jika kita ingin mengukur rotasi tentang pusat objek sendiri massa, maka kita perlu menerapkan teorema sumbu paralel, yang akan menambah istilah lain untuk persamaan di atas.
Dengan kekekalan energi :

Hal ini memberikan persamaan 7 dengan 12 diketahui sehingga kita perlu ekstra dalam formasi untuk menyelesaikannya :
  • Kecepatan sebuah: , dan
  • Kecepatan b: , dan
  • Rotasi dari sumbu x tentang: lilin
  • Rotasi dari sekitar sumbu y: cara
  • Rotasi sumbu z tentang: waz
  • Rotasi b tentang sumbu x: wbx
  • Rotasi b tentang sumbu y: wby
  • Rotasi b tentang z sumbu: WBZ
Jadi ada informasi yang cukup di sini untuk memecahkan persamaan sehingga kita perlu menambahkan informasi tambahan, seperti setiap kendala yang berlaku, atau ‘sudut insiden = sudut refleksi’ terapkan. Bahkan jika kita memiliki informasi yang cukup untuk menyelesaikan dalam kasus umum persamaan yang sangat rumit untuk memecahkan kasus yang umum. Khususnya karena kita tidak biasanya bekerja dalam bingkai-referensi-dari bentuk individu, sehingga secara umum I (Inersia) istilah akan menjadi fungsi dari sudut obyek seperti berputar, hal ini akan membuat persamaan yang sangat rumit. Jadi kita mungkin perlu mengambil pendekatan yang berbeda, sebagai berikut :

Asumsikan kita pindah ke kerangka acuan bentuk 1, sehingga bentuk 1 akan selalu muncul stasioner dalam bingkai ini. Gerakan bentuk 2 akan lebih mudah untuk menghitung dalam bingkai ini, misalnya, jika kita berasumsi bahwa dorongan dalam arah hanya normal (tidak ada sliding). Oleh karena itu gerakan paralel untuk pesawat akan konstan dan gerak yang normal untuk pesawat akan dibalik selama tabrakan. Mungkin ada energi yang ditransfer antara gerak linier dan sudut, tergantung pada posisi relatif dari pusat-massa-bentuk 2 dan titik tabrakan, tetapi sebagai pendekatan pertama dimungkinkan untuk mengabaikan itu ?
Kami masih harus menghitung berapa gerakan dari frame-referensi-telah berubah dalam tabrakan, tapi ini harus relatif mudah menggunakan konservasi momentum. Jadi bagaimana untuk pindah ke frame-referensi-bentuk 1? Yang harus kita lakukan adalah memindahkan bentuk 2 di bawah bentuk 1 dalam grafik adegan, tidak lupa untuk menerjemahkan semua parameter yang terkait dengan bentuk.

Jadi transformasi [T8] memberikan posisi relatif terhadap bentuk 2 membentuk 1. di mana dalam hal ini :
[T8] = [T7] [T3] [invers T2] [invers T5]
Kita tidak boleh lupa untuk mengubah semua kinematika dan dinamika parameter untuk bentuk 2 juga.
  • Rotasi Komponen 3D
Jika kita mengasumsikan bahwa kedua objek bepergian dalam ruang bebas (tidak ada torsi eksternal), maka mereka bertabrakan, maka mereka melakukan perjalanan lagi di ruang bebas. Seperti dijelaskan di atas, rotasi awal diketahui, dan kami ingin menentukan rotasi akhir. Pada tabrakan, energi dapat ditransfer antara benda bertabrakan, dan antara energi linear dan rotasi.
Hukum kekekalan momentum dan energi di atas tidak cukup untuk menentukan kecepatan akhir. Kita perlu mempertimbangkan faktor-faktor lain yang ditentukan oleh geometri dari obyek. Salah satu faktor adalah bahwa objek hanya dapat memutar tentang sumbu tertentu ( lihat torsi tidak ada ). Jika objek adalah bola yang sempurna (atau setidaknya istilah inersia yang sama ke segala arah). Maka objek dapat memutar ke segala arah, tapi setidaknya kita dapat menggunakan simetri untuk menyederhanakan persamaan. Jika benda-benda yang tidak simetris, maka mereka hanya bisa memutar tentang sumbu tertentu yang akan membatasi hasil yang mungkin.
Faktor lainnya adalah posisi titik dampak, relatif terhadap pusat massa dari dua benda. Jika ini terlalu rumit maka Anda mungkin ingin mempertimbangkan pendekatan numerik untuk tabrakan .

Tidak ada komentar:

Posting Komentar