MVE255/TMV191 Matematisk analys i flera variabler M/TD FEM1: Randvärdesproblem och finita elementmetoden i en variabel. 1 Inledning Vi ska lösa partiella differentialekvationer PDE, dvs ekvationer som innehåller partiella derivator av den okända flervariabelfunktionen u = ux, y, z. Till exempel, Laplaces ekvation, och Poissons ekvation, 2 u x 2 + 2 u y 2 + 2 u z 2 = 2 u x 2 + 2 u y 2 + 2 u = fx, y, z. z2 Jämför ordinär differentialekvation ODE från läsperiod 2 som innehåller ordinära derivator av en okänd envariabelfunktion, till exempel, u t = ft, ut. En PDE ställs upp i ett område i rummet, D R 3, eller i planet, D R 2. För att lösningen ska vara unik behöver vi ge randvillkor på randen S = D till området D, till exempel, u = på S. Vi har då ett randvärdesproblem. Man kan också studera tidsberoende PDE, till exempel, värmeledningsekvationen, och vågekvationen, u t 2 u x 2 2 u y 2 2 u z 2 =, 2 u t 2 2 u x 2 2 u y 2 2 u z 2 =. PDE uppträder inom många områden: värmeledning, diffusion, hållfasthet, vågutbredning, strömning, elektromagnetiska fält, kvantmekanik och så vidare. Trots olika bakgrund har dessa PDE väsentligen samma matematiska form. Observera, till exempel, att Laplace-operatorn u = 2 u x 2 + 2 u y 2 + 2 u z 2 ingår i samtliga exempel ovan. Vi löser PDE numeriskt med finita elementmetoden FEM. Denna metod är ett mycket viktigt verktyg för maskiningenjören. Metoden utvecklades på 195-talet av maskiningenjörer för hållfasthetsberäkningar. FEM bygger på en omskrivning av randvärdesproblemet till en så kallad svag formulering. För enkelhets skull börjar vi med att studera randvärdesproblem och FEM i en variabel, dvs u = ux, x I R. Vi anger SI-enheter inom klammer, till exempel, [K] för temperatur i Kelvin, [m] för längd i meter, [J] för energi i Joule. 1 2 maj 211, Stig Larsson, Matematiska vetenskaper, Chalmers tekniska högskola 1
1.1 Randvärdesproblem i en variabel 1.1.1 Värmeledningsekvationen Temperaturen ux [K] vid tvärsnittet x [m] i en platta med tjockleken L [m], se Figur 1, ges av differentialekvationen u ux u L L x Figur 1: Värmeledning i en platta. 1 D ax Dux = fx, x I =, L. Här är D = d [ ] 1 derivata; dx m [ ] J fx m 3 värmekälltäthet; s ux [K] temperatur; [ ] J ax värmeledningskoefficient; m K s [ ] J jx = ax Dux m 2 värmeflödestäthet i x-riktningen Fouriers lag. s Vi antar här att inga kvantiteter beror av koordinaterna y och z. Samma ekvation kan också beskriva värmeledning i en smal stång av längden L. Dimensionskontroll: Kontrollera att enheterna i vänster- och högerled stämmer i differentialekvationen i 1. 1.1.2 Randvillkor Vid x = L gäller att värmeflödestätheten i utåtriktningen är proportionell mot temperaturskillnaden: 2 jl = k L ul ul, där 2
u L [K] är den omgivande temperaturen; ul [K] är temperaturen på insidan av ytan; [ ] J k L m 2 en värmeöverföringskoefficient. K s Å andra sidan är ju flödestätheten enligt Fouriers lag: jl = al DuL. Alltså: al DuL = k L ul ul, dvs a Du + k L u ul = för x = L. Vid x = är värmeflödestätheten i utåtriktningen 3 j = k u u, eftersom j är flödestätheten i x-riktningen utåt. Men vi har även j = a Du. Alltå: Sammanfattningsvis kan vi skriva: a Du = k u u. 4 a D N u + k u u A = för x =, L. Här är u A den omgivande temperaturen ambient temperature, dvs u A = u respektive u A = u L, koefficienten k = k respektive k = k L, och D N riktningsderivatan i utåtriktningen i den utåtriktade normalens riktning, dvs D N = d dx i x =, Koefficienten k anger hur väl isolerad ändpunkten är. D N = d dx i x = L. Specialfall 1: k =, ingen isolering. Om vi dividerar med k, och låter k får vi + u u A =, dvs 1 k a D Nu + u u A =, u = u A i x = eller x = L. Detta randvillkor innebär att den aktuella ändpunkten, x = eller x = L, inte är isolerad. Temperaturen är densamma på insidan och på utsidan av randytan. Specialfall 2: k =, perfekt isolering. Med k = får vi a D N u =, dvs inget värmeflöde genom den aktuella ändpunkten. Eftersom a > kan detta förenklas till D N u = i x = eller x = L. 3
1.1.3 Randvärdesproblem Genom att sätta samman 1 och 4 får vi ett randvärdesproblem. Randvärdesproblem. Finn u = ux sådan att 5 D a Du = f för x I =, L, a D N u + k u u A = g för x =, L. Här har vi lagt till ett föreskrivet inflöde av värme med flödestätheten g, där g = g respektive g = g L. Detta görs genom att lägga till termerna g L respektive g i 2 och 3. Observera strukturen hos ekvationerna. Även mekanikens ekvationer har denna form. Till exempel: Stångens ekvation. För en axiellt belastad stång med fjädrande upphängning i ändpunkterna har vi följande randvärdesproblem: k u P k L ul P L K x A deformerad u ux ul odeformerad L x Figur 2: Axiellt belastad stång. 6 D EA Du = Kx A för x I =, L, EA D N u + ku = P för x =, L. Här är u [m] axiell förskjutning i x-riktningen; [ ] N E m 2 Youngs modul, A [m 2 ] tvärsnittsarea, EA [N] styvhet; [ ] [ ] N N K x m 3 lasttäthet, K x A last i x-riktningen; m P = P eller P = P L [N] kraft i x-riktningen; [ ] N k fjäderkonstant; m N = EA Du [N] utåtriktad snittkraft. Randvillkoren kommer från kraftbalans i ändpunkterna: N = P k u, N L = P L k L ul. 4
Specialfall 1: k =, fast inspänd ände. Då k får vi u =. Det betyder oändligt styv fjädring, dvs stången är fast inspänd i den aktuella ändpunkten x = respektive x = L. Specialfall 2: k =, fri ände. Med k = blir randvillkoret EA D N u = P. Det betyder ingen fjäderkraft, dvs den aktuella ändpunkten är fri. Konstitutiva lagar. Ekvationen N = EA Du är Hookes lag. Den spelar samma roll som Fouriers lag j = a Du i värmeledning. Dessa är exempel på konstitutiva lagar som beskriver materialets egenskaper. Observera analogin mellan värmeledning och mekanik. Till exempel: a EA j N g P f K x A Exempel 1.1. Vi studerar en stång med konstant styvhet som är fast inspänd i högra änden och fri i vänstra änden. Den belastas endast med en kraft i vänstra änden. Randvärdesproblemet blir D EA Du = för x I =, L, 7 EA Du = P, ul =. Eftersom EA är konstant blir differentialekvationen u x = med allmän lösning ux = Cx + D integrera två gånger. Randvillkoren ger med lösning C = P /EA, D = CL. Alltså: P = EA u = EAC, = ul = CL + D, ux = P L x. EA Vi ser att om P > tryckkraft så blir ux >, dvs stången trycks ihop förskjutningen är positiv, rörelse åt höger. Om P < dragkraft så blir ux <, dvs stången förlängs. 1.2 Svag formulering Vi skriver nu om randvärdesproblemet 5 till en så kallad svag form. Vi multiplicerar differentialekvationen D a Du = f med en funktion v och integrerar partiellt över I =, L: fv dx = [ = a Du v D a Du v dx ] L Nu använder vi även randvillkoren från 5: + a Du Dv dx = a Du v al DuL vl + a Du = k u u g, al DuL = k L ul ul gl. a Du Dv dx. 5
Vi får fv dx = k u u g v + k L ul ul gl vl + Vi samlar termer med den obekanta funktionen u i vänsterledet: a Du Dv dx + k uv + k L ulvl = a Du Dv dx. fv dx + k u + g v + kl u L + g L vl. Denna ekvation ska vara uppfylld för alla val av funktionen v. Den godtyckliga funktionen v kallas testfunktion. Denna ekvivalenta formulering av randvärdesproblemet kallas den svaga formuleringen. Den är grunden för finita elementmetoden. Den svaga formuleringen. Finn en funktion u = ux sådan att ekvationen 8 a Du Dv dx + k uv + k L ulvl = är uppfylld för alla testfunktioner v. fv dx + k u + g v + kl u L + g L vl För att formuleringen ska vara helt korrekt måste man även ange vilka funktionsklasser u och v ska tillhöra. Vi gör inte det. Randvillkoret u = u A k = är lite speciellt. Då måste man välja testfunktionerna med v = i den ändpunkt där randvillkoret u = u A gäller. Då blir motsvarande term v = och/eller vl = i 8. Vi illustrerar detta i två exempel. Exempel 1.2. Vi skriver ned den svaga formuleringen av Exempel 1.1. Där har vi randvillkoren EA Du = P, ul =. Vi ska alltså använda testfunktioner med vl =. Dessutom har vi k = och ingen kraft, K x A =, vilket motsvarar f = i 8. Den svaga formuleringen av 7 blir: Finn en funktion u = ux med ul = och sådan att ekvationen EA Du Dv dx = P v är uppfylld för alla testfunktioner v med vl =. Vi kontrollerar att lösningen ux = P EA L x uppfyller den svaga ekvationen. Vi har EA Du = P så att för alla v med vl =. Exempel 1.3. EA Du Dv dx = P Dv dx = P vl v = P v D 1 + x 2 Du = 1 i, 1, u =, Du1 =. a Skriv ned den svaga formuleringen. b Lös problemet genom att integrera två gånger. 6
Lösning. a Randvillkoret u = kräver att vi använder testfunktionen v sådan att v =. Vi multiplicerar med v och integrerar: v dx = D 1 + x 2 Du v dx [ ] 1 = 1 + x 2 Dux vx + } partiell integration = 2 Du1 v1 + 2 Du v + }}}} = = = 1 + x 2 Du Dv dx. 1 + x 2 Du Dv dx Den svaga formuleringen är: Finn u = ux sådan att u = och b Differentialekvationen är Vi integrerar: Randvillkoren ger: 1 + x 2 Du Dv dx = 1 + x 2 Du Dv dx v dx för alla v med v =. D 1 + x 2 Du = 1 + x 2 Du = x + C, Dux = x 1 + x 2 + C 1 + x 2, ux = 1 2 ln1 + x2 + C arctanx + D. = u = 1 2 ln2 + C arctan + D = 1 2 ln2 C π 4 + D, = Du1 = 1 2 + 1 2 C. Vi får C = 1, D = 1 2 ln2 + π 4. Lösningen är ux = 1 2 ln1 + x2 + arctanx + 1 2 ln2 + π 4 2 = ln 1 + x 2 + arctanx + π 4. Du bör lära dig att bestämma den svaga formuleringen för randvärdesproblem med olika kombinationer av randvillkor samt att lösa enkla randvärdesproblem genom att integrera två gånger, se övningarna i slutet av detta häfte. Men det viktigaste är att kunna lösa allmänna randvärdesproblem med finita elementmetoden. 1.3 Finita elementmetoden i 1 D Finita elementmetoden kallas finite element method på engelska, uttalas fajnajt. Nedan anger vi inom parentes vad vissa viktiga begrepp heter på engelska. Vi ska beräkna en approximativ lösning Ux, som är en styckvis linjär funktion. Vi inför ett beräkningsnät mesh i intervallet I =, L: = x 1 < x 2 < < x i < x i < < x N = L. 7
y U i U i U i+1 y = Ux 1 y = φ i x x 1 = x 2 x 3 x i x i x i+1 x N = L x Figur 3: En styckvis linjär funktion y = Ux och en basfunktion y = φ i x. Obs: vi använder Matlab-numrering som börjar med 1. Vi har alltså N punkter kallas även noder x i och N 1 intervall I i = x i, x i+1 av längd h i = x i+1 x i. Se Figur 3. En kontinuerlig styckvis linjär funktion Ux är entydigt bestämd av sina nodvärden U i = Ux i. För att beskriva Ux inför vi basfunktionerna φ i x, en för varje nod x i. Funktionerna φ i x bestäms av att de är kontinuerliga, styckvis linjära, samt att 1, om i = j, φ i x j =, om i j. Se Figur 3. Funktionen Ux kan nu skrivas som en linjär kombination av basfunktionerna: Obs att Ux = N U i φ i x, med koefficienterna U i = Ux i. i=1 Ux j = N U i φ i x j = U j i=1 1, i = j, eftersom φ i x j = innebär att endast en term med i = j blir kvar i summan., i j, Vi har nu en formel som uttrycker Ux med hjälp av nodvärdena. Vi ska nu bestämma de okända nodvärdena U i så att Ux blir en approximativ lösning till randvärdesproblemet 5. Vi använder den svaga formuleringen i 8. För att det inte ska bli så mycket att skriva genomför vi detta i fallet då k = k L =, g = g L = : 9 a Du Dv dx = fv dx för alla v. Istället för ux sätter vi in ansatsen Ux = N i=1 U iφ i x och vi väljer testfunktionerna v = φ j. Vi får Med beteckningarna N U i a Dφ i Dφ j dx = i=1 a ij = a Dφ i Dφ j dx, b j = fφ j dx, j = 1,..., N. fφ j dx, 8
blir detta N a ji U i = b j, j = 1,..., N, i=1 dvs på matrisform: A U = b. Detta är ett linjärt ekvationssystem av N ekvationer för N obekanta. Matrisen A = a ij } N i,j=1 = } N a Dφ i Dφ j dx i,j=1 kallas styvhetsmatris stiffness matrix. Jämför med stångens ekvation, där a = EA är materialets styvhet. Styvhetsmatrisen är symmetrisk, a ji = a ij, och tridiagonal,....... A =,....... dvs a ij = utom då j = i 1, i, i + 1. Vektorn b = b j } N j=1 = fφ j dx} N j=1 kallas lastvektor load vector. Intervallet I i = x i, x i+1 tillsammans med sina två basfunktioner φ i, φ i+1 kallas ett finit element. y y = φ i x y = φ i+1 x x i x i+1 x Figur 4: Ett finit element. Ekvationssystemet A U = b kan enkelt ställas upp och lösas med hjälp av ett datorprogram, till exempel, MyPoisssonSolver.m i Datorövning 4. Programmet löser mer allmänna randvärdesproblem av formen D a Du + d Du + cu = f för x I =, L, a D N u + k u u A = g för x =, L. Här har vi även en konvektionsterm d Du och en reaktionsterm cu. Randvillkor av typen u = u A hanteras i detta program approximativt genom att man sätter k lika med ett stort tal, till exempel, k = 1 8. Problem Bestäm svaga formuleringar för följande randvärdesproblem 1.1 1.3. 9
Problem 1.1. Stång D EA Du = Kx A i, L, u =, EA DuL = P. Tips: v =. Problem 1.2. u = f i, L, u + u = g, ul =. Tips: vl =. Problem 1.3. Fritt upplagd balk D 2 EI D 2 w = q i, L, w =, wl =, D 2 w =, D 2 wl =. Här är w [m] utböjning, [ I = ] I y [m 4 ] tvärsnittets tröghetsmoment med avseende på y-axeln, EI N [N m 2 ] böjstyvhet och q lasttäthet i z-riktningen uppåt. Vridmomentet med avseende på m y-axeln är M = EI D 2 w [N m]. Tips: v =, vl =. Integrera partiellt två gånger. Lös följande randvärdesproblem genom upprepad integration. Problem 1.4. u = 1 i, 1, u =, u1 =. Problem 1.5. D1 + x Du = 2x i, 1, Du + u =, u1 = 3 2. Problem 1.6. Da Du = i, L med konstant a >, u = u, ul = u L. Beräkna även värmeflödestätheten j = adu. Problem 1.7. Fritt upplagd balk D 2 EI D 2 w = q i, L med EI och q konstanta w =, wl =, D 2 w =, D 2 wl =. Problem 1.8. au + u = 1 i, 1 med konstant a >, u =, u1 =. 1
Svar och lösningar 1.1. Finn u = ux sådan att u = och EA u v dx = 1.2. Finn u = ux sådan att ul = och u v dx + uv = K x A v dx + P vl för alla v med v =. 1.3. Finn w = wx sådan att w = wl = och 1.4. ux = 1 2x1 x 1.5. ux = 1 2 x2 + x + 1 EI w v dx = fv dx + g v för alla v med vl =. qv dx för alla v med v = vl =. 1.6. ux = u L u x L +u, j = u u L a. Obs att flödestätheten är konstant och proportionell L mot temperaturskillnaden. 1.7. wx = 1 ql 4 x 4 x 3 x 2 + 24 EI L L L 1.8. En integration ger u 1 a u = 1 a x + C. Multiplicera med den integrerande faktorn e x/a och integrera igen. Lösningen blir ux = x e x/a 1/e 1/a 1. /stig 11