Geometriai peremfeltételek kezelése¶
A Newton-Raphson-módszer minden iterációban a \(\boldsymbol{K} d\boldsymbol{u} = \boldsymbol{R}\) lineáris egyenletet oldja meg, ebbe azonban még nincsenek beépítve a geometriai peremfeltételek (elmozdulási kényszerek). Ez a fejezet bemutatja, hogyan kell módosítani a \(\boldsymbol{K}\) merevségi mátrixot és a \(\boldsymbol{R}\) maradékvektort azokon a szabadságfokokon, amelyekre \(\boldsymbol{u} = \bar{\boldsymbol{u}}\) elmozdulási kényszer vonatkozik, hogy az iteráció utáni elmozdulás elérje az előírt értéket. A többpontos kényszerek (MPC) és az érintkezéshez kapcsolódó nemlineáris kényszerek kezelése külön eljárás; lásd a Többpontos kényszerek és az Érintkezés fejezetet.
Az elmozdulási kényszerek ismeretlen változóként való megtartásának elve¶
A geometriai peremfeltétellel ellátott csomópont elmozdulása már nem ismeretlen változó, hanem az előírt \(\bar{u}_i\) értékre van rögzítve. Ezeket konstansként kezelve ki is lehetne küszöbölni a \(\boldsymbol{K} d\boldsymbol{u} = \boldsymbol{R}\) lineáris egyenletből, a FrontISTR azonban úgy érvényesíti a kényszert, hogy a kényszerezett szabadságfokokat a többi szabadságfokhoz hasonlóan benne hagyja a \(d\boldsymbol{u}\) korrekcióvektorban, és helyettük a \(\boldsymbol{K}\) és \(\boldsymbol{R}\) értékeit módosítja.
Ezzel a módszerrel az együtthatómátrix mérete és a szabadságfokok sorrendje nem változik attól függően, hogy vannak-e kényszerek, így nincs szükség a változók kiküszöbölése után felszabaduló sorok és oszlopok újratömörítésére. Mivel ez az újratömörítés ritka mátrixos tárolás esetén körülményes, a FrontISTR az utóbbi megoldást alkalmazza: a kényszert kizárólag az együtthatómátrix és a jobb oldal módosításával érvényesíti.
A Newton-Raphson-korrekció célértéke¶
Az \(i\) kényszerezett elmozdulási szabadságfok esetén a Newton-Raphson-iterációban számított \(du_i\) korrekciót úgy kell meghatározni, hogy
legyen. Ennek megfelelően kell módosítani a \(\boldsymbol{K}\) és \(\boldsymbol{R}\) értékét. Így az elmozdulásnövekmény már az első iterációban eléri az előírt \(\bar{u}_i\) értéket, a második iterációtól pedig a korrekció \(0\), ezért az előírt érték megmarad.
A mátrix és a maradékvektor módosításának eljárása¶
Az előző szakasz célértéke a \(\boldsymbol{K} d\boldsymbol{u} = \boldsymbol{R}\) lineáris egyenlet alakjának megtartása mellett a következő két módosítással érhető el.
- Az \(i\) sor diagonalizálása: A \(du_i\) együtthatóját, azaz a \(K_{ii}\) diagonális tagot \(1\)-re, az összes többi \(K_{ij}\ (j \not= i)\) együtthatót \(0\)-ra kell cserélni, a jobb oldalt pedig \(R_i \to d\bar{u}_i\) értékre kell állítani. Így az \(i\) sor egyenlete \(du_i = d\bar{u}_i\) lesz.
- Áthelyezés a \(j(\not= i)\) sorokból: Minden \(j(\not= i)\) sorban, ahol \(K_{ji} \not= 0\), a \(K_{ji} du_i = K_{ji} d\bar{u}_i\) tagot át kell vinni a jobb oldalra. Vagyis a jobb oldalból le kell vonni \(K_{ji} d\bar{u}_i\)-t, és a \(du_i\) \(K_{ji}\) együtthatóját \(0\)-ra kell állítani.
Komponensalakban a módosítás előtti és utáni egyenletek a következőképpen felelnek meg egymásnak.
A módosított együtthatómátrixot és jobb oldalt rendre \(\tilde{\boldsymbol{K}}\), illetve \(\tilde{\boldsymbol{R}}\) jelöli. A végül megoldandó lineáris egyenlet
alakú. Ha több kényszerezett szabadságfok van, a fenti 1. és 2. módosítást minden egyes \(i\) kényszerezett szabadságfokra egymás után kell alkalmazni.
A ritka mátrixos megvalósítás feldolgozási tartománya¶
A megvalósításban a \(\boldsymbol{K}\) együtthatómátrix ritka mátrixos formában van tárolva, ezért az előző szakasz 2. eljárásában a \(j(\not= i)\) sorok kezelése csak azokra a sorokra terjed ki, amelyek \(i\) oszlopában nem nulla elem található, vagyis azokra a szabadságfokokra, amelyek elemen keresztül kapcsolódnak az \(i\) kényszerezett szabadságfokhoz. Nem kapcsolódó szabadságfokoknál \(K_{ji} = 0\), így az áthelyezés nem változtatja meg a jobb oldalt. Ennek a korlátozásnak köszönhetően a kényszer kezelése a globális csomópontszámhoz képest csak lokális műveletekkel elvégezhető.
Kapcsolódó elemek¶
- A külső erő virtuális munkája és a globális egyenlet összeállítása — A módosítás előtti \(\boldsymbol{K}, \boldsymbol{R}\) felépítése
- Newton-Raphson-módszer — Kapcsolat a \(d\boldsymbol{u}\) korrekciót meghatározó iterációval
- Konvergenciakritériumok — A kényszerkezelés utáni \(\tilde{\boldsymbol{R}}\) maradék normájának kiértékelése