132YKPJ Projekt K 132PRPM Přetváření a porušování materiálů OOFEM: Implementace plasticitního materiálového modelu Cam-Clay (verze pro Bažantovu soutěž, 04/2018) Vypracoval: Ondřej Faltus Vyučující: Ing. Martin Horák, PhD. ZS 2017/2018
Strana 1 Obsah 1. Cíl práce... 2 2. Modifikovaný materiálový model Cam-Clay... 2 2.1. Základní předpoklady... 2 2.2. Funkce plasticity... 2 2.3. Gradient funkce plasticity... 3 2.4. Současná omezení... 4 3. Používané algoritmy... 4 3.1. Elastická predikce a plastická korekce... 4 3.2. Projekce na nejbližší bod... 5 4. Popis kódu... 6 4.1. performplasticityreturn()... 6 4.2. giveyieldvalueatstress()... 7 4.3. giveplasticitygradientatstress()... 7 4.4. giveyieldfunctiondoublederivative()... 7 5. Demonstrace správnosti algoritmu... 8 6. Rozšíření v rámci bakalářské práce... 8 6.1. Zpevnění a změkčení v modelu Cam-Clay... 9 6.2. Úpravy algoritmu pro implementaci zpevnění... 9 6.3. Práce zbývající k dokončení v kódu programu OOFEM... 11 7. Literatura... 11
Strana 2 1. Cíl práce Cílem je implementovat modifikovaný materiálový model Cam-Clay do programu pro výpočty metodou konečných prvků OOFEM. 2. Modifikovaný materiálový model Cam-Clay Modifikovaný materiálový model Cam-Clay byl vyvinut v 60. a 70. letech 20. století na univerzitě v Cambridge prací profesorů K. H. Roscoea a J. Burlanda. Je nástupcem původního, asi o deset let staršího modelu Cam-Clay. Na rozdíl od svého předchůdce má jeho funkce plasticity tvar elipsy a vykazuje vysokou numerickou stabilitu. Model je tedy vhodný pro numerické výpočty. Používá se pro popis chování některých zemin. 2.1. Základní předpoklady Model pracuje s několika základními předpoklady: Nelineární elastická část zatěžovací křivky, tj. D = D (σ) Při plastizaci dochází ke zpevnění či změkčení až do dosažení kritického stavu. Po tomto okamžiku se funkce plasticity nadále nemění a zároveň všechna další plastická deformace je ryze deviatorická. Pro jednoduchost se napětí zobrazuje pomocí invariantů p a q, které vyjadřují hydrostatickou, resp. deviatorickou část napětí, kde p = σ a q = 3 2 s = 3J 2.2. Funkce plasticity Funkce plasticity materiálového modelu Cam-Clay má tvar elipsy v prostoru p-q (viz obrázek 1). Její předpis zní: kde p M f(p, q, p ) = q M p(p p) je prekonsolidační tlak v zemině. Tento parametr se mění se zpevněním. je materiálový parametr udávající poměr délky os elipsy plasticity a zároveň i sklon přímky kritického stavu
Strana 3 Obr. 1. Funkce plasticity modifikovaného modelu Cam-Clay v prostoru p,q Na obrázku 1 je znázorněna kromě elipsy plasticity i tzv. přímka kritického stavu. Povšimněme si, že tato přímka protíná elipsu v bodě, ve kterém gradient funkce plasticity je rovnoběžný s osou p (tj. v jejím nejvyšším bodě). Přímka vyjadřuje trajektorii, po které se tento bod bude pohybovat při zpevňování/změkčování, když se bude velikost elipsy měnit. Sklon této přímky je M. 2.3. Gradient funkce plasticity Model používá sdružený zákon plastického přetváření, tj. plastický gradient je přímo gradientem funkce plasticity její první derivací podle napětí. Lze tedy odvodit: g(σ) = f(σ) σ = f p I p I σ + f q J q J σ = M (2p p ) 1 3 δ + 2q P: s 3 2J kde = M 3 (2σ + p )δ + 3P: s 1 0 0 0 1 0 P = 0 0 1 2 0 0 0 2 0 0 0 2
Strana 4 (Poznámka: Protože J = σ σ + (σ σ ) + σ σ + τ + τ + τ, derivací získáme σ = s ; s ; s ; 2τ ; 2τ ; 2τ = P: s) Pro implementaci algoritmu projekce na nejbližší bod (popsán v části 3.2) je potřeba stanovit i druhou derivaci funkce plasticity podle napětí, tedy: kde S = (P:s) σ = = ( δ) σ = f(σ) σ = 3S + 2 3 M a 2 0 0 0 2 0 0 0 2 Tato hodnota už není závislá na napětí a zůstává tedy stále konstantní. 2.4. Současná omezení V současné fázi implementace je model Cam-Clay zjednodušen ve dvou směrech. Pro elastickou část zatěžování se neuvažuje nelinearita a pro plastickou část se neuvažuje zpevnění. Model je tak v zásadě převeden do stavu dokonalého pružnoplastického modelu. 3. Používané algoritmy 3.1. Elastická predikce a plastická korekce Algoritmus pracuje s deformací předepisovanou v pseudočasových krocích. Na začátku je tedy již známa celková deformace na konci kroku. Z předchozích kroků přitom již známe jak dosavadní celkovou deformaci, tak její rozdělení na elastickou a plastickou část. V každém
Strana 5 kroku se provede fáze výpočtu zvaná elastická predikce. Zavede se předpoklad, že veškerá nová deformace se projeví jako deformace elastická. Lze tedy stanovit tzv. zkušební napětí: σ, = D : ε ε, Nyní je třeba ověřit, zda byl předpoklad správný. Pokud platí předpoklad byl splněn. Uloží se fσ, 0 σ = σ, ε, = ε, a krok skončí. V opačném případě je třeba přistoupit k tzv. plastické korekci. Ta vychází ze dvou základních rovnic: ε, 0 λ 0 f(σ ) = 0 σ = D : ε ε, λ g(σ ) Neznámými hodnotami v těchto rovnicích jsou σ a λ. Řešitelnost soustavy rovnic závisí na jednom každém materiálovém modelu (a tedy tvaru funkce plasticity). 3.2. Projekce na nejbližší bod Metoda projekce na nejbližší bod slouží k numerickému řešení problému plastické korekce. Jedná se o aplikaci Newton-Raphsonovy metody na základní soustavu rovnic, která přejde na následující vyjádření: kde R, + H, : σ, + λ, g, = 0 R, = ε, + ε, + λg a H, = (D + λ σ ) f, + g, : σ, = 0
Strana 6 Obr. 2. Geometrická ilustrace algoritmu projekce na nejbližší bod (převzatá z SIMO, J. C. a Thomas J. R. HUGHES. Computational inelasticity. New York: Springer, c1998. ISBN 0-38797520-9) Tento linearizovaný problém lze vyřešit v několika krocích, dokud R (reziduál plastické deformace) a hodnota funkce plasticity nejsou nulové (resp. jejich odchylky se pohybují v přijatelných mezích). 4. Popis kódu Veškerý nový kód v programu OOFEM se nachází ve dvou třídách, a to CamClayMat a CamClayMatStatus. Obě jsou obsažené ve dvou nových zdrojových souborech camclaymat.c a camcalymat.h. Níže následuje popis úseků kódu, které jsou nově napsány a liší se od kódu popisujícího jiné materiálové modely. 4.1. performplasticityreturn() Metoda provádí hlavní část práce programu. Na základě zadané hodnoty koncové deformace provede elastickou predikci, zkontroluje splnění předpokladu a v případě potřeby provede i plastickou korekci pomocí metody projekce na nejbližší bod. Na konci aktualizuje vypočtenými
Strana 7 hodnotami stav materiálového bodu v paměti programu. Metoda přeruší iteraci a varuje, pokud počet kroků v projekci na nejbližší bod překročí vnitřně nastavenou hranici. Argumenty: GaussPoint *gp materiálový bod, v němž algoritmus probíhá a v němž jsou uloženy dosavadní hodnoty deformací. const FloatArray &totalstrain sloupcová matice deformace na konci kroku TimeStep *tstep časový skok 4.2. giveyieldvalueatstress() Metoda slouží k výpočtu hodnoty funkce plasticity pro dané napětí. Metoda ohlásí chybu, pokud zadaná sloupcová matice napětí nemá správnou velikost. Argumenty: FloatArray &stress sloupcová matice napětí double &pc aktuální hodnota parametru p Návratová hodnota: číselná hodnota funkce plasticity 4.3. giveplasticitygradientatstress() Metoda vyhodnotí hodnotu plastického gradientu pro dané napětí. Metoda ohlásí chybu, pokud zadaná sloupcová matice napětí nemá správnou velikost. Argumenty: FloatArray &answer sloupcová matice, do nějž bude uložena odpověď FloatArray &stress sloupcová matice napětí double &pc aktuální hodnota parametru p 4.4. giveyieldfunctiondoublederivative() Metoda vyhodnotí druhou derivaci funkce plasticity pro daný materiál. Tato hodnota není závislá ani na napětí ani na p. Argumenty: FloatArray &answer sloupcová matice, do nějž bude uložena odpověď
Strana 8 5. Demonstrace správnosti algoritmu V současné době, z důvodu chybějícího algoritmu pro výpočet algoritmické tuhosti, není možné testovat program na úrovni konstrukce. Pro ověření správnosti ale lze vytvořit příklad pouze s jedním konečným prvkem, uchyceným pevně ve všech směrech, kterému je následně předepisována deformace. Předepisováním různých poměrů deformace v různých směrech lze zjistit, zda programem zjištěné napětí odpovídá očekáváním. Ve zkušebním souboru byl tomuto prvku přiřazen materiál popsaný modelem Cam-Clay s parametry p = 10 MPa, M = 10. Následně byly přiřazovány deformace v různých poměrech a všechna výsledná napětí zobrazena v prostoru p-q. Porovnáním s elipsou plasticity vynesenou podle předpisu funkce se ukazuje, že algoritmus pracuje správně. 80,00000 60,00000 40,00000 q Body napětí v prostoru p-q Body plastizace přímka kritického stavu 20,00000 0,00000 0,00000 2,00000 4,00000 6,00000 8,00000 10,00000 12,00000-20,00000-40,00000-60,00000 p Obr. 3. Porovnání vypočtených hodnot napětí s teoretickou elipsou plasticity v prostoru p-q 6. Rozšíření v rámci bakalářské práce Na práci v současné době navazuji v bakalářské práci. Cílem je doplnit model Cam-Clay do plnohodnotné podoby z hlediska uvažování zpevnění a implementovat výpočet algoritmické tuhosti tak, aby byl algoritmus plně použitelný pro výpočty na úrovni konstrukcí, což bude následně ověřeno.
Strana 9 6.1. Zpevnění a změkčení v modelu Cam-Clay Zpevnění a změkčení v modelu Cam-Clay je definováno pomocí zákona zpevnění ve tvaru: Povšimněme si, že vývoj parametru zpevnění p závisí specificky na volumetrické plastické deformaci. To odpovídá předpokladu, že po dosažení kritického stavu, kdy je veškerá další plastická deformace ryze deviatorická, už k dalšímu zpevnění či změkčení nedochází. 6.2. Úpravy algoritmu pro implementaci zpevnění Protože nyní už není možné považovat hodnotu p za konstantu, je třeba její proměnný charakter uvážit v rovnicích při výpočtu návratu na plochu plasticity (v části algoritmu zabývající se elastickou predikcí toto nemá vliv; p se podle zákona zpevnění mění pouze se změnou volumetrické plastické deformace, a ta je v elastickém stavu z definice nulová). Algoritmus návratu na plochu plasticity jsem přepracoval tak, že nyní je v něm p třetí neznámou (spolu s λ a δσ ). Tři nelineární rovnice, které je potřeba splnit, nyní vypadají takto: Poslední rovnice byla získána numerickou implicitní integrací zákona zpevnění. Rozvineme-li rovnice pomocí Newtonovy metody, získáváme soustavu osmi rovnic o osmi neznámých:, kde R, je zkrácený zápis pro a R, na pravé straně je příslušný reziduál v minulém kroku projekčního algoritmu. Všechny koeficienty v této soustavě rovnic je možno explicitně vyjádřit:
Strana 10 Program postupuje tak, že po stanovení těchto devíti koeficientů (poslední hodnoty reziduálů už si pamatuje z předchozího kroku) vyjádří neznámé dle následujících vzorců: kde:
Strana 11 Na konci kroku program stejně jako dosud posoudí, zda bylo dosaženo konvergence (samozřejmě ale teď ve všech třech neznámých) a podle toho buď zahájí nový cyklus nebo prohlásí výsledek za dostatečně přesný. Při překročení maximálního počtu iterací ohlásí chybu. 6.3. Práce zbývající k dokončení v kódu programu OOFEM V současném stavu je hotová funkce performplasticityreturn(), do které, za předpokladu že program bude pracovat správně, již dále nebude třeba zasahovat. Hlavním zbývajícím problémem je algoritmická tuhost, která bude naimplementována ve funkci give3dmaterialstiffnessmatrix(). 7. Literatura SIMO, J. C. a Thomas J. R. HUGHES. Computational inelasticity. New York: Springer, c1998. ISBN 0-387-97520-9) JIRÁSEK, BAŽANT: Inelastic analysis of structures, 2002, John Wiley & Sons NETO, E. A. de Souza, Djordje. PERIĆ a D. R. J. OWEN. Computational methods for plasticity: theory and applications. Chichester, West Sussex, UK: Wiley, 2008. ISBN 978-0-470-69452-7. PATZÁK, B. OOFEM project home page. http://www.oofem.org, 2000.