Något om (ODE) och Mathematica
Transcription
Något om (ODE) och Mathematica
HH/ITE/BN Ordinära differentialekvationer och Mathematica Något om (ODE) och Mathematica Bertil Nilsson 2016-01-01 1 2 Ordinära differentialekvationer och Mathematica HH/ITE/BN ť Förord På följande sidor presenteras en elementär "streetwise guide" till ordinära differentialekvationer med flitig användning av Mathematica. Framställningen är fåordig, fri från pedanteri men i någon mening fullständig. Det man väsentligen behöver veta om begrepp, terminologi, beteckningar och teori för att modellera och lösa problem i framtida kurser och yrkesliv som ingenjör, naturvetare eller lärare klarläggs och typiska exempel ges. ť Introduktion och terminologi En differentialekvation (DE) är en ekvation som innehåller en okänd (sökt) funktion och dess derivator. Uppgiften är att bestämma funktionen så att (DE) uppfylls. Naturligtvis kan man också ha system av differentialekvationer, där man söker flera obekanta funktioner likt variabler i ett vanligt ekvationssystem. Många frågeställningar inom naturvetenskap och teknik leder naturligt till modeller som innehåller differentialekvationer. Utan dessa skulle man behöva genomföra mängder med laboratorieförsök och all slags planering och förutsägelser bli tids- och arbetskrävande. För att kunna planera behöver vi kunna förutsäga saker och ting. I vissa fall är det omöjligt att vänta. Exempel på en fråga som inte kan vänta till imorgon är; Hur blir vädret imorgon? Att använda (DE) som redskap för att härma verkliga förlopp brukar kallas simulering och därmed tillhör de ett av de allra viktigaste matematiska hjälpmedlen för en ingenjör och för produktutvecklande företag handlar det om avgörande konkurrenskraft. Därför är det viktigt att lära sig ställa upp en differentialekvation som modell för en fysikalisk situation, finna analytiska lösningar till några vanliga enkla typer av differentialekvationer, använda Mathematica för att bestämma analytiska lösningar och numeriska lösningar då differentialekvationen är för svår eller omöjlig att lösa analytiskt. Det sistnämnda är naturligtvis det som är vanligast i verkliga livet, tolka och utvärdera lösningarna i förhållande till den ursprungliga fysikaliska situationen. Om y x är den sökta funktionen i en (DE) kallas x för den oberoende variabeln. Ofta används tiden t som oberoende variabel eftersom många (DE) gestaltar hastighetsförlopp och då är ju derivator med avseende på tiden inblandade. Beror y av endast en variabel säges (DE) vara en ordinär differentialekvation (ODE). I problemformuleringar brukar man friskt blanda de olika skrivsätten för derivator. Likaså brukar det inte heller vålla någon förvirring att utelämna den oberoende variabeln. Exempel: Samma (ODE) i olika skepnader y' x yx x, y' y x, y x y x Vi söker funktionen y x där x är den oberoende variabeln. Om y beror av flera variabler säges (DE) vara en partiell differentialekvation (PDE). Dessa är mycket vanliga i ingenjörstillämpningar, t.ex. hållfasthetsberäkningar med den så kallade Finita elementmetoden. Som namnet (PDE) antyder har vi att göra med partiella derivator. De faller helt utanför ramen för denna kurs. Exempel: Vi söker utböjningen u hos en vibrerande sträng på en gitarr eller harpa. Uppenbarligen varierar den både med läget x längs strängen och tiden t, alltså u x, t . Den klassiska PDE som beskriver strängens rörelse i rummet och tiden kallas för vågekvationen 2u t2 c2 2u x2 där c är en positiv konstant som bär karakteristiska data för strängen, så som längd, diameter och elasticitet. En (DE) säges vara av ordning n om n:te derivatan är den högsta förekommande derivatan av y. Man talar om första, andra osv. ordningens differentialekvation. Exempel: Vi har exempelvis att y' x y'' x x yx yx yn x är en första ordningens ODE är en andra ordningens ODE x y '' x sin x är en n:te ordningens ODE En (ODE) säges vara linjär om den kan skrivas på formen n i 0 ci x yi x f x c0 x y x c1 x y' x där ci x och f x är funktioner av x. Annars kallas den olinjär. Då f x cn x y n x f x 0 säger vi att (ODE) är homogen annars inhomogen. HH/ITE/BN Ordinära differentialekvationer och Mathematica Exempel: Tydligen är x2 y '' x c2 x sin x y ' x c1 x 3 tan x en linjär (ODE) av andra ordningen. Även de tre differentialekvationerna i f x föregående exempel är linjära. Exempel: Vi ser att y ' x y2 x y '' x y x y x y '' x sin y x x är en första ordningens olinjär ODE x är en andra ordningens olinjär ODE 0 är en homogen andra ordningens olinjär ODE Derivator med avseende på tiden är mycket vanliga i fysik. Ofta skrivs de med "prickar", t.ex. Newtons accelerationslag m x F som är en andra ordningens (ODE). Här är x läget eller koordinaten för kroppen med massan m som utsätts för kraften F i positiv xx t riktning. Med definition av hastighet och acceleration har vi prickbeteckningarna x ("x-prick") för hastigheten och x x t 2x t2 ("x-prickprick") för accelerationen. Om en funktion satisfierar en differentialekvation kallas den för en lösning eller partikulärlösning. Exempelvis ser vi efter insättning att y x x3 är en partikulärlösning till y ' x 3 x2 . Men även y x x3 3 och y x x3 7 eller y x x3 C1 , där C1 är en godtycklig konstant. Mängden av alla partikulärlösningar kallas för den allmänna lösningen eller lösningsskaran. Att lösa en differentialekvation är att finna den allmänna lösningen. I detta fall är alltså y x x3 C1 den allmänna lösningen till den linjära ordinära differentialekvationen y' x 3 x2 och representerar genom olika val av C1 ett oändligt antal partikulärlösningar. I figuren nedan ses några av dem. yx 30 I den allmänna lösningen till en differentialekvation ingår alltid lika många godtyckliga konstanter Ci som differentialekvationen har ordning. 3 2 1 20 x 3 20 x3 15 10 x 3 10 x3 5 x3 x3 5 1 10 x3 10 x 3 15 20 x3 20 2 3 x 30 Ibland har vi också en så kallad trivial lösning y x 0. Exempelvis har differentialekvationen y ' x y x 0 den triviala och (oftast) för ingenjörer ointressanta lösningen y x 0, vid sidan om den mer intressanta y x C1 x . Att båda är lösninger inses efter insättning. ť Begynnelsevärde och randvillkor För att få den speciella lösning som motsvarar lösningen till ett fysikaliskt problem måste vi fixera samtliga konstanter Ci genom att vid någon känd ögonblicksbild applicera så kallade begynnelsevärden (BV) eller begynnelsevillkor. Namnet kommer sig av att man oftast känner tillståndet då man börjar studera systemet, det vill säga i begynnelsen. För entydighet måste vi ange lika många begynnelsevärden som vi har ordning. En uppsättning ODE BV kallas för ett begynnelsevärdesproblem (BVP). Ibland fixeras konstanterna vid olika lägen eller tidpunkter, då talar man om randvärden (RV) och randvärdesproblem (RVP). Ofta ser man en kombination av dem och ibland innehåller (ODE) ytterligare konstanter som ska fixeras med hjälp av kända tillstånd under resans gång. I brist på fantasi kallas även dessa tillstånd lite vanvördigt för (RV). Exempel: En bil påverkas av en konstant framdrivande kraft Fd , Fa luftmotståndet som är proportionellt mot farten i kvadrat Fa cx2 och rullmotståndet som är proportionellt mot farten Fr kx. Sök det begynnelsevärdesproblem BVP som bestämmer bilens läge som funktion av tiden, det vill säga x t . m Fr Lösningsförslag: Skådespelet vi söker beskrivs av Newtons accelerationslag mx x t x hastigheten, 2x t2 Fd x F, där x t är läget i ett jordfast koordinatsystem, x accelerationen och F summan av de krafter som verkar i koordinatriktningen x. Eftersom det är en andra ordningens differentialekvation så vi behöver två (BV) för entydig lösning. Antag därför att bilen startar från vila och att vi rullar ut måttbandet samtidigt som vi startar klockan. Då får vi BVP mx x0 Fd 0 x0 0 cx2 kx ODE BV . 4 Ordinära differentialekvationer och Mathematica HH/ITE/BN Vi återkommer med mer konkreta exempel på hur Ci bestäms med hjälp av (BV) och (RV) under varje avsnitt längre fram. Notera att begynnelsevärden (BV) och randvillkor (RV) skall appliceras på den allmänna lösningen till en differentialekvation. För att få en entydig lösning behövs det lika många BV RV som vi har Ci , det vill säga lika många som differentialekvationen har ordning. Man börjar alltså med att bestämma den allmänna lösningen till (ODE) därefter appliceras BV RV . ť Ordinära differentialekvationer och Mathematica En stor klass av ingenjörsproblem kan modelleras av så kallade separabla första ordningens (ODE), linjära första ordningens (ODE) eller linjära andra ordningens (ODE) med konstanta koefficienter. Men innan vi ger oss i kast med dessa och en uppsjö exempel kan det vara läge att se vad en av våra bästa vänner Mathematica har att säga i ärendet. Vi börjar med en enkel första ordningens differentialekvation y' x DSolve y ' x yx y x yx 0 och dess lösning. 0, y x , x x c1 I Mathematica används funktionen DSolve för att lösa en stor klass av differentialekvationer, allt från enkla separabla och linjära av godtycklig ordning till mycket komplicerade olinjära. Den löser även system av differentialekvationer och är mycket lättanvänd. Strängt taget handlar det om att skriva av rätt! Lägg märke till att Mathematica förstår den vanliga nomenklaturen med ' när vi menar derivata. Notera de nödvändiga []-parenteserna eftersom y x ska vara en funktion av x! För övrigt kan man naturligtvis använda vilka namn man vill. Observera dubbla likhetstecken eftersom det är en ekvation! Det är inte bara namnet som antyder släktskap med Solve, utan även hantering av indata och resultat. Som vanligt gäller att när man väl förstått filosofin bakom Mathematica är det mesta självklart! Här kommer några till. Notera speciellt, som sig bör, att vi får lika många obestämda konstanter ci , vilka vi kallar Ci vid handräkning, som vi har ordning. Det är ordning på Mathematica DSolve y ' x y x sin x cos x 2 x2 y ' x DSolve1 y x Sin x , y x , x 1 x c1 y x 1 c1 x2 1 c2 2t 1 tan 1 1 x2 ArcTan x , y x , x x 2 2 DSolvex '' t x t x2 2xy x t 4 x' t 2t c1 1 2t 4x t , x t , t 2t 2 t 2 Man kan givetvis ta med begynnelsevärden eller randvärden för att få konstanterna bestämda. Dessa paketeras då tillsammans med differentialekvationen i en lista. Tänk på att även begynnelsevärdena ska anges som ekvationer, det vill säga med två likhetstecken. Så begynnelsevärdesproblemet y' x y x sin x ODE BVP y0 2 BV är bara att skicka rakt in i Mathematica och piggar sedan upp oss med en bild över situationen. yAvx DSolve y ' x y x Sin x , y 0 2 ,y x ,x Plot y x . yAvx, x, 0, 5 , PlotStyle Red, AxesLabel 1 y x 5 x sin x cos x 2 yA x 2.0 1.5 1.0 0.5 1 0.5 2 3 4 5 x Simplify "x", "yA x " HH/ITE/BN Ordinära differentialekvationer och Mathematica 5 Då varken vi eller Mathematica kan finna en analytisk lösning finns funktionen NDSolve till vår hjälp för att göra en ren numerisk lösning. Utdata från denna är en InterpolatingFunction som kan verka lite märkvärdig innan man blivit vän med den. Den fungerar dock som vilken annan funktion som helst. För övrigt är den ett kraftfullt redskap om man vill göra interpolation i t.ex. mätdata. Som exempel kör vi en repris på begynnelsevärdesproblemet ovan. Det enda som skiljer i menyn som serveras jämfört med DSolve är att man, likt Plot, måste ange i vilket intervall man vill att spektaklet ska utspela sig. NyAvx NDSolve y x y' x y x Sin x , y 0 Domain: 0. 5. InterpolatingFunction Plot y x 2 , y x , x, 0, 5 Output: scalar . NyAvx, x, 0, 5 , PlotStyle x Blue, AxesLabel "x", "yN x " yN x 2.0 1.5 1.0 0.5 1 2 3 4 5 x 0.5 Den triviala lösningen y x DSolve y ' x yx 0 levereras normalt inte av Mathematica. Exempelvis det inledande exemplet i repris y x 0, y x , x x c1 Notera dock att om vi med (BV) startar någonstans på x-axeln, det vill säga y x0 0, så är vi dömda att stanna kvar där enligt den triviala lösningen. Så återigen, olika (BV) kan ge helt olika lösningskurvor. Detta inser naturligtvis Mathematica. DSolve yx y' x y x 0, y 17 0 ,y x ,x 0 ť Riktningsfält En första ordningens (ODE) kan alltid skrivas på den generella implicita formen g x, y, y' 0 I många fall kan vi lösa ut y' explicit och skriva den på formen y' f x, y Lösningarna till denna (ODE) kommer att utgöras av kurvor i xy-planet, en för varje konstant C1 . Vi vet ingenting om deras utseende men vi kan dra följande slutsats. Om en lösningskurva går genom en viss punkt x0 , y0 så måste kurvans tangent i den punkten ha riktningskoefficienten f x0 , y0 . Detta betyder att om vi i ett antal xy-punkter, oftast ett rutnät, markerar lösningskurvans lutning i dessa punkter får vi ett så kallat riktningsfält. Detta ger ofta en kvalitativt god bild över situationen. Man kan skissa den lösningskurva man får för givna (BV) och man kan studera dramatiken i omgivningen. Ibland gäller nämligen att små störningar i (BV) ger en helt ny lösningskurva, så kallat kaotiskt beteende. Kanske har du hört talas om "butterfly"-effekt som utgör en av flera svårigheter med att göra långa väderleksprognoser. Vi lättar upp stämningen med ett y' Exempel: Rita riktningsfält och lösningskurva till BVP y0 xy 1 2 Lösningsförslag: Först lösningen till (BVP) 1 yAvx DSolvey ' x xy x , y 0 , y x , x 2 x2 2 y x 2 ODE BV . 6 Ordinära differentialekvationer och Mathematica HH/ITE/BN Sedan ritar vi in denna tillsammans med riktningsfältet som är färglagt efter riktningskoefficientens storlek. Show Plot y x . yAvx, x, 0, 1.05 , VectorPlot 1, x y , x, 0, 1 , y, 0, 1 , VectorColorFunction AspectRatio Automatic, AxesLabel "x", "y" Hue , y 0.8 0.7 0.6 0.0 0.2 0.4 0.6 0.8 x 1.0 ť Separabel första ordningens (ODE) En (ODE) kallas separabel om den kan skrivas på formen y g y f x x där g y och f x är kända och kontinuerliga funktioner i var sitt intervall. Då har de primitiva funktioner G y respektive F x i dessa intervall. Med definition av primitiv funktion och kedjeregeln i färskt minne får vi så den allmänna lösningen på följande sätt y g y x f x g y y f x x 0 G y y y x KR: F x x 0 x G y F x 0 G y F x C1 G y x Namnet separabel kommer sig av att om vi även betraktar måtten x och y som variabler så kommer x och y att separeras av likhetstecknet y g y Eftersom G y g y y och F x f x f x x g y y f x x x får vi i praktiken den allmänna lösningen genom att först separera variablerna och sedan "hänga på två integraltecken och en konstant i högerledet" g y y f x x C1 Samma svar kommer vi fram till genom att formellt integrera båda sidor av g y y x f x med avseende på x och sedan betrakta det som variabelsubstitution i vänsterledet g y y x x f x x C1 g y y f x x C1 Strängt taget får vi en integrationskonstant för varje obestämd integral. Men dessa kan bakas samman till en enda, vilket ju också är behovet med tanke på att vi har att göra med en första ordningens (ODE). Vi ser också att lösa en separabel (ODE) faller tillbaka på att kunna integrera. Mot bakrund av hur lösningsmetoden är uppbyggd kommer den allmänna lösningen naturligt ut på implicit form h x, y 0. Vid handräkning brukar man nöja sig med detta svar huruvida det inte är uppenbart att kunna lösa ut y x explicit, medan Mathematica däremot tycker om att späka sig till det yttersta för att i varje läge försöka leverera explicit form, inte sällan med hjälp av diverse exotiska funktioner. Det kan därför ibland vara svårt att jämföra lösningarna. Vi sammanfattar En separabel differentialekvation g y x2 Exempel: Lös differentialekvationen y' 4x Lösningsförslag: Separabel x2 x y 4x x2 0, y x , x "integreras direkt". DSolvey ' x x3 y x c1 3 4x 2 x2 y x f x har allmänna lösningen g y y f x x C1 0. y 2 x2 1 3 x3 C1 . För den här typen av enkla separabla brukar man säga att de HH/ITE/BN Ordinära differentialekvationer och Mathematica Exempel: Lös differentialekvationen y' 12 x2 8 x3 0 med begynnelsevillkoret (BV) y 1 Lösningsförslag: Vi har ett (BVP) och börjar alltid med att lösa (ODE) som är separabel y 12 1 3 x3 8 1 4 x4 4 x3 C1 2 x4 y x 2 x4 2 x3 12 x2 8 x3 4 13 2: 2 0, y 1 c1 8 x3 x 2 14 C1 C1 4 x3 4. Så lösningen till (BVP) är y 2 x4 4. 2, y x , x 5 x2 cos 3x . Lösningsförslag: Separabel eller "direkt integration" y x 12 x2 y 2 Exempel: Lös differentialekvationen y' DSolvey ' x 2. C1 . För den här typen av enkla separabla brukar man säga att de "integreras direkt". Konstanten C1 fixeras sedan av (BV) y 1 DSolvey ' x 7 5 x2 5 x3 1 3 3 y 5x2 cos 3x y2 1 2 x y 5 3 x2 y2 x3 1 3 sin 3x C1 . Cos 3 x , y x , x sin 3 x x . y Exempel: Lös differentialekvationen y' Lösningsförslag: Separabel y' x y dem ny innebörd, i detta fall 2C1 C12 är ett mycket vanligt hyss i branschen. Vi har ju att göra med en godtycklig konstant. Om det y y 1 2 x x x2 C1 C12 . Att döpa om konstanter eller att ge är ett (BVP) vi löser kommer det att bli rätt till slut ändå. Mathematica levererar lösningen på explicit form. x , y x , x DSolvey ' x y x y x 2 c1 x2 , y x 2 c1 Geometriskt betyder den implicita formen x2 med centrum i origo och valfri radie C1 . x2 C12 cirklar y2 y x Exempel: Lös differentialekvationen y' Lösningsförslag: Separabel y' x y x . y y y x x 1 2 y2 1 2 x2 en hyperbel där orienteringen bestäms av tecknet på C1 . Fallet C1 nedan. Mathematica levererar lösningen på explicit form. C1 x2 y2 0 ger strålarna y C1 . Geometriskt betyder den implicita formen x som också är hyperbelns asymptoter, se x , y x , x DSolvey ' x y x y x 2 c1 x2 , y x 2 c1 x2 y y y x C1 0 x C1 0 x C1 0 8 Ordinära differentialekvationer och Mathematica 2y Exempel: Lös differentialekvationen x3 Lösningsförslag: Separabel x3 x y 2 2 C1 2 C1 y x y' . 2y y' 1 y' 2y x3 2 2 C1 HH/ITE/BN 1 2y C1 y 1 y x C1 2 1 2 x x3 1 ln y 2 x2 C1 ln y x2 C1 1 2 C1 x2 . 2y x DSolvex3 , y x , x y' x 1 y x c1 x2 Exempel: Lös differentialekvationen y' Lösningsförslag: Separabel y' DSolve y ' x 2x 2x 2x xy. y' xy 1 x y 2 y y 2 x x ln y 1 2 2 x2 y C1 2. 2 xy x , y x , x x2 y x c1 2 2 Exempel: Lös differentialekvationen yy' Lösningsförslag: Separabel yy ' x x y' y'. y 1 y' x y 1 y 1 2 x x y2 1 2 y x2 y2 C1 2y x2 C1 . Implicit form räcker gott! Men med kvadratkomplettering av y får vi y2 2 y 12 12 x2 C1 x2 y 1 2 C1 1 2 2 2 2 2 2 x y 1 C1 vilket vi identifierar med cirkelns ekvation x x0 y y0 r , det vill säga lösningskurvorna är cirklar med centrum i 0, 1 , se nedan. Mathematica levererar lösningen på explicit form. DSolve y x y ' x y x x2 1 x 2 c1 y' x , y x , x x2 1 , y x 2 c1 1 1 y 2.0 1.5 1.0 0.5 1.0 x Exempel: Lös differentialekvationen y' x Lösningsförslag: Separabel, ty vi har y' y 1 y x y x u 1 y x y osv. 0.5 1.0 x . x y ln 1 0.5 x y y' y x x C1 x y' ln 1 y y x 1 1 y 1 x y C1 . Implicit form räcker! Mathematica levererar lösningen på explicit form. x DSolvey ' x y x c1 log1 x x y x , y x , x Simplify Exempel: Lös differentialekvationen x y ' cos y sin y 0. Lösningsförslag: Separabel, ty vi har att x y ' cos y sin y C1 ln C1 u sin y osv. ln sin y ln x C1 0 x y ' cos y sin y Mathematica levererar lösningen på explicit form. DSolve x y ' x Cos y x y x sin 1 c1 x Sin y x 0, y x , x sin y x cos y sin y y C1 x. Implicit form räcker! 1 x x HH/ITE/BN Ordinära differentialekvationer och Mathematica Exempel: Lös differentialekvationen x2 1 y ' Lösningsförslag: Separabel, eftersom x2 2 C1 ln C1 ln y2 x2 1 x2 x y. 1 y ' y2 ln C1 1 y xy y2 C1 1 9 x y C1 x2 x x2 1 x2 u 1 osv. 1 lnx2 2 ln y 1 C1 1, Geometriskt betyder detta en kurvskara i xy-planet där varje bestämt värde på C1 ger en medlem av denna kurvskara. För C1 0 fås hyperbler, C1 0 ellipser och för C1 0 linjen y 0. Mathematica levererar lösningen på explicit form. DSolvex2 y x 1 y ' x x2 c1 x y x , y x , x 1 x y' 4 y0 3 Exempel: Lös BVP ODE . BV Lösningsförslag: Separabel, ty x y' 4 y' 4 3 4 0 C1 C1 7. Så lösningen till (BVP) y x DSolve yx 7 y' x 4, y 0 x y 4 x 4 7. x 3 ,y x ,x C1 . Till slut fixeras så konstanten C1 av (BV) y 0 3: Simplify x 4 För att applicera (BV) har vi i detta och tidigare exempel använt oss av obestämd integral. Man bör även bemästra att genomföra kalkylen med bestämd integral. Egentligen är det samma sak man gör men de olika betraktelsesätten är en fråga om smak och de dyker upp i diverse olika framställningar. Vi tar dem parallellt BV med obestämd integral x y' y x 4 y y0 4 x 4 3:3 C1 y 4 7 4 x3 y ' 1 Exempel: Lös BVP x y1 2 BV med bestämd integral x Separera x y 3 Integrera y' 4 y x 4 0 y 3 4 Separera x x Integrera med BV direkt Gränserna är ögonblicksbilder Känd respektive allmän C1 0 C1 BV y 7 y Lösningen till BVP x2 y ODE BV 3 y x x 0 4 3 y Insättningstecken, döljer C1 . x 0 x 4 4 Nu är det bara att hyfsa 4 7 x Lösningen till BVP . Lösningsförslag: Innan vi exercerar våra nyvunna kunskaper ännu en gång, kontrollerar vi facit med lösningen på explicit form. x3 y ' x DSolve1 3 22 3 y x x3 x2 y x , y 1 2, y x , x 1 BV med obestämd integral x3 y ' 1 1 y x y 1 3 ln y 3 ln y x2 y ln 1 x x3 C1 3 3 C1 x lnab y y1 C1 1 3 2:2 C1 3 y ln b 3 x C1 1 4 4 1 ln y b ln a , 3 x 1 3 BV ln y 1 3 Separera 2 x x 1 1 x3 y y 2 1 3 x x3 ln 1 Integrera med BV direkt Gränserna är ögonblicksbilder Känd respektive allmän x 1 Insättningstecken, döljer C1 . ln 2 x3 ln 1 3 ln y ln 1 ln y3 Lösningen till BVP x2 y x y' y1 2 y Integrera u 1 x3 osv. ln ab ln a 3 C1 ln C1 3 1 Separera 2 1 x3 ln 1 BV med bestämd integral 3 Nu är det bara att hyfsa 3 ln 2 x3 ln 2 ln 1 y3 13 ln 1 x3 4 1 ln 22 x3 Lösningen till BVP 10 Ordinära differentialekvationer och Mathematica HH/ITE/BN ť Linjär första ordningens (ODE) Enligt definition ovan kan en första ordningens linjär (ODE) skrivas på formen y' px y qx där p x och q x är kända och kontinuerliga funktioner. Som lösningsstrategi ska vi välja att multiplicera båda sidor i differentialekvationen med en funktion f x och sedan jämföra vänsterledet med derivatan av produkten f x y. Vi får då f x y' f x px y f x qx Lika om f' x f x px x Vi ser att om vi väljer f x så att f ' x f x y f x p x blir x f' x f x y f x q x . Detta är en separabel (ODE) vars allmänna lösning är f x qx x C1 f x p x ? Men visst! Detta är också en separabel (ODE) med lösningen f f x px f' x y 1 f x yx Frågan är bara om det finns ett f x så att f ' x f x y' px f x x ln f x px x C1 px f x x C1 Att lösa en linjär första ordningens (ODE) på detta sätt kallas för metoden med integrerande faktor, just på grund av det lämpliga faktorvalet som gör att lösningen fås efter en integration. Med detta val kallas f för integrerande faktor och vi benämner den med IF. Vanligtvis väljer man i IF att sätta integrationskonstanten C1 0 eftersom den ändå kan divideras bort, ty px IF x px x A y' x C1 px px px y px x y' x C1 x px Aq x x A med A 0 Förkorta bort A px px y x 0 qx Däremot får man aldrig glömma C1 i den allmänna lösningen. Liksom i det separabla fallet gäller det att vara en smidig integrator! Vi sammanfattar. En linjär första ordningens differentialekvation y ' Då är y ' px y qx IF x y x px y px q x har integrerande faktorn IF x IF x q x med allmänna lösningen y x 1 IF x IF x q x x x . C1 . Lär er inte formeln utan metoden! Glöm inte att multiplicera högerledet q x med IF x före separation! Exempel: Lös differentialekvationen y' y 1. Lösningsförslag: Separabel eller linjär, här väljer vi det senare. Genomför gärna det förstnämnda! Då blir integrerande faktorn 1 x IF y 1 C1 x x , och därmed x x x y 1 yx c1 x y x Som vanligt är x y x C1 1 2x C1 1 2 y DSolve y ' x x y x C1 x x y . 1 x Lösningsförslag: Linjär (ODE) med IF 1 2 x 1, y x , x Exempel: Lös differentialekvationen y' y x y . DSolve y ' x x x Separabel x x , så x x y x x x Separabel 2x y x . ,y x ,x x y x x c1 2 Exempel: Lös differentialekvationen y' 5y x . Lösningsförslag: Ej separabel men linjär. Jämför med prototypen y ' x 5x y 5x x Separabel 5x y 4x x 5x px y y 1 4 qx 4x y' C1 x 5 y y 1 4 x . Så IF C1 5x . 5 x 5x och HH/ITE/BN Ordinära differentialekvationer och Mathematica DSolve y ' x x 5y x 11 ,y x ,x x y x 5x c1 4 Exempel: Lös differentialekvationen y' 2y 3. 2 x Lösningsförslag: Separabel eller linjär, som omväxling väljer vi det senare. Då blir integrerande faktorn IF x 2x 2x y 3 Separabel DSolve y ' x y x 2y x y 2x 3 x x (BV) y 2 x DSolve x y' y2 2y 1 lnx2 2 3x 1 C1 22 x y' x x2 x2 , så att C1 1 2 2 y x y y C1 , så . 2 ln x 1: 1 2 x C1 2x 3, y x , x ODE . BV Lösningsförslag: Efter division med x får vi en linjär (ODE), y ' IF y 2x 2x 2 Exempel: Lös BVP 2 2x 3 2 3 2x c1 2x 3 2 2y x x x2 y 1 x x2 3 1 , x 3 och därmed är vi i välkänd terräng. Vi får här x2 y Separabel x3 1 2 x2 C1 y 1 2 x C1 x2 . Slutligen med 2. 3x 1, y 2 1 ,y x ,x Simplify 1 x 2 ť Linjär andra ordningens (ODE) med konstanta koefficienter Vi ska studera en i ingenjörssammanhang vanligt förekommande variant av andra ordningens linjära (ODE), nämligen då koefficienterna framför y'', y ' och y är reella konstanter. Då så inte är fallet har vi i allmänhet stora bekymmer att vänta och överlåter verksamheten till Mathematica. Alltså y'' a y' by f x där a och b är reella konstanter. Den allmänna lösningen till denna (ODE) består av två delar yh x yx yp x där homogena lösningen yh x är lösningen till motsvarande homogena differentialekvation y'' partikulärlösning till den orörda y '' a y' b y göra en korrekt ansats av partikulärlösningen. ay' by 0 och y p x är en f x . Man börjar alltid med den homogena lösningen eftersom den behövs för att Homogena lösningen yh x Studera den homogena differentialekvationen y '' ay' by 0 och byt y mot r och derivator mot potenser, så får vi en vanlig andragradsekvation i r som kallas för den karakteristiska ekvationen. Denna har alltid två rötter som bestäms med välkänd formel y '' ay' by ar r r1,2 r2 0 2 a 2 ar1 b br0 0 a 2 2 b Den homogena lösningen beror nu på de två rötterna r1 och r2 . Vi sammanfattar 0 12 Ordinära differentialekvationer och Mathematica HH/ITE/BN Till den homogena differentialekvationen y '' a y ' b y 0 hör karakteristiska ekvationen r2 ar b a 2 a 2 0 med rötterna r1,2 2 b. Den homogena lösningen yh x får vi då som ett av de tre fallen Fall 1: r1 r2 reella yh x C1 r1 x C2 r2 x Fall 2: r1 r2 reella yh x C1 x C2 r1 x Fall 3: r1,2 Α Β, Β 0 komplexkonjugerade Αx yh x C1 cos Βx C2 sin Βx Lär dessa utantill! Vi ser att det är den homogena lösningen som bär de två konstanterna C1 och C2 . För att övertyga sig om riktigheten i de tre fallen och att det inte finns några andra kan vi argumentera på följande sätt. Gör variabelsubstitutionen y x Insättning i y'' a y' by r2 x zx . Derivera produkten en och två gånger. Efter hyfsning har vi y' x r2 x z' x y '' x r2 x z'' x r2 z x r22 z x 2 r2 z ' x 0 ger r2 x z '' x 2 r2 r22 a z' x ar2 b z x 0 Eftersom r2 x 0 för alla x och r2 är rot till karakteristiska ekvationen kan vi tillsammans med sambandet r1 och koefficienter i en andragradsekvation förenkla r2 x z'' x 2 r2 0 r22 a z' x ar2 r2 r1 b z x r2 a mellan rötter 0 0 till en linjär (ODE) av första ordningen i z' x . z' x ' r2 r1 z' x 0 Denna har då enligt tidigare avsnitt lösningen z' x som är separabel. Om nu r1 zx r2 x r C1 r2 r1 r2 x 1 Om däremot r1 r2 blir z' x C1 r1 r2 C2 r2 x r1 x C1 x r1 r2 x r C1 r2 1 C2 C1 C1 r1 x C2 r2 x vilket är fall 1. C1 och efter separation zx varav y x z x identitet ger r1 r2 x r2 får vi zx Substituera tillbaka y x C1 C2 yx r1 x C1 x C2 som är fall 2. Fall 3 är något mer komplicerat men utveckling av fall 1 med hjälp av Eulers C1 Αx Αx Αx r1 x C2 r2 x C1 Α Β x C2 Α Β x C1 cos Βx sin Βx C2 cos Βx C1 C2 cos Βx C1 C2 sin Βx Acos Βx Bsin Βx Eulers identitet sin Βx där vi infört nya komplexa konstanter A C1 C2 och B C1 C2 . Eftersom reella lösningar är de enda fysikaliskt relevanta bör dessa väljas rent reella och fall 3 skall användas då vi har komplexkonjugerade rötter till karakteristiska ekvationen. De tre möjliga fallen av homogena lösningar illustreras kvalitativt i följande figurer. Vokabuläret är hämtat från mekanikens studium av svängningsproblem HH/ITE/BN Ordinära differentialekvationer och Mathematica yx yx 13 yx x x x Fall 2: Kritisk dämpning. Lösningskurvan skär x axeln högst en gång. Typiskt utseende för en ny hjulupphängning på en bil. Fall 1: Överkritisk dämpning. Inte så vanligt förekommande i ingenjörssammanhang. Exempel: Sök homogena lösningen till y'' 4 y' 5y Fall 3: Underkritisk dämpning. Mycket vanligt insvängningsförlopp. Typiskt utseende för en gammal hjulupphängning på en bil. 0. Lösningsförslag: Vi får karakteristiska ekvationen och dess två rötter r2 Solver2 r 4r 1, r 5 4r 5 0 5 2 r1 r2 3 5 1 5 DSolve y '' x x c1 4 2 2 0 Två olika reella rötter, så Fall 1 ger direkt yh x y x 4 2 r1,2 c2 4 y' x 5x 5y x 5x C1 x C2 . Detta upptäcker naturligtvis även Mathematica. 0, y x , x Exempel: Sök homogena lösningen till y'' 4 y' 4y 0. Lösningsförslag: Vi får karakteristiska ekvationen och dess två rötter r2 Solver2 r 2, r 4r 4 4r 4 2 4 2 0 r1 r2 2 2 2 DSolve y '' x 2x 4 2 4 2 r1,2 0 Reell dubbelrot, så Fall 2 ger direkt yh x y x 0 c2 x 4 y' x C1 x 4y x C2 2x . Detta upptäcker naturligtvis även Mathematica. 0, y x , x Simplify c1 Exempel: Sök homogena lösningen till y'' 4 y' 13 y 0. Lösningsförslag: Vi får karakteristiska ekvationen och dess två rötter r2 Solver2 r 2 4r 13 3 , r 2 4r 13 0 r1,2 4 2 y x 2x 2 3 r1 r2 2 2 3 3 3 4 y' x c1 sin 3 x 13 0 Komplexkonjugerade rötter, så Fall 3 ger direkt yh x Mathematica. DSolve y '' x 4 2 2 13 y x c2 cos 3 x 0, y x , x 2x C1 cos 3x Simplify C2 sin 3x . Detta upptäcker naturligtvis även 14 Ordinära differentialekvationer och Mathematica HH/ITE/BN Partikulärlösningen y p x Studera nu den ursprungliga inhomogena differentialekvationen y'' a y' by f x där den homogena lösningen yh x är bestämd enligt föregående avsnitt. Vi ska nu bestämma en partikulärlösning y p x som beror av högerledet. Det räcker att hitta en och för enkelhets skull nöjer vi oss här med att behandla några enkla och i praktiken vanligt förekommande funktioner f x . Övriga (i praktiken alla) fall överlåter vi till Mathematica. Vi sammanfattar resan i en kokbok och illustrerar sedan med några exempel. Steg 0: Innan man börjar så kan man dra lite nytta av lineariteten hos (ODE) för att bespara sig alltför volymiösa handräkningar. Nämligen om f x f1 x f2 x där fi x är funktioner som vi befattar oss med enligt Steg 1 nedan, så gäller f x f1 x f2 x yp x y p1 x y p2 x Man kan alltså genomföra Steg 1-3 nedan för varje fi x och sedan lägga samman y pi x till den slutliga y p x som motsvarar f x . Steg 1: Vi väljer att behandla högerled f x enligt kolonn ett. Ansätt y p x enligt kolonn två med okända koefficienter A, B, som sedan kommer att bestämmas i Steg 3. f x yp x polynom av grad n Ansätt ett fullt polynom av samma gradtal n, det vill säga ett som innehåller alla potenser upp till och med n: A k Αx C x2 Bx N xn Αx Ansätt A k cos Ωx Ansätt A cos Ωx B sin Ωx k sin Ωx Ansätt A cos Ωx B sin Ωx Ansätt A cos Ωx B sin Ωx k1 cos Ωx k2 sin Ωx Exempel: Typiska enkla fall som man bör klara för hand. Redan detta är på gränsen f x 9 f x 5x f x f x 2 7x 3 x 2 3 yp x A yp x A yp x 4x A yp x A Bx Bx Bx 2 Cx 2 Cx 3 f x 5 cos 4x f x 3 Dx 2x f x f x 12 sin 4x 3 cos 4x 8 sin 4x 2x yp x A yp x A cos 4x B sin 4x yp x A cos 4x B sin 4x yp x A cos 4x B sin 4x Steg 2: Kontrollera om någon term i y p x finns med som en term i yh x , i så fall tillför y p x inte någon ny information. Korrigera genom att multiplicera y p x med x. Om y p x fortfarande finns i yh x så multiplicera med x igen, å igen Detta problem uppkom- mer bara när vi har en exponentialfunktion eller trigonometriskt uttryck i högerledet. Exempel: Ansätt y p x beroende på f x . Undersök sedan om y p x finns med som termer i yh x och korrigera vid behov. Det är ok om y p x finns med i yh x som en faktor med annan funktion g x . yh x C1 5x C2 2x & f x 3 2x yp x yp x yh x C1 x C2 2x & f x 3 2x yp x Ax 2 Ax yh x 2x C1 cos 4x C2 sin 4x & f x 3 yh x 2x C1 cos 4x C2 sin 4x & f x 3 cos 4x 0x C1 cos 4x C2 sin 4x & f x 2x A yp x 2x 3 cos 4x yh x 2x Ax yp x yh x 2x A yh x yh x 2x yh x 2x yh x yp x yp x yp x yp x A 2x yh x A cos 4x B sin 4x yh x A cos 4x B sin 4x yh x x A cos 4x B sin 4x yh x HH/ITE/BN Ordinära differentialekvationer och Mathematica Steg 3: Sätt in ansatsen y p x i (ODE) och bestäm de okända koefficienterna A, B, 15 genom att identifiera koefficienter. Detta innebär att bestämma A, B, så att vi har lika många "äpplen och päron" på båda sidor om likhetstecknet. Det vill säga för att en likhet skall gälla för alla värden på den oberoende variabeln måste vi ha exakt samma antal av varje förekommande funktion på båda sidor om likhetstecknet. Exempel: Sök y p x då y '' 6 y' 13 y 5x 2 är given. Lösningsförslag: Först bestämmer vi den homogena lösningen med hjälp av karakteristiska ekvationen r2 6r Solver2 r 3 13 0 6 2 6 2 2 13 2 så ansätt enligt tabell y p x A 6r 13 2 , r 3 r1,2 3 2 3x yh x Fall 3 C1 cos 2 x C2 sin 2 x 0 2 Sedan en partikulärlösning. Steg 1: Vi har f x 5x Steg 2: Vi ser att y p x B x. yh x . Steg 3: Identifiera koefficienter. Först bäddar vi upp med derivator yp x A Bx yp ' x B y p '' x 0 Insättning i differentialekvationen 0 6 B 13 A Bx 5x 2 och identifiering av koefficienter framför varje funktionstyp (FT) i vänsterledet (VL) och högerledet (HL) FT VL HL 1 13 B 5 x 0 6B x 13 A 2 Detta linjära ekvationssystem ska alltid ge en entydig lösning. Om inte så är ansatsen av y p x felaktig eller felräkning på vägen! Gå i så fall tillbaka till Steg 1! Här får vi Solve 13 B 5, 6 B 56 ,B 169 56 169 2 5 A Så y p x 13 A 13 5 13 x varav allmänna lösningen som summan av den homogena lösningen och partikulärlösningen yh x yx 3x yp x C1 cos 2 x 56 169 C2 sin 2 x 5 13 x Med Mathematica har vi direkt DSolve y '' x y x c1 3x 6 y' x sin 2 x Exempel: Sök y p x då y '' c2 2 y' 13 y x 3x 5x 2, y x , x 5x 56 13 169 cos 2 x 3y 2 x2 Simplify 5 är given. Lösningsförslag: Först bestämmer vi den homogena lösningen med hjälp av karakteristiska ekvationen r2 2r 3 0 r1,2 2 2 2 2 2 3 1 2 r1 r2 3 1 Fall 1 yh x C1 3x C2 x 16 Ordinära differentialekvationer och Mathematica Solver2 r 2r 1, r 3 HH/ITE/BN 0 3 Sedan en partikulärlösning. 2 x2 Steg 1: Vi har f x Steg 2: Vi ser att y p x 5 så ansätt enligt tabell y p x A C x2 . Bx yh x . Steg 3: Identifiera koefficienter. Först bäddar vi upp med derivator y p x A B x C x2 yp ' x B 2 C x y p '' x 2C Insättning i differentialekvationen 2C 2 B 2C x 3 A Bx C x2 2 x2 5 och identifiering av koefficienter framför varje funktionstyp (FT) i vänsterledet (VL) och högerledet (HL) FT VL 2 x HL 3C 1 4C x 0 x 2C 2 3B 2B 0 3A 5 Detta linjära ekvationssystem ska alltid ge en entydig lösning. Om inte så är ansatsen av y p x felaktig eller felräkning på vägen! Gå i så fall tillbaka till Steg 1! Här får vi Solve 3C 17 A 17 27 4C 8 ,B 2B 3A 5 3 2 3 x 0, 2 C 9 8 9 3B 2 ,C 27 Så y p x 2, x2 varav allmänna lösningen som summan av den homogena lösningen och partikulärlösningen yh x yx yp x C1 3x C2 x 17 27 8 9 x 2 3 x2 Med Mathematica har vi direkt yAvx DSolvey '' x y x c1 x 3x c2 2 y' x 2 x2 3y x 2 x2 8x 17 3 9 27 5, y x , x Simplify Mathematica har ingen funktion som levererar partikulärlösningen ensam. Detta är av visst intresse ibland, se vidare exempel i avsnittet "Blandade exempel för resten". Enklaste sättet är i så fall att bestämma allmänna lösningen till (ODE) och sedan släcka ner den homogena lösningen genom att sätta c1 och c2 till noll. yAvx . C 1 0, C 2 2 x2 8x 17 3 9 27 y x 0 Även då man räknar för hand kan man ha nytta av Mathematica för att kontrollera att man följer kokboken. ode y '' x y x 2y x y x A A C x2 Bx 2 y' x 3yx Bx 3y x 2x 2 2 x2 5 2 x2 5 5 C x2 ode 3 A Bx C x2 2 B 2C x 2C HH/ITE/BN id Ordinära differentialekvationer och Mathematica CoefficientList 3A 2B 2 C, 3 B ,x & 17 ode 4 C, 3 C 5, 0, 2 Solve id 17 A 8 ,B 2 ,C 27 9 3 Exempel: Sök y p x då y '' 6 y' 5y 4x 9 är given. Lösningsförslag: Först bestämmer vi den homogena lösningen med hjälp av karakteristiska ekvationen r2 6r Solver2 r 6r 1, r 5 5 0 6 2 r1,2 6 2 2 5 3 r1 r2 2 5 1 Fall 1 yh x C1 5x C2 x 0 5 Sedan en partikulärlösning. Steg 1: Vi har f x 4x 9 Steg 2: Vi ser att y p x så ansätt enligt tabell y p x A 4x . yh x . Steg 3: Identifiera koefficienter. Först bäddar vi upp med derivator yp x 4x A yp ' x 4A 4x y p '' x 16 A 4x Insättning i differentialekvationen 16 A 4x 6 4A 4x 5 A 4x 9 4x och identifiering av koefficienter framför varje funktionstyp (FT) i vänsterledet (VL) och högerledet (HL) FT 4x VL 16 A HL 24 A 5A 9 Detta linjära ekvationssystem ska alltid ge en entydig lösning. Om inte så är ansatsen av y p x felaktig eller felräkning på vägen! Gå i så fall tillbaka till Steg 1! Här får vi Solve 16 A 24 A 5A 9 1 A 5 Så y p x 1 5 4x varav allmänna lösningen som summan av den homogena lösningen och partikulärlösningen yx yh x yp x C1 5x C2 x 1 5 4x Med Mathematica har vi direkt DSolvey '' x 6 y' x 5y x 9 4x , y x , x 4x y x c1 x c2 5x 5 Exempel: Sök y p x då y '' 4 y' 13 y 2 cos 4x 8 sin 4x är given. Lösningsförslag: Först bestämmer vi den homogena lösningen med hjälp av karakteristiska ekvationen r2 4r 13 0 r1,2 4 2 4 2 2 13 2 3 Fall 3 yh x 2x C1 cos 3x C2 sin 3x 18 Ordinära differentialekvationer och Mathematica Solver2 r 2 4r 13 3 , r 2 HH/ITE/BN 0 3 Sedan en partikulärlösning. Steg 1: Vi har f x 2 cos 4x Steg 2: Vi ser att y p x 8 sin 4x så ansätt enligt tabell y p x A cos 4x B sin 4x . yh x . Steg 3: Identifiera koefficienter. Först bäddar vi upp med derivator yp x A cos 4x B sin 4x yp ' x 4 A sin 4x y p '' x 16 A cos 4x 4 B cos 4x 4 A sin 4x 4 B cos 4x 16 B sin 4x Insättning i differentialekvationen 16 A cos 4x 16 B sin 4x 4 13 A cos 4x B sin 4x 2 cos 4x 8 sin 4x och identifiering av koefficienter framför varje funktionstyp (FT) i vänsterledet (VL) och högerledet (HL) FT VL cos 4x sin 4x 16 A 16 B HL 16 B 16 A 13 A 13 B 2 8 Detta linjära ekvationssystem ska alltid ge en entydig lösning. Om inte så är ansatsen av y p x felaktig eller felräkning på vägen! Gå i så fall tillbaka till Steg 1! Här får vi Solve 16 A 16 B 122 A 122 265 2, 16 B 16 A 13 B 8 56 ,B 265 Så y p x 13 A 265 56 265 cos 4 x sin 4 x varav allmänna lösningen som summan av den homogena lösningen och partikulärlösningen yx yh x 2x yp x C1 cos 3x 122 265 C2 sin 3x cos 4x 56 265 sin 4x Med Mathematica har vi direkt DSolve y '' x y x c1 2x 4 y' x sin 3 x Exempel: Sök y p x då y '' c2 6 y' 13 y x 2x 2 Cos 4 x 56 sin 4 x cos 4 x 265 5 3x Simplify 122 cos 3 x 9y 8 Sin 4 x , y x , x 265 är given. Lösningsförslag: Först bestämmer vi den homogena lösningen med hjälp av karakteristiska ekvationen r2 Solver2 r 6r 3, r 6r 9 9 0 r1,2 6 2 6 2 2 9 2 0 Fall 2 yh x C1 x 0 3 Sedan en partikulärlösning. Steg 1: Vi har f x 5 Steg 2: Vi ser att y p x 3x A så ansätt enligt tabell y p x 3x yh x yp x Ax A 3x 3x . yh x yp x A x2 Steg 3: Identifiera koefficienter. Först bäddar vi upp med derivator av en produkt 3x yh x . C2 3x HH/ITE/BN Ordinära differentialekvationer och Mathematica A x2 yp x 19 3x 3x yp ' x A 2 x y p '' x A 3 2x x2 3x 3 A 3 x2 2 3x 3 x2 3x 2 x 3x 2 x A 9 x2 3 12 x 3x 2 Insättning i differentialekvationen A 9 x2 12 x 3x 2 6 A 3 x2 2 x 3x 9 A x2 3x 5 3x och identifiering av koefficienter framför varje funktionstyp (FT) i vänsterledet (VL) och högerledet (HL) FT VL 2 x 3x x 3x 9A 18 A 12 A 3x HL 9A 0 12 A 0 2A 5 Detta linjära ekvationssystem ska alltid ge en entydig lösning. Om inte så är ansatsen av y p x felaktig eller felräkning på vägen! Gå i så fall tillbaka till Steg 1! När vi har korrigerat y p x genom multiplikation med x får vi lika många urartade ekvationer 0 0 som antal korrigeringar. Bra kontroll! Här är det de två första. Solve 9A 18 A 9A 0, 12 A 12 A 0, 2 A 5 5 A 2 5 2 Så y p x x2 3x varav allmänna lösningen som summan av den homogena lösningen och partikulärlösningen yx 3x Mathematica noterar naturligtvis att både gen därefter. DSolvey '' x y x c2 3x 6 y' x x 3x c1 5 3x yp x 3x och x 9y x 3x 5 C1 x C2 3x 5 2 x2 3x ingår i homogena lösningen och korrigerar ansatsen till partikulärlösnin- , y x , x x2 2 y'' 2 y ' 3 y y0 1 y' 0 0 Exempel: Lös BVP yh x x2 ODE . BV Lösningsförslag: Först bestämmer vi den homogena lösningen med hjälp av karakteristiska ekvationen r2 Solver2 r 3, r 2r 3 2r 0 3 r1,2 2 2 2 2 2 3 1 r1 r2 2 3 1 Fall 1 0 1 Sedan en partikulärlösning. Steg 1: Vi har f x x2 så ansätt enligt tabell y p x Steg 2: Vi ser att y p x A Bx C x2 . yh x . Steg 3: Identifiera koefficienter. Först bäddar vi upp med derivator y p x A B x C x2 yp ' x B 2 C x y p '' x 2C Insättning i differentialekvationen 2C 2 B 2C x 3 A Bx C x2 x2 yh x C1 3x C2 x 20 Ordinära differentialekvationer och Mathematica HH/ITE/BN och identifiering av koefficienter framför varje funktionstyp (FT) i vänsterledet (VL) och högerledet (HL) FT VL 2 x HL 3C 1 4C x x0 2C 1 3B 2B 0 3A 0 Detta linjära ekvationssystem ska alltid ge en entydig lösning. Om inte så är ansatsen av y p x felaktig eller felräkning på vägen! Gå i så fall tillbaka till Steg 1! Här får vi Solve 3C 1, 4 C 3B 4 1 14 A ,B ,C 27 14 27 Så y p x x 1 3 2B 3A 0 9 4 9 0, 2 C 3 x2 varav allmänna lösningen som summan av den homogena lösningen och partikulärlösningen yx yh x yp x 3x C1 14 27 x C2 4 9 1 3 x x2 y0 1 . Frestas inte att sätta in (BV) redan i yh x ! Det blir enklare y' 0 0 Nu är det dax att bestämma C1 och C2 med hjälp av BV räkningar men garanterat fel! (BV) gäller ju för lösningen till (ODE) inte dess homogena variant. Så först derivatan av y x y' x 3x 3 C1 C2 4 9 x 2 3 x sedan de efterlängtade y0 1 : y' 0 0 BV 30 C1 C2 30 3 C1 0 C2 14 27 0 4 9 4 9 1 3 0 2 3 0 02 0 1 C1 C2 3 C1 41 27 C2 C1 4 9 C2 29 108 5 4 Med Mathematica har vi direkt DSolvey '' x x2 4x 3 9 2 y' x 29 3x x2 , y 0 3y x x 5 1, y ' 0 0, y x , x Expand 14 y x 108 4 27 Notera ännu en gång att begynnelsevärden (BV) och randvillkor (RV) skall appliceras på den allmänna lösningen y x inte på den homogena lösningen yh x ! HH/ITE/BN Ordinära differentialekvationer och Mathematica 21 ť Modellering av (ODE) för tillämpningar - några spridda tips och exempel Att modellera verkliga problem med hjälp av matematik kräver erfarenhet och ett öppet sinnelag. Till sin natur är denna verksamhet oftast helt skild från den matematikundervisning man möter i skolan och upplevs av naturliga skäl som svår. Inte minst på grund av att man ska hämta kunskap och inspiration från flera grundläggande ämnen, inte bara matematik även om detta kommer att bli själva språket. Det gäller att "se" på verkligheten genom glasögon som identifierar och tydliggör fenomen som kan kläs med matematiska begrepp som derivata, integral och differentialekvation. Med detta betraktelsesätt tillägnar sig en modern ingenjör en klar konkurrensfördel eftersom modellering och simulering är ett absolut krav för att klara de allt kortare ledtider som krävs för att utveckla nya produkter. Detta må vara allt från bilar, mobiltelefoner, medicinsk utrustning och läkemedel till schemaläggning av flygplan och kommer att accentueras alltmer i framtiden. Se vidare i e-boken "Något om Matematisk modellering och Mathematica". Vi börjar med några modelleringstips och avslutar med typiska fysikaliska fenomen som modelleras med (ODE). För fler exempel och även mera avancerade sådana hänvisas till det senare avsnittet "Blandade exempel för resten". Den för ingenjörer så vanliga Newtons accelerationslag behandlas utförligt med exempel i e-boken "Något om Mekanik-Dynamik och Mathematica". Läsa spelet Ofta gäller det att kunna dechiffrera en verbal beskrivning till en matematisk beskrivning. Vid differentialekvationer gäller det att först bestämma vad som är den oberoende variabeln, i många praktiska tillämpningar är det tiden t, sedan den beroende variabeln, det vill säga den sökta funktionen, säg y t . Det viktiga är att formuleringen av en (ODE) ska göras och gälla för en godtycklig tidpunkt t i det intervall där man är intresserad av att studera systemet, exempelvis t 0. Begynnelsevärden (BV) fixerar sedan alla Ci . Som hjälp vid dechiffreringen är det bra att känna igen vanliga formuleringar som skall tolkas som derivata av den sökta funktionen y Ändring av y per tidsenhet t y Ändringshastigheten av y t eller y' t . eller y ' t . När det sedan gäller att formulera själva (ODE):n är i en uppsjö av tillämpningar olika typer av proportionalitet inblandade. Vissa ord, eller kombinationer av ord, kan också direkt associeras med matematiska krumelurer, exempelvis y t är proportionell mot t yt kt. k y t är omvänt proportionell mot t yt k . t k Ändring av y t per tidsenhet är proportionell mot y t y' t y' t ky t . k och t Ändring av y t per tidsenhet är proportionell mot y t y' t y' t k y t t. k Ändring av y t per tidsenhet är proportionell mot y t och skillnaden mellan m och y t y' t y' t ky t m och omvänt proportionell mot skillnaden mellan m och y t y t :s hastighet är proportionell mot y t y' t k yt . m yt k k y' t ky t m yt . m yt Efter man löst (ODE) och bestämt alla Ci med hjälp av (BV) återstår avslutningsvis att fixera proportionalitetskonstanten k och kanske andra konstanter med hjälp av några i problemtexten beskrivna ögonblicksbilder (RV) under resan. Fysikaliska principer Ofta kommer någon fysikalisk lag eller princip till användning, exempelvis Newtons accelerationslag: m 2y t2 F eller m y F. Förmodligen den viktigaste ekvationen för en ingenjör. Se vidare "Blandade exempel för resten" och speciellt i e-boken "Något om Mekanik-Dynamik med Mathematica" som helt tillägnas denna ekvation. Vid handräkning brukar det ofta vara populärt att med kedjeregeln skriva om andraderivatan y def y y y t KR t y y y y för att få en första ordningens (ODE), inte sällan separabel. 22 Ordinära differentialekvationer och Mathematica Energins bevarande massans oförstörbarhet. Massa HH/ITE/BN volym densitet (eller koncentration). Arkimedes princip: Då en kropp nedsänkes i en vätska påverkas denna av en lyftkraft som är lika stor som den undanträngda vätskans tyngd. SI-enheter Håll koll på alla enheter. Räkna alltid i SI-enheter! Se vidare i e-boken "Något om SI-enheter och Mathematica". Dimensionsanalys Se till att det är lika många "äpplen" och "päron" på båda sidor om – tecknet i (ODE):n! Dimensionsanalys är ett utmärkt stöd vid modellering och ett studium av de storheter som ingår i problemet ger nästan alltid direkta tips som leder till målet. Se vidare i eboken "Något om Dimensionsanalys och Mathematica". Radioaktivt sönderfall, bakteriekultur, kapitalisering av pengar Väldigt många problem beskrivs med den enkla proportionalitetsmodellen att tillväxthastigheten vid varje tidpunkt är proportionell mot aktuell mängd. Detta brukar ibland kallas Malthus lag. Om vi som exempel tar radioaktivt sönderfall och låter aktuell mängd vid tiden t vara m t får vi direkt m' t m0 BVP Detta är en separabel (ODE) m m k t 1 m m k t C1 Men den är också en linjär första ordningens (ODE) m ' t t kt kt mt mAvt m t 0 {Separabel} DSolve m ' t kt c1 m t DSolve kt M mt ln m km t 0 t km t , m t ,t ODE BV kt C1 k t C1 mt mt C1 0 med med integrerande faktorn IF kt mt C1 mt C1 kt kt mt k t k t, C1 k t. så . Eller med Mathematica First Sedan bestäms C1 av (BV) m 0 mAvt kt km t M m' t M: M C1 k0 C1 km t , m 0 M . Eller hela resan med Mathematica M ,m t ,t First Vid radioaktivt sönderfall brukar proportionalitetskonstanten k fixeras antingen av en ögonblicksbild, t.ex. m Τ till halveringstiden H. mΤ , eller kopplas M ekv m t . mAvt . t H 2 M M Hk 2 kVärde Solve ekv, k, Reals First log 2 k H Vi ser att k 0 som sig bör eftersom mängden minskar (sönderfaller). Man kunde naturligtvis lika gärna satt " k" i (ODE):n ovan. I problemtexter brukar halveringstiden vara given och k bestäms som ovan, eller så är k given och halveringstiden söks. Proportionalitetskonstanten k avgör hur snabbt det radioaktiva ämnet klingar av. Ju rödare kurvan är i figuren nedan ju större är k och ju fortare går det! HH/ITE/BN Ordinära differentialekvationer och Mathematica kt PlotEvaluateTable PlotStyle Hue , k, 10 , t, 0, 5 , PlotRange Range 0.1, 1, 0.1 , AxesLabel 23 All, "t", "m t " mt 1.0 0.8 0.6 0.4 0.2 1 2 3 4 5 t Fler exempel ges under det senare avsnittet "Blandade exempel för resten". Newtons avsvalningslag Kroppar, exempelvis kaffe, kaka från ugnen eller metallstycke, som ställs till avsvalning eller för all del uppvärmning följer den enkla lagen att temperaturändringen per tidsenhet är proportionell mot skillnaden mellan omgivande temperatur och aktuell temperatur i kroppen. Omgivningen anses vara så stor att dess temperatur är konstant under resans gång. Detta samband kallas Newtons avsvalningslag. Lösningsförslag: Om vi antar att temperaturen i kroppen är T t vid tiden t får vi direkt BVP T Tomg T Detta är en separabel (ODE); Tomg T k t C1 T 0 T0 T t T k t C1 Men också en linjär första ordningens (ODE); T ' t kT t kTomg med IF kt T t kt kTomg t kt T t 1 kTomg k Slutligen återstår bara att fixera C1 med hjälp av (BV) T 0 C1 ln Tomg t kt C1 k t. Tomg ODE BV 1 Tomg T k t, som har lösningen k t C1 Tomg k Tomg T t Separabel T t T' t kt T0 : T0 allmänna lösningen T t ovan så har vi lösningen till (BVP) T t C1 k t T t Tomg Tomg Tomg Tomg så C1 kt t C1 k0 C1 T0 k t, kt T t kt . T0 kt kTomg Tomg , och att meka in den i . Typiskt för alla lösningskurvor är att de alla startar i T0 och närmar sig asymptotiskt Tomg ju längre tiden lider. Gäller både avsvalning och uppvärmning! Detta inses av (ODE) med k 0, ty Tomg så Tomg är en asymptot. På analogt sätt Tomg T' t T t T t T' t 0 ger avsvalning men då T t Avsvalning av kaffe i rumstemeratur eller uppvärmning av drink på stranden. Tk T t Td T t DSolve 60 kt DSolve 20 13 T' t T' t T 0 k 25 85 T t ODE BV T' t T 0 respektive k 25 T t ,T 0 85 , T t , t k 20 T t ,T 0 7 ,T t ,t k 20 7 T t ODE BV Simplify 25 T' t kt T' t 0 har vi uppvärmning mot Tomg . Som vanligt avgör k hur snabbt processen förlöper. BVP Tomg Simplify Ju rödare kurvan är i figuren nedan ju större är k och ju fortare går processerna! Plot Evaluate Table T t . Tk, Td , k, 10 , t, 0, 1 , PlotRange 0, 100 , PlotStyle Hue Range 0.1, 1, 0.1 , AxesLabel "t", "T t C " 0 24 Ordinära differentialekvationer och Mathematica T t 100 HH/ITE/BN C 80 60 40 20 0.0 0.2 0.4 0.6 0.8 1.0 t Fler exempel ges under det senare avsnittet "Blandade exempel för resten". Torricellis lag Hastigheten som en vätska strömmar ut genom ett hål i en tank är v 2gh , där g är tyngdaccelerationen och h vattendjupet vid hålet. Detta sammband kallas Torricellis lag. Så om hålets area är A har vi flödet q Av. I praktiken har vi energiförluster vid hålet så det teoretiska uttrycket för v måste korrigeras med en faktor Η 1 som beror på hålets utseende. För ett cirkulärt hål är Η 0.6 om det strömmar rakt ut i luften. Så med ord har vi Torricellis lag: Då en vätska strömmar med flödet q ur en tank gäller att detta i varje ögonblick är proportionellt mot kvadratroten ur vattendjupet h. Eftersom flöde är volymändring per tidsenhet kan vi sammanfatta i en (ODE) V t q k h Där V V t är aktuell vätskevolym. Vattendjupet h t ska betraktas som en koordinat för vattenytans läge, enligt figur. Lagen brukar ibland formuleras med minustecken framför proportionalitetskonstanten k, för att redan vid modelleringen återspegla det faktum att volymen minskar i tanken. Speciellt viktigt är det naturligtvis att det blir rätt tecken om k är given numeriskt. Problemet är i allmänhet att för givet utseende på tanken beskriva V V t V h varav sedan V h h t med kedjeregeln eller implicit derivering ger en (ODE) som bestämmer h t . Proportionalitetskonstanten k fixeras ofta med en ögonblicksbild någon gång under tömningen. Exempel: En tank i form av en stående cylinder är helt fylld med vatten. Så öppnas en kran i botten så att vattnet strömmar ut med en hastighet som i varje ögonblick är proportionell mot kvadratroten ur vattendjupet, Torricellis lag. Hur lång tid tar det att tömma tanken om den efter T s är tömd till hälften? Lösningsförslag: Om R är tankens radie och h en koordinat för vattendjupet räknat från botten har vi säga ΠR2 h ' t k ht h' t k ΠR2 ht h' t t ΠR2 h k h . Det vill k h t , med sedvanlig omdöpning av konstanter. Antag att tanken har höjden H så kan vi sammanfatta BVP h' t h0 hT k ht H ODE BV H 2 RV Vi börjar med handräkningsversionen och obestämda intergraler för en separabel (ODE). Den är inte linjär och vi börjar som vanligt med allmänna lösningen h' t k ht h 12 h k t C1 Nu återstår att bestämma konstanten C1 med hjälp av (BV) h 0 1 12 1 H: H h 12 1 1 4 k 0 kt C1 C1 2 1 kt 4 ht C1 2 2 C1 H . Sedan fixerar vi k med hjälp HH/ITE/BN Ordinära differentialekvationer och Mathematica H H : 2 2 av (RV) h T 1 4 k T 2 2 H H T k 2 H 2 . Så till slut h t H Tömningstiden Τ får vi sedan genom att lösa ekvationen 0 4 T2 2 4 T2 2 2 2 Τ 25 2 T Τ 2 t 2 2 2 T . 2 T. Avslutningsvis låter vi Mathematica lösa det ekvationssystem som formas av separation och bestämda integraler med (BV) och (RV) som gränser 1 H 2 ekv H T 2 0 h 2 H k T, 2 2 Τ h H H Solve ekv, k, Τ 2 1 0 k t, h k t 0 h k Τ Simplify H k ,Τ 2 2 T T Till slut den moderna vägen med Mathematica. Som vanligt är den oberoende variabeln, här tiden t, den sammanhållande länken i en (ODE). Vi har en första ordningens (ODE), så vi kan bara ta med ett av (BV) eller (RV), man brukar välja (BV). hAvt DSolveh ' t k 1 h t H kt 4 4H h t ,h 0 H, h t , t Last k 2 t2 4 Sedan k med (RV) och tömningstiden Τ H , 0 . hAvt . t 2 Solveh t 2 2 T, Τ , k, Τ FullSimplify First H ,Τ k 2 2 T T Typiska arbetsgången med DSolve följt av Solve. Tillämpad matemaik är typiskt att formulera och lösa (system av) ekvationer. Ytterligare exempel ges under det senare avsnittet "Blandade exempel för resten". Blandningsproblem I figuren åskådliggörs ett kontinuerligt blandningsförlopp. Det finns gott om tillämpningar som kan modelleras på detta sätt, exempelvis förorening i en tank, ett organ som genomströmmas av blod, en sjö eller våtmark med anslutande åar. Uppgiften är att studera hur koncentrationen c t av något ämne i tanken utvecklas över tiden. I figuren är följande definierat. Vi räknar här i SI–enheter. Bra vana, men det viktiga är att enheterna som används nedan är konsistenta V t Volym i tanken, m3 . cin t Koncentration av ämnet i qin t , kg m3 . ct Koncentration av ämnet i tanken, kg m3 . qut t Volymflödet ut ur tanken, m3 s . qin t Volymflödet in i tanken, m3 s . cut t Koncentration av ämnet i qut t , kg m3 . Vi tar hjälp av den fysikaliska principen om massans oförstörbarhet och studerar tanken under en liten tid t vid godtycklig tidpunkt t. Då måste det gälla ökning av massa i tanken massa in massa ut Nu gäller det att översätta detta till matematik innehållande storheterna i figuren. Här kommer dimensionsanalys väl till pass. ökning av massa i tanken V t c t massa in qin t cin t t massa ut qut t cut t t m3 kg m3 m3 s kg m3 s m3 s kg m3 s kg kg kg 26 Ordinära differentialekvationer och Mathematica HH/ITE/BN Ok, vi har [kg] på båda sidor! Dividera båda sidor med t, gå i gräns och känn igen derivatans definition. V t ct t qin t cin t qut t cut t V t ct t t 0 qin t cin t qut t cut t Nu brukar man förutsätta perfekt omrörning. Detta innebär att cut t c t . Man kan se det som att man upprepat "släpper i en liten droppe, rör om ordentligt och släpper ut en liten droppe". Vi sammanfattar den färdiga formuleringen av blandningsproblemet V t ct t BVP c0 där V t qin t cin t qut t c t ODE c0 BV t q 0 in V 0 t qut t t Hur svår denna (ODE) blir att lösa beror på de funktioner som ingår i högerledet. Inte sällan är cin t cin konstant under den tid vi ämnar studera systemet. Detsamma brukar gälla för in- och utflödena, annars skulle volymen i tanken öka eller minska för att så småningom bli helt tom. Jämför en sjö eller ett organ i kroppen. Exempel: En sjö har volymen 105 m3 . Vid en tidpunkt uppmättes koncentrationen kvicksilver i sjön till 10 mg m3 . Från en å rinner det in vatten med flödet 2 m3 h innehållande kvicksilver med 3 mg m3 . Sök koncentrationen kvicksilver i sjön som funktion av tiden efter uppmätningen. Anta perfekt omrörning samt att det finns ett utlopp från sjön så att dess volym är konstant över tiden. Lösningsförslag: Typiskt blandningsproblem. Med kända beteckningar har vi t BVP V t c t c 0 qin t cin t qut t c t BV c0 105 V t konstant 105 , qin qut 2 ODE cin 3, perfekt omrörning c t 2 3 c 0 cut c 2 c 10 ODE BV Denna kan lösas som linjär eller separabel. Vi börjar känna igen att det är "samma" (ODE) antingen vi har blandningsproblem, Newtons avsvalningslag, radioaktivt sönderfall Matematik är användbart! Vi provar med linjär 105 c t 6 t 2c 5 2 10 t c' t 2 10 2 10 ct 2 10 5 t 5 t 5 6 10 ct 6 10 5 . Integrerande faktorn IF ct 5 6 10 5 2 10 5 2 10 Förväxla inte c t med C1 Den senare fixeras av (BV) c 0 ct 3 2 10 7 cAvt c t 5 t. 5 t 10: 10 5 t C1 3 2 10 ct ct C1 5 3 C1 2 10 5 0 t 6 10 2 10 C1 5 5 5 t C1 t 2 10 5 t . Så t 7. Så slutligen lösningen till (BVP) Med Mathematica har vi direkt DSolve105 c ' t 7 2 10 2 10 t 50 000 2 3 c t ,c 0 10, c t , t Simplify 3 Å så här ser skådespelet ut under de trettio första åren PlotEvaluate 3, c t PlotStyle . cAvt . t Red, Dashing 0.02 c t mg m3 10 8 6 4 2 0 5 10 15 20 25 30 t år 24 365 t , t, 0, 30 , PlotRange , Orange , AxesLabel "t 0, 10 , år ", "c t mg m3 " HH/ITE/BN Ordinära differentialekvationer och Mathematica 27 Vi ser både i den analytiska lösningen och i figuren ovan att föroreningen i sjön efter lång tid närmar sig den i inloppet. Verkar ju rimligt. Så är det alltid ! Exempel: Samma förutsättningar som föregående exempel med enda skillnaden att det rinner in rent vatten så att sjön tvättas ren. Hur länge dröjer det innan koncentrationen har sjunkit till hälften? Lösningsförslag: Ny cin t 0, så vi har att ta ställning till 105 BVP c t c0 2 0 2 c ODE 10 BV c t Denna kan lösas som linjär eller separabel. Vi provar med separation, 105 ln c 2 10 5 t C1 lösningen till (BVP) c t cAvt c t ct 2 10 10 2 10 C1 5 t t 50 000 t . Sedan fixeras C1 av (BV) c 0 10: 10 C1 c 2 10 5 5 2 10 0 C1 t C1 10, varav slutligen . Med Mathematica har vi direkt DSolve105 c ' t 10 5 1 c 2c 2 0 2c t , c 0 10, c t , t Halveringstiden i timmar. 10 Solvec t . cAvt, t, Reals 2 t 50 000 log 2 Å så här ser skådespelet ut under de trettio första åren PlotEvaluate c t PlotRange . cAvt . t All, AxesLabel 24 365 t , t, 0, 30 , PlotStyle "t år ", "c t Orange, mg m3 " c t mg m3 10 8 6 4 2 5 10 15 20 25 30 t år Exempel: Avslutningsvis ursprungsexemplet med enda skillnaden att en bäver har mekat om sitt bo i ingående å så att inflödet ökat till 6 m3 h Lösningsförslag: Volymen i sjön blir nu inte konstant, utan V t BVP t 105 c0 t q 0 in V 0 4 t c t 6 3 t qut t 2 ct 10 t 105 6 2 t. Så ODE BV Denna kan lösas antingen som linjär eller separabel. Vi provar med linjär. Först utvecklar vi vänsterledet som är derivatan av en produkt, sedan stuvar vi om till standardform t 105 4 t c t 6 Integrerande faktorn IF 105 4 t t 18 6 4 2c t 4c t 105 ln105 4 t 105 4 t . Så 32 4 t c' t 18 2c t c' t 6 105 4 t ct 18 105 4 t 28 Ordinära differentialekvationer och Mathematica t 32 105 4 t 32 105 Fixera sedan C1 med (BV) c 0 32 105 ct 4 t 10: 10 4 t 18 12 1 ct 3 32 4 t 12 1 1 4 t 4 4 0 7105 32 105 105 C1 105 3 ct 18 105 4 t 32 105 18 105 ct ct C1 105 3 12 4 t 4 t t C1 32 32 7105 . Så slutligen C1 4 t C1 HH/ITE/BN 32 ct 7 3 1 4 10 5 t 32 Vi låter Mathematica visa musklerna genom att direkt bestämma både c t och V t ur ett system av differentialekvationer. cÅV DSolveD V t c t , t V' t 6 c 0 10, V 0 c t ,V t 4 t 3 2c t , 105 , , t 8 750 000 V t 6 2, 25 000 , c t t 25 000 ODE blandning ODE volym BV Simplify 10 3 32 Å så här ser skådespelet ut under de trettio första åren. Vi ser i lösningen ovan och figuren nedan att c t cin 3, som sig bör. V t PlotEvaluatec t , . cÅV . t 24 365 t, t, 0, 30 , PlotRange 0, 12 , 105 PlotStyle Orange, Blue , AxesLabel "t mg m3 ,V t år ", "c t 105 m3 " c t mg m3 ,V t 10 5 m3 12 10 8 6 4 2 0 5 10 15 20 25 30 t år Ytterligare exempel ges under det senare avsnittet "Blandade exempel för resten". ť Numerisk lösning av (ODE) Vi ska använda en så kallad Finita differensmetod (FDM) för att lösa en differentialekvation. Detta är en metod för att söka en approximativ numerisk lösning till ett begynnelse- eller randvärdesproblem som av olika skäl är så besvärligt att vi inte klarar av att lösa det analytiskt med metoder vi känner från tidigare moment i kursen. Detta är den "vanligaste" situationen för en ingenjör i y ' 3 y 1 ODE verkliga livet! Vi testar den på ett enkelt (BVP) , så har vi något att jämföra med. y0 0 BV yAvx DSolve y' x 3y x 1, y 0 0 ,y x ,x First Simplify 3x 1 y x 3 3 Plot y x . yAvx, x, 0, 1 , PlotStyle y 0.30 0.25 0.20 0.15 0.10 0.05 0.2 0.4 0.6 0.8 1.0 x Blue, AxesLabel "x", "y" HH/ITE/BN Ordinära differentialekvationer och Mathematica 29 Vi söker nu en approximativ numerisk lösning i ett område, säg x 0, 1 . Idén är att dela in området i ett valfritt antal mindre intervall, så kallade element. Gränspunkterna mellan elementen kallas noder. I de inre noderna ersätts sedan y ' med sin differenskvot. Vi får då ett ekvationssystem ur vilket y kan bestämmas i varje nod. Vi har därmed fått en approximativ numerisk lösning som är styckvis linjär över elementen. Det typiska är nu att ju finare indelning vi gör ju bättre blir den approximativa numeriska lösningen. Metoden kan förfinas till den så kallade Finita elementmetoden (FEM) vilken är det helt dominerande redskapet för datorbaserad beräkning av hållfasthet för en maskindetalj, lyftkraften hos en flygplansvinge eller väderprognoser. Antag att vi delar in vårt område i n st lika långa element. Elementen behöver inte vara lika långa, snarare tvärtom, där det "händer" mycket måste man använda mindre element för att kunna följa lösningen. Omvänt gäller då större element i "lugnare" områden. Vi börjar med en grov indelning som har stora element. Dessa blir då h långa. 1.0 n 3; h n 0.333333 Vi har alltså indelningen med nodernas lägen xi och de eftersökta nodvärdena yi . Här vet vi på grund av (BV) att y 0 x0 x0 0 x1 xi xn x 1 x1 x2 0 x0 x1 xn y0 0. y0 0 h y1 h y2 1 yn Approximera nu derivatan i varje inre nod med den så kallade bakåtdifferenskvoten, det vill säga yi ' yi yi 1 h . Detta leder till ett ekvationssystem där varje rad motsvarar differentialekvationen applicerad i tur och ordning på de inre noderna. yi ekv yi 1 Table 3 yi 1, i, 1, n h 3 y1 3. y1 y0 1, 3 y2 3. y2 y1 1, 3 y3 3. y3 y2 1 Nu är detta ekvationssystem singulärt och kräver liksom tidigare ett begynnelsevärde. Jämför bestämning av C1 för att fixera en fysikalisk lösning till differentialekvationen! I vårt fall y 0 y0 0. Sedan är det bara att lösa det. lösning y1 Solve ekv . y0 0.166667, y2 0.25, y3 0 First 0.291667 eller i tabellform xi , yi . i Table , yi , i, 0, n . lösning . y0 n xyFDM 0 1 3 2 3 0 0 0.166667 0.25 1 0.291667 Slutligen en jämförelse med den analytiska lösningen. Plot y x . yAvx, x, 0, 1 , PlotStyle Blue, PlotRange All, AxesLabel Epilog Red, PointSize 0.025 , Line xyFDM , Point xyFDM y, yFDM 0.30 0.25 0.20 0.15 0.10 0.05 0.2 0.4 0.6 0.8 1.0 x "x", "y, yFDM" , 30 Ordinära differentialekvationer och Mathematica HH/ITE/BN Som tidigare nämnts kan man förvänta sig bättre noggrannhet om en finare indelning väljs. I figuren nedan ses en jämförelse mellan analytisk lösning och en indelning med 25 element. Man kan visa att felet i varje nod är proportionellt mot h. y, yFDM 0.30 0.25 0.20 0.15 0.10 0.05 0.2 0.4 0.6 0.8 1.0 x Metoden ovan är en variant av som brukar kallas Eulers stegmetod eftersom man egentligen inte behöver lösa ett ekvationssystem. Metoden kan användas då derivatan kan räknas ut explicit y ' f x, y . I vårt modellexempel ovan är tydligen detta fallet, eftersom y' 1 3 y. Med framåtdifferens får vi yi 1 yi 1 h 3 yi yi 1 yi h1 3 yi , vilket visar att varje ny punkt på kurvan kan xi , yi h 1, 1 3 yi . Eller mer allmänt beräknas genom att stega fram i tangentens riktning med start i (BV); xi 1 , yi 1 xi , yi h 1, f xi , yi . Jämfört med FDM hamnar vi på andra sidan om den analytiska lösningen xi 1 , yi 1 1.0 n 25; h i ; xyEuler 1 Table n , If i 1, y0 0, yi 1 yi h 1 3 yi , i, 1, n 1 ; n Plot y x . yAvx, x, 0, 1 , PlotStyle Blue, PlotRange All, AxesLabel Epilog Red, PointSize 0.025 , Line xyEuler , Point xyEuler "x", "y, yEuler" , y, yEuler 0.30 0.25 0.20 0.15 0.10 0.05 0.2 0.4 0.6 0.8 1.0 x Eulers metod kan trimmas till bättre noggrannhet genom att använda fler punkter när derivatan ska uppskattas. En sådan populär är Runge-Kuttas metod. Vid högre ordningens differentialekvationer eller mer förfinad approximation av derivatan får vi emellertid en starkare koppling mellan ekvationerna som då kräver ekvationslösning, t.ex. Gauss eliminationsmetod. Vi tar som exempel ett andra ordningens randvärdesproblem y '' 2 y ' y0 1 y1 2 RVP y 1 x2 ODE RV med analytisk lösning yAvx DSolvey '' x y 0 y x x2 Plot y x 12 x 1 x 2 y' x 1, y 1 4x 6 x x y x 1 2, y x , x 1 . yAvx, x, 0, 1 , PlotStyle 2.0 1.8 1.6 1.4 1.2 0.4 0.6 0.8 First Simplify 5 y 0.2 x2 , 1.0 x Blue, AxesLabel "x", "y" HH/ITE/BN Ordinära differentialekvationer och Mathematica 31 Antag att vi delar in vårt område i n st lika långa element. n 5; Dessa blir då h långa. 1.0 h n 0.2 Andraderivatan approximeras med framåtdifferenskvot och bakåtdifferenskvot yi '' yi 1 yi h yi yi 1 h yi 1 2 yi yi h2 h 1 . Vi ser att denna blir symmetrisk. Här har vi även möjlighet att göra approximationen av derivatan symmetrisk genom att använda centraldifferenskvot, det vill säga yi ' yi yi 1 1 2h . Detta leder till ett ekvationssystem där varje rad motsvarar differentialekvationen applicerad i tur och ordning på de inre noderna. yi ekv 1 2 yi yi yi 1 Table 1 yi 1 2 yi h2 1 ih 2 , i, 1, n y1 5. y2 y0 25. y0 2 y1 y2 y3 5. y4 y2 25. y2 2 y3 y4 0.96, y2 5. y3 y1 25. y1 2 y2 y3 0.64, y4 5. y5 y3 25. y3 2 y4 y5 Nu är detta ekvationssystem singulärt och kräver liksom tidigare randvärde (RV), här lösning y1 Solve ekv . y0 1.1, y2 1.24299, y3 1 2h 1, yn 1.43733, y4 2 0.84, 0.36 y0 y1 y0 yn 1 . Nu är det bara att lösa det. 2 First 1.68898 eller i tabellform xi , yi . i Table , yi , i, 0, n . lösning . y0 n xyFDM 0 1 5 2 5 3 5 4 5 1 1, yn 2 1 1.1 1.24299 1.43733 1.68898 2 Slutligen en jämförelse med den analytiska lösningen. Plot y x . yAvx, x, 0, 1 , PlotStyle Blue, PlotRange All, PlotRange Automatic, 0, 0.4 , AxesLabel "x", "y, yFDM" , Epilog Red, PointSize 0.025 , Line xyFDM , Point xyFDM y, yFDM 2.0 1.8 1.6 1.4 1.2 0.2 0.4 0.6 0.8 1.0 x Som tidigare nämnts kan man förvänta sig bättre noggrannhet om en finare indelning väljs. Eftersom vi har symmetriska approximationer kan man visa att felet i varje nod är proportionellt mot h2 . 32 Ordinära differentialekvationer och Mathematica HH/ITE/BN ť Blandade exempel för resten Exempel: En iskub som glömts på stranden smälter så att volymändringen per tidsenhet är proportionell mot dess area. Antag att sidan var 3 cm från början och att den smält till 2 cm på 5 min. Hur länge dröjer det innan den har smält bort ? V t Lösningsförslag: Enligt uppgift har vi att volymändringen per tidsenhet är proportionell mot arean, s3 och arean A volymen V s t 3 s2 s t k 6 s2 6 s2 så med den populära kedjeregeln får vi k. Direkt integration ger s 3 2 k 0 k 5 m m 1 5 k och m kt V t kA KR V s s t kA. Med sidan s blir k 6 s2 s s3 s t k 6 s2 m och sedan med (BV) och (RV) 1 5 3, varav svaret på den brännande frågan: 0 t 3 t 15 min. Avslutningsvis ett litet trick Om man vill få med randvillkoret s 5 2 kan man lösa ett system av (ODE) med vetskapen att k är en konstant, det vill säga k ' t 0. Nu har vi totalt två ' så vi har möjlighet att ta med två BV RV . Detta ger direkt s t och k. sÅk DSolveDs t 1 15 k t 3 , t k t 6s t 2 , k' t 3, s 5 2, s t , k t , t t ,s t 10 5 med samma svar s t som ovan. Dock har vi "ursprungliga" k i Solves t t 0, s 0 V t kA. Smidigt! Slutligen smälttiden som ovan 0 . sÅk 15 Exempel: År 1988 kontaktade Vatikanen British Museum för att få hjälp med att datera den så kallade Svepningen från Turin som påstods vara den svepning som användes vid begravningen av Jesus från Nasaret. Den upptäcktes år 1356 och ansågs av många allt sedan dess vara äkta. British Museum bestämde sig för att använde kol 14 metoden för att göra denna datering. Efter en undersökning av fibrerna i svepningen visade det sig att mellan 92 och 93 av ursprungliga mängden kol 14 fanns kvar. Kol 14 har halveringstiden 5730 år. Gör om den analys som British Museum gjorde Lösningsförslag: Om mängden kol 14 vid tiden t är m t så gäller för radioaktivt sönderfall att sönderfallshastigheten m' t k m t . Denna är separabel mt kt C1 mAvt m t m m k t, varav 1 m m k t . DSolve m ' t kt c1 km t ,m t ,t First Randvillkoret med halveringstiden fixerar proportionalitetskonstanten k. 1 ekv m t c1 . mAvt . t 5730 2 c1 5730 k c1 2 kVärde Solve ekv, k, Reals log 2 k 5730 First C1 ln m kt C1 m k t C1 m C1 kt HH/ITE/BN Ordinära differentialekvationer och Mathematica 33 Lös ut tiden motsvarande en godtycklig andel p. Simplify Solve m t Τ p c1 . mAvt . kVärde, t, Reals , p 0 First 5730 log p t log 2 Slutligen den ålder som motsvarar 92% och 93% av kvarvarande mängd jämfört med från början. Τ .p t 0.92, 0.93 689.286, 599.916 Svepningen kan därmed dateras till att vara från tidsepoken 1988 t .Τ .p 0.92, 0.93 Round 1299, 1388 Om man tror på kol 14 metoden kan alltså svepningen inte ha tillhört Jesus från Nasaret. Exempel: En bakteriekultur dubbleras på 10 min. Hur lång tid tar det innan kulturen har fem gånger så många bakterier som från början ? Antag att tillväxthastigheten vid varje tidpunkt är proportionell mot antalet bakterier. Detta brukar ibland kallas Malthus lag. Lösningsförslag: Efter översättning av sista meningen har vi modellen b ' t 1 b b k t C1 bAvt ln b kt DSolve b ' t b t kt c1 C1 b k t C1 kb t , b t ,t b C1 k t bt k b t . Denna är separabel, C1 First Kravet på dubblering efter 10 s fixerar proportionalitetskonstanten k. ekv c1 b t 10 k 2 c1 . bAvt . t 10 2 c1 kVärde Solve ekv, k, Reals First log 2 k 10 Slutligen tiden till fem gånger så många bakterier som från början. ekv c1 2 b t t 10 5 c1 . bAvt . kVärde 5 c1 Solve ekv, t, Reals 10 log 5 t log 2 Exempel: En nackdel med tillväxten av bakteriekulturen i föregående exempel är att antalet bakterier växer över alla gränser då t . Detta kan korrigeras med att bestämma en maximalt tillåten population som motsvarar mängden tillgänglig mat och andra livsbegränsande betingelser. För att uppnå detta låter vi högerledet också vara proportionellt mot skillnaden mellan maximala antalet individer och aktuell mängd. Denna formulering brukar kallas Logistiska lagen och vi exemplifierar med några andra kompisar. kt . b b k t, med lösningen 34 Ordinära differentialekvationer och Mathematica HH/ITE/BN Lösningsförslag: Efter översättning av näst sista meningen har vi kaninmodellen k ' t Αk t K k t . Som tidigare indikerar Α hur snabbt förökningen sker och K det maximala antalet kaniner som kan finnas i skogen, den så kallade kapaciteten. Denna (ODE) är separabel, kAvt k kK k Α t, men kräver partialbråksuppdelning för att kunna integreras. Så vi låter Mathematica göra jobbet. DSolve k t 2 k' t 2K ΑKt ΑKt K Αk t K k t ,k 0 2 ,k t ,t First 2 Ju rödare kurvan är i figuren nedan ju större är Α och ju fortare ökar populationen upp till fullbelagt, exempelvis 1000 st! Plot Evaluate Table k t . kAvt . K PlotRange All, PlotStyle Hue 1000, Α, 0.01, 0.1, 0.01 , t, 0, 1 , Range 0.1, 1, 0.1 , AxesLabel "t", "k t " kt 1000 800 600 400 200 0.2 0.4 0.6 0.8 1.0 t Exempel: En vanlig utveckling av logistiska lagen är med så kallad Allee effekt (Warder Clyde Allee 1885-1955, amerikansk teoretisk ekolog) som tar hänsyn till att vissa arter har stora problem med att återhämta sig om populationen sjunker under en viss nivå. På grund av genetisk degenerering kommer den då tyvärr att gå ett tragiskt öde till mötes och faktiskt dö ut. En art som tydligt visade på denna effekt var vandringsduvan (Ectopistes migratorius), som efter passing by fick namnet passenger pigeon på engelska. Under tidiga 1800-talet var den förmodligen jordens vanligaste fågel, och speciellt i nordamerika har det uppskattats att det fanns enorma mängder, kanske 5-10 miljarder! När de europeiska emigranterna anlände gick det ryckte om flockar som var så stora som 500 1.5 km, vilka det tog en hel dag för att passera ranchen! Med för kontinenten nya jaktvapen började så en förödande jakt på fåglarna. Nyttojakten urartade till rena slaktorgier, se figur nedan till höger. Då förstår man att det knappt finns några fotografier på den vackra fågeln, utan endast teckningar, som den till vänster nedan. Effekten blev katastrofal för vandringsduvan som minskade kraftigt i antal mot slutet av 1800-talet. Massiva räddningsinsatser visade sig verkningslösa, så den sista vandringsduvan, kallad Martha, dog den första september 1914 i Cincinatti Zoo. Allee effekt monteras in i logistiska lagen som en extra faktor i högerledet som tar hand om den undre gränsen för överlevnad L. Om vi startar ovanför denna gräns ökar populationen upp mot kapaciteten K och dör ut om vi startar under den. Om v t är antalet vandringsduvor vid tiden t får vi alltså modellen v' t Αv t K v t v t L . Vi exemplifierar med ett normerat fall där K 1 och L 0.2. Vi ser tydligt Allee effekten när vi startar från lite olika begynnelsevärden på populationen. pAvt NDSolve p' t 3p t 1 p t p t 0.2 , p 0 , p t , t, 0, 10 & 0.03 Range 15, 1, 1 ; Plot Evaluate p t . pAvt , t, 0, 10 , PlotRange All, AxesLabel vt 1.0 0.8 0.6 0.4 0.2 2 4 6 8 10 t "t", "v t " HH/ITE/BN Ordinära differentialekvationer och Mathematica 35 Exempel: Tomtens gröt har temperaturen 90 C då den lyfts från spisen. Temperaturen sjunker sedan till 75 C på 5 min då temperaturen i stugan är 20 C. Tomtens känsliga mage tål inget varmare än 50 C. Hur länge måste han vänta ? Vad är temperaturen efter 15 min? Antag att T t Newtons avsvalningslag k Tomg T gäller. Lösningsförslag: Detta är en linjär eller separabel (ODE). T t Tomg kt C1 . Vidare har vi att Tomg TAvt DSolve T t kt 70 ODE T' t T t Solve T t 1 k k t C1 ln Tomg t kt C1 ,T 0 20 20 k0 C1 70 kt C1 70 C . Samma svar med Mathematica 90 , T t , t Simplify First 20 Slutligen fixerar konstanten k av RV T 5 kVärde 90 : 90 BV blir T t k 20 T 20 C. Först bestäms C1 av (BV) T 0 Detta ger att lösningen till BVP 1 Tomg T 75 : 75 75 . TAvt . t 20 70 k5 k5 70 5, k, Reals 55 First 1 5 k 55 ln 70 1 5 k 14 ln 11 . Simplify 14 log 5 11 t Slutligen svaret på Tomtens brännande fråga T t Solve T t log 50 . TAvt . kVärde 16 807 t 243 14 50 : 50 20 70 5 ln 14 11 7 30 ln 70 t 5 14 ln 11 t 5 ln ln 3 14 11 . Simplify log 11 Direkt insättning i modellen ger svaret på sista frågan T t . TAvt . kVärde . t 15. 53.9541 Avslutningsvis ett litet trick Om man vill få med randvillkoret T 5 75 C kan man lösa ett system av (ODE) med vetskapen att k är en konstant, det vill säga k ' t 0. Nu har vi totalt två ' så vi har möjlighet att ta med två BV RV . Detta ger direkt T t och k, det vill säga lösningen till ODE BV RV . DSolve T' t T 0 1 k t k t 20 90, T 5 14 ,T t log 5 T t , k' t 0, 75 , T t , k t , t 11t 5 14 5 1 Simplify First t 5 20 11 med samma svar som ovan. Newtons avsvalningslag kan lika gärna kallas för Newtons uppvärmningslag, ty T t Tomg oberoende av (BV). Hur snabbt detta går avgörs av k. Plot Evaluate T t . TAvt . k Range 0.1, 1, 0.1 , t, 0, 30 , PlotRange 0, 100 , PlotStyle Hue Range 0.1, 1, 0.1 , AxesLabel "t min ", "T t C " T t 100 C 80 60 40 20 0 5 10 15 20 25 30 t min 36 Ordinära differentialekvationer och Mathematica HH/ITE/BN Exempel: En metallbit placeras för avsvalning under rinnande vatten med temperaturen 10 C. Efter 20 s är temperaturen i metallbiten 150 C och efter 45 s är den 80 C. Hur varmt är metallstycket två minuter efter det att man inledde avsvalningen och hur varmt var det då ? Antag att Newtons avsvalningslag gäller. Lösningsförslag: Newtons avsvalningslag kan lösas antingen som linjär eller separabel (ODE). Vi tar med första inspektionstillfället för att bestämma integrationskonstanten C1 . TAvt DSolve T t 140 T' t k t 20 k 10 T t , T 20 150 , T t , t Simplify 10 Slutligen fixerar de återstående två inspektionstillfällena proportionalitetskonstanten k samt svaren på frågorna. TÅk Solve T t k 0.0277259, T 0 80., T 0 , T 120 253.754, T 120 . TAvt . t 45, 0, 2 60 18.75 En liten svalkande bild ! PlotT t T t . TAvt . TÅk, t, 0, 300 , PlotStyle Red, AxesLabel "t s ", "T t C " C 120 100 80 60 40 20 50 100 150 200 250 300 t s Exempel: En tank i form av en rak cirkulär kon med spetsen vänd nedåt är helt fylld med vatten. Så öppnas en kran i botten så att vattnet strömmar ut med en hastighet som i varje ögonblick är proportionell mot kvadratroten ur vattendjupet, Torricellis lag. Hur lång tid tar det att tömma tanken om den efter T s är tömd till hälften? 1 Πr2h t 3 Lösningsförslag: De två första meningarna ger oss modellen k h , där h är vattendjupet betraktat som en koordinat för vattenytans läge i förhållande till konens spets, r är vattenytans radie vid h och k proportionalitetskonstanten. Men om konen har toppradien R och höjden H ger likformiga trianglar att 1 R Π H t 3 2 h h r R h , H 1 R 2 Π H h3 t 3 k h så R 2 Π H h t 2 h ' t k h k ht ht 32 h' t K. Vi har nu att beakta h t 3 2 h' t h0 H BVP hT H 2 K ODE BV RV Här är (ODE) separabel. Med BV och (RV) som integrationsgränser möbleras ett ekvationssystem som bestämmer K och tömningstiden Τ H 2 ekv T h3 2 h H 1 20 2 0 3 K t, h 0 8 H 5 2 H 2 H5 2 K T, K Τ 5 Τ 2 h K t 0 HH/ITE/BN Ordinära differentialekvationer och Mathematica 37 Solve ekv, K, Τ N 2 H5 2 8 H5 2 K 4 ,Τ 2 T 20 T 8 T 31 0.329289 H 5 2 K ,Τ 1.21474 T T Eller en riktigt brutal version som går direkt på "urmodellen" och bestämmer såväl h t som "ursprungligt" k. 1 hÅk 2 R DSolveD h t Π 3 h t , t k t h t , H H k' t 0, h 0 H, h T , h t , k t , t 2 H 5 2 2 t 8 t 8 T 2 2 H 2 ΠR 8ΠR k t 25 5 2 8Π R2 20 T 25 H 2 Π 8Π R2 2 5 2 20 T 2 25 T ,h t , k t 20 T 5 H 5 2 2 t 8 t 8 T T ,h t , 2 R2 25 T ,h t 2 H 5 2 2 t 8 t 8 T H 2 Π 8ΠR , k t 20 T k t 2 H 2 ΠR T ,h t R2 H 5 2 2 t 8 t 8 T 2 2 5 2 Här duger bara den första lösningen, med tömningstid som ovan. Solveh t Τ t 0 . hÅk 2 , t N First 1.21474 T Till slut vattenytans reseberättelse mot botten Ploth t . hÅk 1 PlotRange .H 16 . T 1, t, 0, t 0, 16 , AxesLabel "t T T . Τ , PlotStyle s ", "h t Blue, cm " h t cm 15 10 5 0.0 0.2 0.4 0.6 0.8 1.0 1.2 tT s Exempel: En fisk med massan m slutar simma vid hastigheten v0 och glider horisontellt genom vattnet. Bestäm fiskens hastighet som funktion av läget samt hastighet och läge som funktion av tiden om friktionskraften mot vattnet är proportionell mot hastigheten med proportionalitetskonstanten k. Hur långt rör den sig ? När stannar den? Lösningsförslag: Vi känner igen Newton, m x F. Vi börjar med att rulla ut måttbandet, det vill säga x-axeln, precis då den slutar simma. Den enda kraft som verkar i färdriktningen är då motståndet från vattnet k x. Vi får då BVP mx x0 kx 0 x0 v0 ODE BV I första fallet är vi primärt intresserade av hastighet som funktion av läget x x . Vi börjar med den typiska handräkningsversionen x t KR som man så ofta hittar i Mekanikböcker och gör därför omskrivningen x x x x t x x . x Därmed är vi över i en separabel (ODE) som vi integrerar direkt med (BV) som gränser mx x x kx x v0 x x 0 k m x x x v0 x k x m 0 x v0 k x. m 38 Ordinära differentialekvationer och Mathematica HH/ITE/BN Så hastigheten avtar linjärt med läget eller sträckan den glidit. För att få hastighet och läge som funktion av tiden kan vi antingen ge k x m v0 oss på den nyss erhållna x eller den ursprungliga m x k x. Notera att i båda fallen är x x t . Vi provar båda vägarna . Den förstnämda är både separabel och linjär. Eftersom vi har haft separationsångest ett tag så väljer vi att öva lite på en linjär av första ordningen k k x m v0 x x k x m v0 k m Slutligen BV x 0 t k mv0 k x k mv0 k 0: 0 IF C1 m m k t m m t C1 0 C1 t k t m mv0 k x m k mv0 k x k t C1 m t v0 Separabel t lösningen till BVP är x t k mv0 1 k m t Hastigheten får vi genom att derivera x t x t mv0 1 k k t m mv0 0 k k k m m t k v0 m t Så hastigheten avtar exponentiellt med tiden den glidit. Man ska alltid hålla vad man lovat varför det nu är dax för den andra vägen med ursprungliga (ODE) som är en linjär andra ordningens homogen med konstanta koefficienter. kx mx k 2m karakteristiska ekvationen och dess två rötter r1,2 k x m x k 0 2 2m r1 0 0 r2 k k m Fall 1 C2 m k Eftersom ODE är homogen så är x t xh t xp t C1 xh t C1 C2 m t t 0 k Slutligen BV x0 0 x0 v0 C1 : C2 k m mv0 k Glidsträckan blir ett gränsvärde x t m k C2 m då t 0 0 C1 0 C2 v0 mv0 k mv0 k återigen lösningen till BVP x t DSolve m x '' t k x' t , x 0 0, x ' 0 v0 , x t , t First m x t k PlotEvaluate PlotStyle xAvt 1, 2 , D xAvt 1, 2 , t Red, Blue , PlotRange xt ,xt 1.0 0.8 0.6 0.4 0.2 1 2 3 4 5 t Exempel: En ögonblicksbild av en höjdhoppare precis vid upphoppet kan beskådas i figuren. Sök v0 och Θ så att hopparens tyngdpunkt G precis klarar höjden. . m 1, k All, AxesLabel 1, v0 1 k v0 Simplify kt m v0 1 k m t . Så resan är begränsad i rummet men inte i tiden. Den stackarn glider för gott! Avslutningsvis kollar vi om det moderna lösningssättet med Mathematica delar vår åsikt. Därefter väljer vi m kvalitativ överblick av x t och x t under resan. xAvt mv0 1 k , t, 0, 5 , "t", "x t , x t " 1 och får en HH/ITE/BN Ordinära differentialekvationer och Mathematica 39 Lösningsförslag: Placera ett koordinatsystem med origo där G befinner sig enligt figur. Ta sedan hjälp av Newton och ställ upp rörelseekvationerna i x- och y-riktningarna. Applicera begynnelsevärden och lös begynnelsevärdesproblemet. xÅy DSolve m x '' t m y '' t 0, x 0 0, x ' 0 v0 Cos Θ , m g, y 0 0, y ' 0 v0 Sin Θ 1 x t t v0 cos Θ , y t 2 2 t v0 sin Θ , x t ,y t ,t First g t2 När klockan är t har vi nått högsta punkten på banan och då är y 0. Detta möblerar ett ekvationssystem vars lösning är den önskade informationen. Vi har att uppfylla tre villkor (ekvationer) med tre obekanta, v0 , Θ och stigtiden t som bonus. Solve x t v0 v0 1, y t 5.04228, Θ 5.04228, Θ 1.06, y ' t 1.13005, t 2.01155, t 0 0.464872 , v0 0.464872 , v0 . xÅy . DxÅy, t . g 5.04228, Θ 5.04228, Θ 9.81, v0 , Θ, t 2.01155, t 0.464872 , 1.13005, t 0.464872 Eftersom vi inte befattar oss med negativa farter, tider eller vinklar är det bara den sista lösningen som duger. I höjdhopp behöver inte tyngdpunkten passera ovanför ribban. Detta var svårt att uppnå på "Hedenhös" tid då man använde den så kallade saxstilen. Lite bättre blev det med dykstilen och dess utveckling med så kallat "hängande ben", men det verkliga genombrottet kom under OS 1968 i Mexico City då amerikanen Dick Fosbury (1947-), på bild nedan, chockade friidrottsvärlden med att visa upp en helt ny hoppstil, "the Fosbury Flop", som han vann guld med på 2.24. För den riktigt vige erbjuder denna stil just en rejäl sänkning av tyngdpunkten under det att kroppen krånglar sig över ribban. Vi som känner till mekanikens energilagar vet att detta betyder ökad hopphöjd för given utgångsfart. Exempel: Ungefär 25 km uppströms Fylleån, den som rinner strax söder om Eurostop, ligger i serie fyra sjöar som väsentligen genomsköljs av nämnda å. Dessa är i ordning Gyltigesjön Töddesjön Simlången Brearedssjön 6 3 Volym 10 m 3.4 1.2 7 1.2 I figuren till höger ses Töddesjön med sin största ö Storön. Antag att det under en kort tid sker ett utsläpp av en förorening på en plats uppströms Gyltigesjön. Studera hur denna vandrar genom sjöarna för att så småningom klinga av. Flödet i Fylleån antar vi vara 7000 m3 dygn och att sjöarna är helt rena från början. Lösningsförslag: Antag att utsläppet är Plott t , t, 0, 10 , PlotStyle Orange, AxesLabel "t dygn ", "c0 t mg m3 " c0 t mg m3 0.3 0.2 0.1 t dygn 2 4 6 8 10 Vi har typiskt blandningsproblem med perfekt omrörning enligt tidigare beskrivning. Men med fyra obekanta koncentrationer som möblerar ett system med fyra (ODE) är det helt uteslutet att räkna för hand. Vi tar istället hjälp av vår gamle arbetshäst NDSolve och löser det kopplade differentialekvationssystemet. 40 Ordinära differentialekvationer och Mathematica q 7000; c0 t t ; Tstud 10 365; cAvt HH/ITE/BN Studera systemet under tio år 6 NDSolve3.4 10 cG ' t q c0 1.2 106 cT ' t q cG t cT t , Töddesjön 7.0 106 cS ' t q cT t cS t , Simlången cG t , Gyltigesjön 1.2 106 cB ' t q cS t cB t , Brearedssjön cG 0 cT 0 cS 0 cB 0 0 BV First; , cG t , cT t , cS t , cB t , t, 0, Tstud Å så här ser skådespelet ut under de tio första åren PlotEvaluate Last PlotRange cG t ,cT t ,cS t ,cB t cAvt . t All, AxesLabel 365 t , t, 0, 10 , PlotStyle "t Orange, Green, Blue, Red , år ", "cG t ,cT t ,cS t ,cB t mg m3 " mg m3 0.0020 0.0015 0.0010 0.0005 2 4 6 8 10 t år Fotnot: Invid Gyltigesjön ligger det som var Halmstadbornas vintersportparadis från 1950-75. Bestyckade med träskidor, råttfällor, anorak, mössa och lovikavantar begicks mången debut i utförsåkningens ädla konst. Inspirerade av vad man såg i den i hemmen allt vanligare så kallade TV-apparaten drog man varje snörik helg till "Brearedsfjällen". Med dagens "bortskämda" referenser är de närmast att betrakta som "vägbulor". Anstormningen av rejält nedfrusna frisksportare medförde att Turistfrämjandet lät uppföra en sportanläggning, Simlångsgården. Släplift på egen risk installerades och längdskidspår anlades. Nu blev det riktigt folkligt. För de som inte tyckte sig ha råd att köpa fika fanns värmestugor där medhavda mackor och varm chocklad (med skinn!) kunde inmundigas under livliga diskussioner kring teknikgrenarna. Med charterresornas uppgång kom dock verksamheten i svårigheter. Men enligt senaste rapporter är nu verksamheten på frammarsch och i backarna har åtminstone pulkafolket hittat tillbaka medan de gamle myser och ventilerar minnen från svunna tider, kan ett samtida ögonvittne från både då och nu berätta. Exempel: Volterra–Lotkas jägar–byte modell. Studera ett stort skogsparti där endast rävar och kaniner lever. Uppgiften blir att studera djurens utveckling över tiden. När de lever i den bästa av världar, det villl säga ostörda, bygger modellen på följande förutsättningar Vid tidpunkten t finns det k t st kaniner och r t st rävar. Rävarnas enda föda är kaniner vars föda det finns i överflöd. Vid avsaknad av rävar gör kaniner det dom är bäst på och ökar sin population enligt Malthus lag, k ' t Vid avsaknad av kaniner svälter rävarna ihjäl. Även detta enligt Malthus lag, r' t Αk t . Βr t . Då det finns både kaniner och rävar i skogen är det rimligt att anta att antalet kaniner som dödas per tidsenhet av rävarna är proportionellt mot både antalet kaniner och antalet rävar. Kaninekvationen korrigeras alltså till k ' t Αk t Γ k t r t . Med samma betraktelsesätt får vi då att rävarnas antal ökar. Så rävekvationen korrigeras till r' t Då har vi Βr t Δk t r t . HH/ITE/BN Ordinära differentialekvationer och Mathematica k' t r' t k0 r0 BVP Αk t Γ k t r t Βr t Δk t r t k0 r0 41 ODE BV Detta är ett system av icke-linjära differentialekvationer av första ordningen. De går inte att lösa analytiskt utan vi får tillgripa den numeriska lösaren i Mathematica. Vi väljer lite numeriska värden och öppnar skådespelet. kÅr t k t ,r t . NDSolve k' t 4k t 0.02 k t r t , r' t 0.9 r t 0.001 k t r t , k 0 200, r 0 200 , k t , r t t, 0, 25 First; , Några bilder kan inte skada PlotEvaluatekÅr t , t, 0, 25 , PlotStyle Gray, Red , AxesLabel "t", "kaniner,rävar" kaniner,rävar 2500 2000 1500 1000 500 5 10 15 20 25 t Man kan rita lösningarna på parameterform och bilda ett så kallat fasporträtt. Då t ökar vandrar punkten k t , r t med t som parameter utmed en sluten kurva enligt pilen i figuren nedan. Om vi t.ex. befinner oss i punkten A så kan vi förvänta oss att i en nära framtid så ökar antalet rävar medan antalet kaniner minskar. ParametricPlotEvaluatekÅr t , t, 0, 5 , PlotRange AxesLabel "kaniner", "rävar" , AspectRatio 0, 2500 , 100, 350 0.6, Epilog , PlotStyle Red, Red, Arrowheads 0.06 , ArrowkÅr 2.2 , kÅr 2.21 , GrayLevel 0 , Text"A", kÅr 2.1 , Background White rävar 350 300 250 A 200 150 100 0 500 1000 1500 kaniner 2500 2000 Vi kan göra en ekologisk betraktelse genom att studera en bukett av kurvor sprungna ur olika (BV). Antag att vi befinner oss i punkt P1 i figuren nedan och att vi efter t.ex. ett mänskligt ingripande "reducerar" antalet kaniner så vi hamnar i punkten P2 på en annan kurva i fasplanet. En tid senare får detta som effekt att vi befinner oss i Q2 i stället för Q1 , det vill säga antalet kaniner är många flera än vad de skulle varit om vi lämnat skogen ifred. Bra exempel på kontraintuitiv mänsklig insats! rävar 350 300 250 200 P2 Q1 P1 Q2 150 100 0 500 1000 1500 2000 kaniner 2500 Denna modell introducerades av den italienske matematiken Vito Volterra i samband med hans studier av fiskbeståndet i Adriatiska havet under 1920-talet. Modellen är generell och kan genom olika val av proportionalitetskonstanter och (BV) anpassas till olika arter av djur. 42 Ordinära differentialekvationer och Mathematica HH/ITE/BN Exempel: Svängningar. Vår omvärld är full av företeelser som karakteriseras av svängningar, exempelvis vibrationer i en maskin, stötar i ett knä vid löpning eller brus i en mobiltelefon. Många av dessa kan med fördel lineariseras till en diskret modell med en massa, en fjäder och en dämpare. Inte sällan ser man flera sådana "atomer" sammankopplade i större strukturer. Med hjälp av Newtons rörelselagar får vi så en modell som bör finnas i verktygslådan hos varje praktiserande ingenjör. För fjädern gäller att kraften som krävs för att förlänga den en sträcka x är proportionell mot denna, det vill säga F f kx, där k kallas fjäderkonstanten med enheten N/m. Observera att uttrycket gäller med tecken på x, det vill säga även då den trycks ihop. Ff k Ff x x För dämparen gäller däremot att kraften är proportionell mot förlängningshastigheten (farten), det vill säga Fd cx , där c kallas dämpningskonstanten med enheten Ns/m. En dämpare består i princip av en cylinder fylld med olja. En rörlig bricka med hål i delar in cylindern i två kammare. Oljans viskositet, det vill säga hur trögflytande den är, antal hål i brickan och deras storlek avgör hur trögt det är att flytta den, eftersom olja från ena kammaren då skall flyttas till den andra. Detta ger dämparen dess karakteristiska funktion som också brukar kallas viskös dämpning. Kraften som krävs för att flytta på brickan är alltså inte beroende av dess läge utan endast på hastigheten (farten). Jämför potatispress! Fd c Fd x x Massa och fjäder utan yttre last (fri odämpad svängning) Vi börjar med en massa kopplad till en fjäder. Vi frilägger och noterar att den motriktade kraften i fjädern är proportionell mot läget med fjäderkonstanten k. Formulera nu rörelseekvationen med hjälp av Newton mx kx mx kx 0 k x m x 0 k m Vi känner igen en linjär andra ordningens (ODE) med konstanta koefficienter. Här kallas Ωe enheten [rad/s]. Man pratar också om egenfrekvensen fe Ωe 2Π och egensvängningstiden Te 1 . fe för egenvinkelfrekvens med Prefixet "egen" kommer av att Ωe endast beror på systemets "egna" inneboende parametrar. Lösningen är en så kallad harmonisk svängning (sinusformad) som fortgår i all evighet om systemet störs från sitt jämviktsläge. Notera speciellt var Ωe dyker upp! DSolve m x '' t kx t , x t , t k t x t c2 sin k t c1 cos m m Som väntat får vi två konstanter som fixeras av (BV). Uttrycket ovan brukar ofta skrivas om som en ren sinus- eller cosinusvåg. a sin Ωt a2 b cos Ωt a b2 b sin Ωt a2 b2 och identifierar amplitud R och fasvinkeln a2 a2 b2 cos a2 b2 sin Ωt sin Ωt b2 och fasvinkel cos Ωt a2 b2 sin cos Ωt 1 a b 1, 1 a2 b2 1 a2 b2 Summaformel för sinus a som naturligtvis mäts i radianer. Punkten R , bestäms likt argumentet för ett komplext tal. Var och en av de oändligt många vinklar b R ligger på enhetscirkeln som löser ekvationerna HH/ITE/BN Ordinära differentialekvationer och Mathematica a b 43 R cos R sin kan göra anspråk på att kallas för fasvinkel. På grund av periodiciteten hos cosinus och sinus skiljer de sig åt med en multipel av 2Π så alla ger "samma avtryck" i enhetscirkeln. Ofta nöjer man sig med den så kallade principalvinkeln som ligger i intervallet Π, Π . När man räknar för hand gäller det att se till så man hamnar i rätt kvadrant!! Om a 0 eller b 0 är det ju enkelt annars går det bra b arctan a att beräkna fasvinkeln som Π eftersom arctan() levererar vinklar i första och fjärde kvadranten. Den avslutande om a 0 korrektionen kommer sig naturligtvis av att vi kan ha dividerat bort "negativ" information, ty b a b a och b a b . a I Mathematica är det inga problem, speciellt inte om vi använder versionen med två argument ArcTan[a,b]som alltid levererar rätt vinkel i intervallet Π, Π och givetvis i radianer. Vi tar ett exempelvis med m 2 kg, k 18 N m och BV x 0 1, x 0 1. xAvt DSolve 2 x '' t 18 x t , x 0 1, x ' 0 1 ,x t ,t First 1 x t sin 3 t 3 cos 3 t 3 Plot x t . xAvt, t, 0, 10 , PlotStyle Red, AxesLabel "t", "x t " xt 1.0 0.5 2 4 6 8 10 t 0.5 1.0 a, b Coefficient x t . xAvt, Sin 3 t , Cos 3 t 1 , 1 3 a2 R b2 10 3 ArcTan a, b tan 1 3 En sista ängslig koll... R Sin 3 t x t . xAvt Simplify 0 Massa, fjäder och dämpare utan yttre last (fri odämpad svängning) Massa kopplad till en fjäder och dämpare. Vi frilägger och noterar att den motriktade kraften i fjädern är proportionell mot läget och i dämparen mot hastigheten med dämpningskonstanten c. Formulera rörelseekvationen med hjälp av Newton mx kx cx mx kx cx 0 x c x m k x m 0 Vi känner igen en linjär andra ordningens (ODE) med konstanta koefficienter. Beroende på om rötterna till den karakteristiska ekvationen är reella och olika, reella och lika respektive komplexkonjugerade använder vi beteckningen överkritisk, kritiskt respektive underkritisk dämpning. Detta avgörs av den nya aktören, dämparen, som i praktiken bidrar med att "äta energi", vilket ger sig tillkänna som en exponentiellt avtagande amplitud hos lösningen. Även den tidigare nämnda egenvinkelfrekvensen Ωe c kommer med i lösningen på "samma ställe" som tidigare. Man brukar också definiera dämpningsfaktorn Ζ genom 2Ωe Ζ m . 44 Ordinära differentialekvationer och Mathematica För de tre fallen ovan gäller Ζ följande figurer. 1, Ζ 0 respektive Ζ 1. De tre möjliga fallen av homogena lösningar illustreras kvalitativt i xt xt HH/ITE/BN xt t t t Fall 2: Kritisk dämpning. Lösningskurvan skär x axeln högst en gång. Typiskt utseende för en ny hjulupphängning på en bil. Fall 1: Överkritisk dämpning. Inte så vanligt förekommande i ingenjörssammanhang. Exempelvis underkritisk dämpning med m xAvt DSolve 1 x t t6 3 x '' t 3 kg, c 5x t 1, x ' 0 1 ,x t ,t 59 cos 6 ab.ab . ab First Coefficientx t 59 t , Cos . xAvt, Sin 6 3 1. 6 59 t R 1 och x 0 59 t 59 sin 59 5 N m med (BV) x 0 1 x' t , x 0 59 t 7 1 Ns m, k Fall 3: Underkritisk dämpning. Mycket vanligt insvängningsförlopp. Typiskt utseende för en gammal hjulupphängning på en bil. 6 t3 6 59 Plot R, x t . xAvt, R , t, 0, 20 , PlotStyle PlotRange All, AxesLabel "t", "x t , R t " Blue, Red , xt , Rt 1.5 1.0 0.5 5 10 15 20 t 0.5 1.0 1.5 Massa, fjäder och dämpare med yttre last (påtvingad svängning) Avslutningsvis kan man naturligtvis utsätta de båda modellerna ovan för en yttre, ofta kallad störande eller påtvingad, kraft. I nästan alla intressanta applikationer är denna av periodisk natur F t F0 sin Ωt . Vi väljer att exemplifiera med en full massa–fjäder–dämpare–modell. Formulera nu rörelseekvationen med hjälp av Newton mx kx cx Ft mx kx cx Ft x c x m k x m Ft m Vi känner till att lösningen delas upp i "systemets inneboende" homogena lösning xh samt en partikulärlösning x p beroende på högerledet, ofta kallad fortvarighetslösning (eng. steady-state solution). Allmänna lösningen blir sedan x xh x p . Homogena lösningen brukar kallas för transienta lösningen (eng. transient solution) eftersom den klingar av ganska snabbt med tiden. Kvar blir x p , därav namnet. När vi löser en differentialekvation med Mathematica får vi inte denna, ibland önskade, uppdelningen. Ett trick är att lösa systemet utan begynnelsevärden. De termer som då har "konstanterna" Ci på sig tillhör den homogena lösningen och öppnar därmed för en separation av lösningen. HH/ITE/BN Ordinära differentialekvationer och Mathematica Exempelvis med m (BVP). xBVP 1 kg, c DSolve 1 t x t 20 2 Ns m, k 5 N m, F0 x '' t 2 x' t x 0 0, x ' 0 t 37 sin 2 t 80 10 N, Ω 2 rad s med (BV) x 0 5x t 10 Sin 2 t , 1 ,x t ,t First t 45 0 och x 0 1. Först hela lösningen till Simplify 1 cos 2 t 34 Plot x t . xBVP, t, 0, 15 , PlotStyle Red, AxesLabel "t", "x t " xt 2 1 2 4 6 8 10 12 t 14 1 2 Nu över till separationen x xODE 1 t 17 0, c2 xp x p . Samma som ovan men utan begynnelsevärden (BV). DSolve x '' t x t Så c1 xh 2 x' t 10 t sin 2 t 17 c1 5x t 17 c2 10 Sin 2 t , x t , t First Simplify 40 t cos 2 t 0 ger oss partikulärlösningen x p och sedan xh x t . xODE . C 1 0, C 2 0 Simplify 10 4 cos 2 t sin 2 t 17 xh x t 1 t . xBVP 37 sin 2 t xp Simplify 80 cos 2 t 34 Nu kan vi inspektera de olika delarna. Allmänna lösningen anpassar sig raskt till partikulärlösningen eftersom den homogena lösningen snabbt klingar av med tiden beroende på exponentialfunktioner med negativa exponenter. Plot x t . xBVP, xh, xp , t, 0, 15 , PlotStyle Red, Blue, Green , AxesLabel "t", "x t ,xh t ,xp t " x t ,xh t ,x p t 2 1 2 4 6 8 10 12 14 t 1 2 Även här brukar fortvarighetslösningen skrivas om till ren sinusvåg x p t vinkelfrekvens Ω, här = 2, och fasvinkel a, b 10 Coefficient xp, Sin 2 t , Cos 2 t 40 , 17 17 a2 R 10 17 i radianer naturligtvis. b2 asin Ωt bcos Ωt Rsin Ωt med amplitud R, 46 Ordinära differentialekvationer och Mathematica HH/ITE/BN ArcTan a, b tan 1 4 En sista ängslig koll... R Sin 2 t xp Simplify 0 Amplitud över alla gränser En enkel massa med fjäder och dämpare är uppriggat enligt figur. Sök fortvarighetslösningens amplitud orsakad av den störande kraften. k m Om den störande kraftens vinkelfrekvens Ω närmar sig egenvinkelfrekvensen Ωe kommer lösningens amplitud att öka dramatiskt. Man talar om resonans (eng. resonance). Vid konstruktion med liten dämpning ska man alltså undvika detta tillstånd eftersom ett haveri är att vänta. Vi illustrerar med en bukett dämpare samt Ωe 1 och ritar upp partikulärlösningens amplitud R. amp ;x t Dor : A Cos Ω t B Sin Ω t Solve Coefficient x '' t AppendTo amp, Norm 3 5 , 1, ; , c, 10 100 A, B c x' t x t . First r Sin Ω t , Cos Ω t , Sin Ω t 0, A, B ; ; Plot Evaluate amp , Ω, 0, 2 , PlotStyle Hue Range 1, 1 PlotRange 0, 2 , 0, 4 , AxesLabel "Ω Ωe ", "R" 15, 1 15 , R 4 3 2 1 0 0.0 0.5 1.0 1.5 2.0 Ω Ωe Vi poängterar ytterligare de två fundamentala och viktiga fallen då den störande vinkelfrekvensen Ω extra tydlig om vi illustrerar utan dämpare. Fallet Ω Ωe för modell utan dämpare Speciella tillämpningar har vi då Ωe xAvt DSolve Ω är mycket mindre än Ωe x '' t 36 x t x 0 0, x ' 0 Sin 5 t , 1 ,x t ,t sin 5 t sin 6 t 11 Denna kan, med ett litet trick, skrivas om till TrigFactor x t 2 11 t 11 t cos sin 2 2 . xAvt . 6 . Ω, så exempelvis med Ωe First 1 x t xt Ωe och Ω 6 Simplify 6 och Ω 5. Ωe . Effekten blir HH/ITE/BN Ordinära differentialekvationer och Mathematica 2 t cos 2 11 Här kan vi nu betrakta 47 som en med tiden "sakta" varierande amplitud till den "fortare" svängande sinusvågen sin 11 t . 2 Bland musiker brukar detta kallas för svävning (eng. beat) och kan höras strax innan en gitarrsträng är riktigt stämd. Elektroingenjörer identifierar fenomenet som amplitudmodulering (eng. amplitude modulation) och hittas på radions AM-band. Där känner vi också igen FM-bandet baserat på frekvensmodulering (eng. frequency modulation). 2 t Cos , 11 2 Plotxt, t Cos , t, 0, 6 Π , PlotStyle 11 2 2 t "t", "x t , cos " 11 2 AxesLabel 2 2 Red, Blue, Blue , t cos xt , 11 0.2 2 0.1 5 10 t 15 0.1 0.2 Fallet Ω Ωe för modell utan dämpare Detta resonansfall måste ovillkorligen undvikas vid all konstruktion eftersom det leder till haveri. Samma som föregående med Ωe Ω 6. xAvt DSolve 13 x t x '' t 36 x t x 0 0, x ' 0 Sin 6 t , 1 ,x t ,t First Simplify Apart 1 sin 6 t 72 t cos 6 t 12 Här kommer nu partikulärlösningens tidsberoende amplitud allt mera kraftiga svängningar eftersom t Plotx t . xAvt, t 12 att snabbt dominera förloppet. Om inget hejdar utvecklingen får vi , med ett oundvikligt haveri som följd. t , 12 då t t 12 , t, 0, 6 Π , PlotStyle Red, Blue, Blue , 12 t AxesLabel " "t", "x t , 12 t xt , 12 1.5 1.0 0.5 5 10 15 t 0.5 1.0 1.5 Ett gammalt välkänt exempel på denna typ av haveri är kollapsen av Tacoma Narrows Bridge 1940, där den måttliga vindens frekvens matchade längden på bron och satte en torsionsmod i resonanssvängning. På www hittar man lätt filmsnuttar från skådespelet! Ett exempel från senare tid är rymdfärjan Challenger där en turbopump oavsiktligt konstruerades med resonans. Lyckligtvis upptäcktes det före start, men felet kostade NASA flera miljoner dollar. Vid olyckan 1985 kom problemställningen att diskuteras på nytt. 48 Ordinära differentialekvationer och Mathematica HH/ITE/BN Exempel: Ett så kallat bungy jump är väl bekant för de flesta. Från en hoppställning högt ovan mark kastar man sig handlöst ut. Livlinan utgörs av en gummisnodd vars ena ände är fäst vid uthoppsplatsen och den andra surrad runt vristerna på offret. Välj lite numeriska data och gör en simulering av ett bungy jump Lösningsförslag: Om vi placerar en y-axel med origo vid marken och pekande uppåt har vi återigen Newton, my F. Krafterna som verkar är tyngdkraften och den från gummisnodden. Eftersom en gummisnodd, för enkelhets skull antar vi, fungerar ungefär som en fjäder frånsett att den inte kan ta trycklaster, är den lite kinkig att simulera och lösa analytiskt. Men med storsläggan NDSolve går det både snabbt och enkelt. För att offret inte ska svänga upp och ned i all oändlighet, vilket är fallet med en fjäder, lägger vi in lite dämpning i snodden. Med fjäderkonstanten k, dämpning c och den naturliga längden L gäller om hoppställningen har höjden H att kraften i snodden Fgs kH 0 y L c y om H om H y y L L 0 0 Vi får då BVP my mg y0 H y0 0 Fgs ODE BV Nu gäller det bara att översätta den styckvis definierade funktionen Fgs till Mathematica, vilket lätt görs med funktionen Piecewise eller If. Vidare kräver NDSolve att resan görs helt numeriskt, så välj t.ex. m c 50 Ns m, så har vi direkt en studie över de T första sekunderna T 75 kg, H 15; Fgs yAvt 50 m, L 30 m, k 125 N m och Restid k H y t NDSolve L 0 c y' t H H y t y t L L 0 ; 0 F i gummisnodden m y '' t m g Fgs , y 0 H, y ' 0 0 . m 75, g 9.81, H 50, L y t , t, 0, T First; 30, k 125, c 50 , ODE BV Data En bild över spektaklet piggar alltid upp PlotEvaluate PlotStyle y t . yAvt, D y t . yAvt, t Red, Blue , AxesLabel "t , t, 0, T , s ", "y t m , y t m s " yt m,yt ms 40 20 2 4 6 8 10 12 14 t s 20 Man ser tydligt på hastighetsgrafen när gummisnodden börjar bromsa in det fria fallet. Exempel: En fallskärmshoppare, vars vikt är 75 kg, hoppar ut från en helikopter 4 km ovan markytan. Antag att luftmotståndet är proportionellt mot hopparens fart. Proportionalitetsfaktorn är 15 kg s när fallskärmen är outlöst och 105 kg s när fallskärmen är utvecklad. Antag att fallskärmen utvecklas 1 min efter uthoppet från helikoptern. Sök läge och hastighet under resan samt bestäm hur lång tid hoppet tar. Lösningsförslag: Om vi placerar en y-axel med origo vid marken och pekande uppåt har vi återigen Newton, m y F. Krafterna som verkar är tyngdkraften och den från fallskärmen. Vi har att ta ställning till två stycken (BVP). Ett under den första minuten med HH/ITE/BN Ordinära differentialekvationer och Mathematica kända (BV), sedan ett annat under resten av nedfärden. Denna måste matchas med BV att den sammanfogas med lösningen under den första minuten. Eller lite mera precist BVP1 m y1 y1 0 mg k1 y1 H y1 0 0 ODE BV för t 0, 60 och BVP2 49 RV vad gäller tid, läge och hastighet så m y2 y2 60 mg k2 y2 y1 60 y2 60 y1 60 ODE BV för t 60, När man så äntligen trött kommer i mål gäller det att mata Plot med rätt lösning i rätt intervall ;-(. Räddaren heter naturligtvis NDSolve. Vi löser (BVP1) för hela resan t 0, och byter helt enkelt proportionalitetskonstant k1 k2 vid 60 s on the fly ! Smidigt! Nu är det bara att sätta igång! Kör ordentligt i backen så tar vi reda på efteråt hur lång tid hoppet tog! yAvt NDSolve m y '' t m g If t Τ, k1 , k2 y ' t , y 0 H, y ' 0 0 . m 75, g 9.81, H 4000, Τ 60, k1 y t , t, 0, 500 First; 15, k2 105 , ODE BV Data Hopptid Thopp t . FindRoot y t 0 . yAvt, t, 200 241.56 Några bilder över spektaklet piggar alltid upp PrintPlot y t . yAvt, t, 0, Thopp , PlotRange All, PlotStyle AxesLabel "t s ", "y t m " ," ", PlotEvaluate D y t . yAvt, t , t, 0, Thopp , PlotRange PlotStyle Blue, AxesLabel "t s ", "y t Red, All, m s " yt ms yt m 4000 50 100 150 200 t s 10 3000 20 2000 30 1000 40 50 100 150 200 t s 50 Man ser tydligt på grafen över hastigheten när fallskärmen börjar bromsa in det fria fallet. Man kan också lätt identifiera de två gränshastigheterna, det vill säga då vi inte har någon acceleration längre. Dessa blir utan respektive med fallskärm D y t . yAvt, t .t 55, 200 49.0492, 7.00714 Exempel: Hållfasthetslära. I hållfasthetslära och byggstatik böjs det balkar i tid och otid. Det är ett centralt moment att behärska för ingenjörer som skall arbeta med konstruktion av exempelvis hus, flygplan, bilar eller mobilmaster. Därför ingår en kurs i hållfasthetslära på i princip alla ingenjörsutbildningar. Alla viktiga aspekter såsom utböjning och om materialet i balken håller för den pålagda lasten går tillbaka på att bestämma den så kallade elastiska linjen. Lösningsförslag: Om utböjningen i balken är u x , E x materialets elasticitetsmodul, I x balktvärsnittets yttröghetsmoment och q x den utbredda lasten, riktad som u x , gäller det att lösa en fjärde ordningens differentialekvation. E x I x u '' x '' qx Denna modell brukar kallas Euler-Bernoulli-balk efter upphovsmännen (1700-talet!) och lösningen u x benämns elastiska linjen. Generationer av ingenjörsstudenter har "plågats" med ändlöst handarbete för lösa den med två (RV) i varje ände (u utböjning, u ' vinkeländring, u '' moment och u ''' tvärkraft) och några olika vanliga q x . Oftast är EI konstant, så kallad jämnstyv balk. För Πx Mathematica är det inga problem och vi exemplifierar med en så kallad konsolbalk enligt figur med q x q0 sin L . 50 Ordinära differentialekvationer och Mathematica HH/ITE/BN Πx u x u x . DSolveEI u '''' x q0 Sin , L u 0 q0 6 L4 sin Πx L 6 Π L3 x 3 Π3 L2 x2 0, u ' 0 0, u '' L 0, u ''' L 0, u x , x Π3 L x 3 6 Π4 EI Först utböjningen sedan moment och tvärsnittskraft. EI u Ξ L Plot , Ξ, 0, 1 , PlotStyle Orange, AxesLabel q0 L4 "x L", "q0 L4 EI" q0 L4 EI 0.2 0.4 0.6 0.8 1.0 x L 0.02 0.04 0.06 EI u '' Ξ L Plot EI u ''' Ξ L , q0 , Ξ, 0, 1 , PlotStyle L2 AxesLabel Blue, Red , q0 L "x L", "q0 L2 EI, q0 L EI" q0 L2 EI , q0 L EI 0.2 0.2 0.4 0.6 0.8 1.0 x L 0.2 0.4 0.6 Det helt dominerande verktyget idag inom beräkningsteknik för exempelvis hållfasthetslära och strömningsteknik kallas finita elementmetoden (FEM) och är helt datorbaserad. Om denna kan du läsa i en annan kurs...