Geometrik chegaraviy shartlarni qayta ishlash¶
Newton-Raphson usuli har bir iteratsiyada \(\boldsymbol{K} d\boldsymbol{u} = \boldsymbol{R}\) chiziqli tenglamani yechadi, biroq geometrik chegaraviy shartlar (siljish cheklovlari) bu tenglamaga hali kiritilmagan. Ushbu bobda \(\boldsymbol{u} = \bar{\boldsymbol{u}}\) siljish cheklovi qo‘yilgan erkinlik darajalari uchun qattiqlik matritsasi \(\boldsymbol{K}\) va qoldiq vektori \(\boldsymbol{R}\) qanday o‘zgartirilib, iteratsiyadan keyingi siljish berilgan qiymatga yetkazilishi ko‘rsatiladi. Ko‘p nuqtali cheklovlar (MPC) va kontaktga oid nochiziqli cheklovlar alohida ishlanadi; Ko‘p nuqtali cheklovlar va Kontakt ga qarang.
Siljish cheklovini noma’lum o‘zgaruvchi sifatida saqlash siyosati¶
Geometrik chegaraviy shart qo‘yilgan tugunning siljishi endi erkin noma’lum emas, balki berilgan \(\bar{u}_i\) qiymatga mahkamlangan. Bunday DOF ni konstanta sifatida ko‘rib \(\boldsymbol{K} d\boldsymbol{u} = \boldsymbol{R}\) dan chiqarib tashlash mumkin, ammo FrontISTR cheklangan DOF ni boshqa DOF lar kabi \(d\boldsymbol{u}\) tuzatish vektori ichida qoldirib, \(\boldsymbol{K}\) va \(\boldsymbol{R}\) ni o‘zgartirish orqali cheklovni bajaradi.
Bu usulda koeffitsiyent matritsasining o‘lchami va DOF tartibi cheklov bor-yo‘qligiga qarab o‘zgarmaydi; o‘zgaruvchilarni chiqarib, bo‘shagan satr va ustunlarni qayta joylashtirish talab qilinmaydi. Sparse matritsa saqlashida bunday qayta joylashtirish noqulay bo‘lgani uchun FrontISTR faqat koeffitsiyent matritsa va o‘ng tomonni yangilash usulidan foydalanadi.
Newton-Raphson tuzatishining maqsad qiymati¶
Siljishi cheklangan \(i\) DOF uchun Newton-Raphson iteratsiyasida olinadigan \(du_i\) tuzatish
bo‘lishi uchun \(\boldsymbol{K}\) va \(\boldsymbol{R}\) o‘zgartiriladi. Natijada birinchi iteratsiyada siljish inkrementi berilgan \(\bar{u}_i\) qiymatga yetadi; ikkinchi va keyingi iteratsiyalarda tuzatish \(0\) bo‘lib, berilgan qiymat saqlanadi.
Matritsa va qoldiq vektorini o‘zgartirish tartibi¶
Oldingi bo‘limdagi maqsad qiymat \(\boldsymbol{K} d\boldsymbol{u} = \boldsymbol{R}\) shaklini saqlagan holda ikki o‘zgartirish bilan amalga oshiriladi.
- \(i\) satrni diagonallashtirish: \(du_i\) koeffitsiyenti bo‘lgan \(K_{ii}\) ni \(1\) ga, qolgan \(K_{ij}\ (j \not= i)\) larni \(0\) ga almashtiring va o‘ng tomonni \(R_i \to d\bar{u}_i\) qiling. Shunda \(i\) satr tenglamasi \(du_i = d\bar{u}_i\) bo‘ladi.
- \(j(\not= i)\) satrlardan o‘ng tomonga ko‘chirish: har bir \(j(\not= i)\) satr uchun \(K_{ji} \not= 0\) bo‘lsa, \(K_{ji} du_i = K_{ji} d\bar{u}_i\) hadini o‘ng tomonga ko‘chiring. Ya’ni o‘ng tomondan \(K_{ji} d\bar{u}_i\) ni ayirib, \(du_i\) koeffitsiyenti \(K_{ji}\) ni \(0\) ga qo‘ying.
Komponentlarda o‘zgartirishdan oldingi va keyingi tenglamalar quyidagicha mos keladi.
O‘zgartirilgan koeffitsiyent matritsa va o‘ng tomon mos ravishda \(\tilde{\boldsymbol{K}}, \tilde{\boldsymbol{R}}\) deb belgilansa, yechiladigan chiziqli tenglama
bo‘ladi. Bir nechta cheklangan DOF bo‘lsa, yuqoridagi 1 va 2 amallar har bir \(i\) DOF uchun ketma-ket bajariladi.
Sparse matritsa implementatsiyasidagi ishlov sohasi¶
Implementatsiyada \(\boldsymbol{K}\) koeffitsiyent matritsa sparse formatda saqlanadi. Shuning uchun oldingi bo‘limning 2-amalidagi \(j(\not= i)\) satrlarni qayta ishlash faqat \(i\) ustunda noldan farqli komponenti bor satrlarga, ya’ni elementlar orqali cheklangan \(i\) DOF bilan bog‘langan tugunlarning erkinlik darajalariga qo‘llanadi. Bog‘lanmagan DOF lar uchun \(K_{ji} = 0\), shuning uchun hadni ko‘chirish o‘ng tomonni o‘zgartirmaydi. Bu cheklash constraint processing ni jami tugunlar soniga nisbatan faqat lokal amallar bilan bajarish imkonini beradi.
Bog‘liq bo‘limlar¶
- Tashqi kuch virtual ishi va global tenglamani yig‘ish — o‘zgartirishdan oldingi \(\boldsymbol{K}, \boldsymbol{R}\) ni tuzish
- Newton-Raphson usuli — \(d\boldsymbol{u}\) tuzatishni olish iteratsiyasi bilan bog‘lanish
- Yaqinlashish mezonlari — cheklov ishlovidan keyingi \(\tilde{\boldsymbol{R}}\) qoldiq normasini baholash