Simulering av mänskligt hår

Storlek: px
Starta visningen från sidan:

Download "Simulering av mänskligt hår"

Transkript

1 Simulering av mänskligt hår Linköpings Universitet, Campus Norrköping TNM085, Modelleringsprojekt, VT 2008 Christoffer Erik Gustav Filip Niklas 24 mars 2008

2 2

3 Sammanfattning Denna rapport beskriver arbetsgången och presenterar resultatet från ett projekt i kursen Modelleringsprojekt, TNM085, vid Linköpings Universitet under våren Arbetet som projektgruppen tagit sig an är att utifrån en fysikalisk modell simulera mänskligt hår. Den fysikaliska modellen har tagit inspiration från flertalet vetenskapliga rapporter inom området och utgår ifrån en modell kallad fjäder-balk-system. Modellen innefattar påverkan från externa krafter i form av gravitation, luftmotstånd, vind och kollisioner. För att bespara processorkraft vid simuleringen används en så kallad Wisps-modell för att få ner antalet hårstrån som behöver simuleras fysikaliskt. Detta innebär att ett hårstrå simuleras enligt den fysikaliska modellen, sedan renderas ytterligare ett antal hårstrån i en närhet av det simulerade hårstrået för att bilda en fullständig hårslinga. För att förhöja realismen används parameterkartor för att styra håregenskaper som längd, färg och spretighet. Utöver detta har även en anisotropisk reflektionsmodell implementerats för att uppnå en mer realistisk ljussättning av håret. Det slutgiltiga resultatet är i form av ett program som kör simuleringen utifrån givna startparametrar, dock inte i realtid men med möjlighet att rendera till film. Resultatet anser vi är till synes fysikaliskt korrekt och visuellt tilltalande där hårstråna rör sig som man skulle kunna vänta sig utifrån påverkan av gravitation, luftmotstånd, vind och kollisioner.

4 4

5 Innehåll 1 Inledning Syfte Bakgrund Metod Avgränsningar Källor Struktur Arbetsgång Fysikalisk modell Externa krafter Diskretisering av momentekvationerna Implementation Koordinatsystem och basbyten Generering av vind Kollisioner Wisps Parameterkartor Ljusmodell Resultat Simulering Möjligheter till optimering Diskussion och förslag på vidareutveckling 21 Referenslista 23 5

6 6

7 Figurer 2.1 Ett hårstrås uppbyggnad Koordinatsystemens uppbyggnad för ett hårstrå Enhetsvektorer som används för kraftprojektion i θ- och φ-planet Krafter i verkan vid kollisionshantering Parameterkarta för färg med tillhörande resultat Parameterkarta för längd med tillhörande resultat Parameterkarta för spretighet med tillhörande resultat Bild på de vektorer och vinklar som används i Kajiya-Kays ljusmodell Simulering Resultat av att använda parameterkarta för att kontrollera hårets färg

8 8

9 Kapitel 1 Inledning 1.1 Syfte Under första halvan av vårterminen 2008 hålls kursen TNM085 - Modelleringsprojekt vid Linköpings Universitet, Campus Norrköping. Kursen syftar till att ett fysikaliskt system ska modelleras och en simulering skall implementeras och på så sätt generera en animation av det valda systemet. Denna rapport beskriver en metod för hur mänskligt hår kan modelleras. Målet är att finna en modell som beskriver mänskligt hår under påverkan av yttre krafter såsom gravitation, vind och kollisioner med andra objekt. Ett annat mål är att få animationen av simuleringen att vara visuellt tilltalande. 1.2 Bakgrund Mänskligt hår är ett komplext system som består av tiotusentals tunna och böjbara hårstrån som interagerar både med varandra och med kroppen de sitter på. Hårsimulering som område är relativt nytt i jämförelse med simulering av exempelvis stelkroppar och vätskor, som har studerats under lång tid. Området dök upp under slutet av talet då realistiska animationer av människor behövdes inom bland annat filmindustrin. Av anledning att området är så pass nytt finns det ingen vedertagen modell för hur hår ska modelleras, utan istället flera modeller som är mer eller mindre kompletta. Möjligheten att prova på något som både anses relativt nytt och komplext lockade oss till valet att modellera hår. 1.3 Metod Vid projektets början saknade projektgruppen kunskap om hur hår kan modelleras och därför även vilka metoder som är praktiskt användbara och används inom t.ex. filmindustrin. Vi visste heller inte om det var realistiskt möjligt att utan tidigare erfarenhet implementera en simulering av hår på 8-10 veckor. Arbetet påbörjades därför med att läsa igenom flertalet forskningsrapporter och publiceringar om hårsimulering för att erhålla en bra grund att stå på inför det fortsatta arbetet. Det finns tre vanligt förekommande metoder för att modellera hår, alla med sina för- och nackdelar. Den tidigaste metoden bygger på ett så kallat fjäder-massa-system [1], vilket innebär att ett hårstrå modelleras som en mängd massor sammansatta med hjälp av fjädrar. Denna modell är enkel att implementera men gör att håret blir elastiskt. Då hår i verkligheten inte är märkbart elastiskt valde vi att istället titta närmare på de andra metoderna. Den mest moderna och kompletta modellen som finns beskriven är den så kallade Super-Helix-modellen [2]. Den var dock för komplex för att anses realistisk att implementera med de kunskaper vi besitter och den tidsram vi hade till förfogande. Därför valde vi den modell som kallas för fjäder-balk-modellen, vilken beskrivs i denna rapport. Modellen implementeras i C++ tillsammans med OpenGL och GLSL då flertalet gruppmedlemmar har tidigare erfarenhet av dessa programmeringsspråk. Språken är dessutom relativt snabba vilket passar bra för att göra tunga beräkningar som t.ex. simuleringar. 9

10 1.3.1 Avgränsningar För att mängden arbete under projektet inte skulle bli överväldigande sett till projektets tidsram gjordes vissa avgränsning. Den mest betydande avgränsning som gjorts var valet av modell, en modell baserad på ett fjäderbalk-system och inte Super-Helix-modellen. Kollisioner mellan hårstrån har uteslutits helt ur modellen då det är en beräkningstung operation. För att underlätta implementationen av kollisioner mellan hårstrån och huvudet har huvudets form begränsats till en sfär. En annan betydande förenklig som gjorts är att vinden påverkar håret lika mycket på alla hårstrån oberoende av ett hårstråets position. Därmed hindras inte vinden att nå ett hårstrå som befinner sig i skydd av huvudet, vilket är fallet i verkligheten. 1.4 Källor Huvudsakligen använde vi oss av vetenskapliga rapporter för att finna inspiration till hur hår kan simuleras. Förutom vetenskapliga rapporter och vetenskaplig litteratur har vi fått hjälp av lärare på universitetet med förklaringar och lösningar till de partier vi har haft svårt att förstå. De som hjälpt oss under arbetets gång är: Dr. Anna Lombardi, Universitetslektor vid ITN 1 Dr. Ulf Sannemo, Universitetslektor vid ITN Gunilla Waldenström, Universitetsadjunkt vid ISV 2 Trovärdigheten hos de källor vi valt att använda anser vi vara bra. Mycket är taget från internet 3, men då de kommer från seriösa domäner och det faktum att arbeten vi använt frekvent refereras till i andra tekniska rapporter ökar deras trovärdighet. Däremot finns det en del tveksamma förenklingar, det är därför viktigt att göra egna utvärderingar innan något används. Eftersom forskning inom visualisering av hårets dynamik är ett ganska ungt område finns det flera olika lösningar och ingen vedertagen bästa lösning. Det är därför viktigt att även titta på hela systemet ur en fysikalisk synpunkt och inte ta för givet att tidigare arbeten är kompletta. Matematiken och fysiken som används i de vetenskapliga rapporter vi tagit del av anser vi rimliga då de ligger som grund till vårt samhälle. 1.5 Struktur Det första kapitlet förklarar syfte, bakgrund, metod och diskuterar rimligheten hos våra källor. Det andra kapitlet innefattar implementation och ingående förklaring av den fysiska modell som använts samt hur den implementeras. I det tredje kapitlet visas resultatet av arbetet och diskuterar dess rimlighet. Fjärde och sista kapitlet är diskussionsdelen, där rimlighet samt framtida användningsområden diskuteras tillsammans med exempel på vidareutveckling och förbättringar av systemet. Rapporten avslutas med referenser till den litteratur vi använt oss av. 1 Institutionen för teknik- och naturvetenskap 2 Institutionen för samhälls- och välfärdsstudier 3 SIGGRAPH-kopplade arbeten och universitetssidor 10

11 Kapitel 2 Arbetsgång 2.1 Fysikalisk modell Ett hårstrå modelleras som en serie av raka linjesegment s i (1 < i < k) som sammanbinds mellan par av på varandra efterföljande nodpunkter p i (0 < i < k), se Figur 2.1. Varje nodpunkt har ett eget sfäriskt koordinatsystem vilket utgör det koordinatsystem som nästkommande nodpunkt är definierad i, se Figur 2.2. Utifrån hur de sfäriska koordinatsystemen är definierade så ligger alltid nästkommande koordinatsystems y-axel i samma riktning som föregående segment. För att beskriva interaktionen mellan segmenten har vi begränsat oss till att ta hänsyn till vridmomenten mellan dem. De sfäriska koordinatsystemen gör det möjligt att definiera momentekvationenerna i φ- och θ-planen och därmed ges variablerna θ och φ med avseende på tiden enligt Ekvation 2.1. [3] d θ p 1 s 1 s 2 2 p 2 s k p k p 0 Figur 2.1: Ett hårstrås uppbyggnad 11

12 y p i θ s i p i-1 Φ x z Figur 2.2: Koordinatsystemens uppbyggnad för ett hårstrå I i d 2 θ i dt 2 I i d 2 φ i dt 2 + γ i dθ i dt = M θ,i dφ + γ i i dt = M φ,i (2.1) I i är tröghetsmomentet för segment s i, γ i är dämpningskoefficienten och M θ,i samt M φ,i är vridmomentet i θ- respektive φ-planet. Tröghetsmomentet för ett element, s i, ges av Ekvation 2.2, där λ representerar massa per längdenhet, k fjäderkonstanten och d segmentens längd. I i = 1 3i λk4 d 3 (2.2) När ett segment vrids från sin ursprungsposition skapas vridmomenten M θ,i,spring och M φ,i,spring. Ekvationerna för dess kraft beror linjärt på skillnaden mellan nuvarande position och ursprungspositionen med en faktor k (fjäderkonstanten i respektive led) enligt Ekvation 2.3. M θ,i,spring = k θ (θ i θ 0,i ) M φ,i,spring = k φ (φ i φ 0,i ) (2.3) Vridmomenten M θ,i samt M φ,i som uppstår på grund av gångjärnseffekten beräknas sedan genom att summera M θ,i,spring och M θ,i,external med M φ,i,spring och M φ,i,external som innefattar vridmoment påverkat av yttre krafter, enligt Ekvation 2.4. M θ,i = M θ,i,spring + M θ,i,external M φ,i = M φ,i,spring + M φ,i,external (2.4) För att beräkna de externa momenten behöver först de externa krafterna definieras, formeln för detta ges av Ekvation 2.5 [4]. F external = ρdg + F d (2.5) I Ekvation 2.5 representerar ρ massa per längdenhet, d längden på ett segment och F d är den kraft som luftmotstånd och vind ger upphov till. 12

13 Då momentekvationerna är separerade i θ- och φ-planet krävs också att påverkan av F external beräknas i dessa plan. Hur stor del av F external som verkar för att rotera segmentet i θ-led ges av skalärprodukten mellan F external och v θ, en vektor av enhetslängd som är vinkelrät mot segmentets riktning i θ-planet. På samma sätt ges hur stor del av den externa kraften som verkar för att rotera segmentet i φ-led av skalärprodukten mellan F external och v φ, där v φ är den vektor som är vinkelrät mot hårsegmentets projektion i φ-planet. Vektorerna v θ och v φ ges av Ekvation 2.6 och illustreras i Figur 2.3. v θ = y d v φ = ( y d) d (2.6) De externa momenten beräknas sedan enligt Ekvation 2.7, där u är halva segmentlängden ( d 2 ) och v är halva längden av segmentets projektion i φ-planet. y p i d v θ p i-1 v Φ x z Figur 2.3: Enhetsvektorer som används för kraftprojektion i θ- och φ-planet M θ,i,external = uf θ M φ,i,external = vf φ (2.7) Externa krafter När modellen simuleras verkar olika externa krafter på håret och påverkar därmed dess rörelse. Bland dessa finns exempelvis gravitation och vind. Alla dessa krafter summeras enligt Ekvation 2.5 för att få fram den slutgiltiga kraften som verkar i varje enskild nodpunkt. Nedan beskrivs hur dessa separata krafter beräknas i varje punkt. Alla dessa krafter beräknas först till storlek och riktning i världskoordinater för att sedan transformeras in i det lokala koordinatsystem som den aktuella nodpunkten är definierad i. 13

14 Gravitation När det gäller gravitationen använder vi oss av Newtons andra lag. Det viktigaste är att få fram storleken på kraften. Riktningen är redan känd och är i negativt y-led. Storleken på kraften ges av F g,i = m i a, där a är accelerationen och m i är den uppskattade vikten av ett segment. Hela segmentets vikt approximeras att ligga i den aktuella nodpunkten. Vind och luftmotstånd När det finns en relativ hastighet mellan luften och ett hårsegment uppstår en kraft, luftmotstånd, som verkar i motsatt riktning mot den relativa hastigheten. Hastigheten kan antingen uppstå då hårsegmentet rör sig genom luften eller då luften rör sig genom håret (vind). Luftmotståndet beräknas enligt formel 2.8 [5]. F d = 1 2 C dρv 2 Aˆv (2.8) I Ekvation 2.8 är C d en dimensionslös konstant som uppskattats till 1,1 [6]. Vidare är d längden för ett hårsegment, ρ är densiteten för luft, v är farten för hårsegmentet i förhållande till luften och ˆv är en enhetsvektor som beskriver den relativa hastighetens riktning. Den effektiva tvärsnittsarean A approximeras enligt Ekvation 2.9, där d är hårsegmentets längd, r är hårstråets radie och R är en förhållandefaktor som ges av Ekvation A = Rdr (2.9) R = 1 ˆx ˆv (2.10) I Ekvation 2.10 är ˆx en normerad vektor som beskriver segmentets riktning. Denna approximation baseras alltså på att skalärprodukten ger förhållandet mellan segmentvektorn och vindvektorn. Luftmotståndet räknas ut och appliceras på samtliga hårsegment. Eftersom hårsegment faller med olika hastighet beroende på var de befinner sig, blir effekten att håret rör sig på ett naturligare sätt än om endast en konstant dämpningskoefficient använts Diskretisering av momentekvationerna För att implementera differentialekvationen från Ekvation 2.1 i simuleringen är det nödvändigt att diskretisera denna. Detta görs i form av en Euler-approximation i två steg vilket resulterar i Ekvation 2.11 och dθ(t) dt d 2 θ(t) dt 2 1 t (θ(t + t) θ(t)) 1 t ( dθ(t+ t) dt dθ(t) dt ) = 1 t 2 (θ(t + 2 t) 2θ(t + t) + θ(t)) (2.11) Samma diskretisering görs av φ och ekvationen ovan skiftas tillbaka två steg varefter den sätts in i Ekvation 2.1 för att bilda Ekvation θ(t) = 2θ(t t) θ(t 2 t) + t 2 1 I M θ t γ I θ(t t) + t γ I θ(t 2 t) (2.12) φ(t) = 2φ(t t) φ(t 2 t) + t 2 1 I M φ t γ I φ(t t) + t γ I φ(t 2 t) 14

15 2.2 Implementation Koordinatsystem och basbyten För vissa beräkningar i simuleringen krävs vetskap om nodpunkters positioner i världskoordinater utöver de i lokala koordinater, detta främst vid hastighetsberäkningar och kollisionshantering. Utifrån hur nodpunkternas lokala koordinatsystem är definierade så är en nodpunkts position beroende av tidigare punkters lokala koordinatsystem. Då y-axeln (r-axeln sett i sfäriska koordinater) i punktens lokala koordinatsystem ligger i linje med vektorn som beskriver föregående segment innebär det att hårstrået blir rakt om alla vinklar är satta till noll. En nodpunkts position i världskoordinater fås genom matrismultiplikation av föregående nodpunkters koordinatsystems transformationsmatriser. Då de sfäriska koordinatsystemet definierar θ i intervallet [0, π] och φ i intervallet [0, 2π] har det implementerats funktionalitet som tar hand om fallen då vinklarna beräknas till värden utanför desssa intervall. Vid fallet att θ blir negativ, så sätts θ till positiv och koordinatsystemet vrids istället korrekt genom att addera π till φ. Fallet då θ överstiger π tas omhand genom att θ sätts till 2π θ och på samma sätt som i det negativa fallet, vridning π radianer i φ-planet. Denna kompensering kräver också att det direkt efterföljande koordinatsystemet vrids π radianer i φ-planet. Detta för att ytterligare kompensera efterföljande nodpunkter så att de inte vrids π radianer fel på grund av den ursprunliga kompensationen Generering av vind För att få mer liv i håret implementerades en vindgenerator. Önskvärt är att vinden har ett slumpartat men kontrollerat beteende, på så sätt att riktningen för vinden i en tidpunkt hela tiden är beroende av riktningen i föregående tidpunkt. Detta beteende hos vinden implementeras genom att addera värden, slumpade från en normalfördelning, till vindvektorn vid varje iteration i simulationen. Slumptalen genereras utifrån en Box-Muller-transformation, vilket innebär att slumpade tal från en normalfördelning ges av Ekvation 2.13 [7], där w är vinden, w(t t) är vinden i förra tidpunkten och U 1 och U 2 är likformigt fördelade slumptal i intervallet ]0, 1]. De likformigt fördelade slumptalen genereras med den inbyggda slumptalsfunktionen rand() i C++. w(t) = w(t t) + 2 ln U 1 cos 2πU 2 (2.13) Kollisioner Kollisionshantering har avgränsats till kollisioner mellan hårstrån och huvudet. Grundidén i kollisionshanteringen är att kontrollera om en nodpunkt befinner sig innanför huvudet, och i det fallet applicera en motkraft som håller nodpunkten utanför huvudet. Vår metod utgår ifrån den reaction-constraint-metod som beskrivs i [3] och [4], men skiljer sig i hur det avgörs om en nodpunkt befinner sig innanför huvudet. Då det enda objekt vi kontrollerar kollisioner mot är huvudet, som approximeras som en sfär, kan vi reducera problemet till att avgöra om avståndet mellan nodpunkten och huvudets centerpunkt (i världskoordinater) är mindre än huvudets radie r. Om en nodpunkt befinner sig innanför sfären appliceras krafter enligt reaction-constraint-metoden för att hålla nodpunkten utanför. Krafterna som appliceras är uppdelad i två komposanter, F c och F u. F c är begränsad i ytans normalriktning och är till för att föra nodpunkten utanför sfären. F u är den komposant av kraften som kommer från den ursprungliga kraften som verkat på punkten, se Figur 2.4. Om en nodpunkt p i befinner sig innanför sfären beräknas den närmaste punkten T på sfären. Denna punkt och även ytans normal n i punkten T krävs för beräkningarna av krafterna. Krafterna beräknas enligt Ekvation 2.14, där F input betecknar den kraft som ursprunligen verkat på nodpunkten, v är nodpunktens hastighet, k kontrollerar styrkan av kraftrestriktionen och c är dämpningskoefficient. 15

16 p i-1 N T i p i F c F u F input Figur 2.4: Krafter i verkan vid kollisionshantering F u = F input (F input n) n F c = (k T p i + c( v n)) n (2.14) Den kraft F output som slutligen appliceras på nodpunkten ges av Ekvation F output = F u + F c (2.15) För att simulera oelastiska kollisioner appliceras endast krafterna för kollisionshanteringen då den ursprungliga kraften verkar för att föra nodpunkten in i sfären, eller då hastigheten är riktad in mot sfären. Detta uppfylls då F input n < 0 eller v n < Wisps För att ett hår ska se verklighetstroget ut behöver det innehålla tiotusentals hårstrån. Att simulera varje enskilt hårstrå tar lång tid, i regel flera timmar på en vanlig persondator. För att korta ner tiden används ett naturligt fenomen för hår vilket innebär att flera intilliggande hårstrån ofta klumpar sig samman och rör sig tillsammans. Vi utnyttjar detta i form av att implementera den så kallade Wisps-modellen vilket innebär att endast en delmängd av alla hårstrån simuleras [4]. Resterande hårstrån skapas sedan genom att ett antal kopior av varje simulerat hårstrå renderas i närheten av originalet. Kopiorna ändras även en aning i sitt utseende för att inte vara helt identiska med varandra, vilket ger en större variation i håret Parameterkartor En parameterkarta är en kvadratisk färgbild som UV-mappas på en tänkt sfär motsvarande huvudet. Utifrån var ett hårstrå är placerat på huvudet hämtas motsvarande UV-värde på kartan och på så vis sätts parametern för hårstrået [8]. Den stora fördelen med parameterkartorna är att vi på ett enkelt och intuitivt sätt kan ändra parametrar för hårets egenskaper och utseende. Ytterlihare en fördel är att det går att ha olika parametrar för hårstrån beroende var på huvudet det sitter. Vid användning av parameterkartor för att styra hårets färg resulterar färgvärden i parameterkartan motsvarande färg på håret, se Figur 2.5. Parameterkartorna för längd respektive spretighet mappar istället färgintensiteter mellan 0 och 1 i parameterkartan till olika längder respektive spretighet, se Figur 2.6 och Figur

17 Figur 2.5: Parameterkarta för färg med tillhörande resultat Figur 2.6: Parameterkarta för längd med tillhörande resultat Figur 2.7: Parameterkarta för spretighet med tillhörande resultat Ljusmodell För att få en ökad känsla av realism i håret räcker det inte med att färgen för varje hårstrå varierar över huvudet, utan färgen måste även variera längs med varje hårstrå. Detta kan göras med hjälp av en lokal ljusmodell. Eftersom hår är ett anisotropiskt material, vilket innebär att det reflekterar mer ljus längs med hårfibrerna än vad det gör i övriga riktningar, använder vi en modell som tar med detta i beräkningarna. Ljusmodellen som valdes är Kajiya- Kay-modellen som approximerar ett hårsegment som en smal och slät cylinder. Ljuset delas upp i två komponenter, en för diffust och en för spekulärt ljus [9]. Den diffusa komponenten använder Lamberts ytmodell och beräknas genom att integrera en avtagande cosinusfunktion över halva omkretsen av den del av cylindern som är synlig från ljuskällan [10]. Hur ljusintensiteten ges utifrån Lamberts modell är relativt komplex, men tack vare vårt val av koordinatsystem för hårstrån ges ljusintensiteten enligt Ekvation 2.16, där k diffuse är en materialkonstant och α är vinkeln mellan hårsegmentet och den vektor som beskriver ljuskällans riktning. I diffuse = k diffuse sin(α) (2.16) 17

18 y l α β e Figur 2.8: Bild på de vektorer och vinklar som används i Kajiya-Kays ljusmodell Den spekulära kompontenten modelleras genom att inkommande ljus sprids mest utmed hårstrået och sedan med minskande intensitet desto större vinkel i förhållande till segmentets riktning. På så sätt skapas en kon av reflekterat ljus. Ljusblänk beräknas med Phongs ljusmodell [11] enligt Ekvation 2.17 där k s en materialkonstant, y är nästa segments y-axel, l är vektorn som pekar mot ljuskällan och e är vektorn i riktning mot betraktaren. Vidare är α vinkeln mellan y och l och β är vinkeln mellan y och e, se Figur 2.8. Till sist är σ en konstant som bestämmer storleken på blänket. [10] I specular = k s (( y l)( y e) + sin(α)sin(β)) σ (2.17) Det slutgiltiga intensiteten erhålls genom att addera den diffusa och den spekulära termen enligt Ekvation 2.18 vilket resulterar i en visuellt tilltalande ljussättning med relativt få beräkningar. I = I diffuse + I specular (2.18) 18

19 Kapitel 3 Resultat Genom att implementera den fysikaliska modell som beskrivits i ovanstående sektioner har vi erhållit ett resultat som är visuellt tilltalande och till synes fysikaliskt korrekt. Håret rör sig som väntat utifrån påverkan av gravitation, luftmotstånd, vind och kollisioner. 3.1 Simulering Då det främsta målen inom projektet varit att skapa ett visuellt tilltalande och fungerande system har realtidssimulering inte prioriterats. Det är möjligt att simulera ett begränsat antal hårstrån i realtid, men vid en viss gräns beroende på datorprestanda, så är realtidssimulering inte möjligt. På grund av detta renderas en bild trettio gånger per sekund och kan sedan sättas samman till en film med hjälp av ett videoredigeringsprogram, t. ex. Adobe After Effects. Vi har så långt det är möjligt hållit oss till att använda fysikaliskt motiverade konstanter som kunnat återfinnas i rapporter eller andra källor. Dock har vi ibland varit tvungna att tumma på dessa, eller helt enkelt fått prova oss fram till egna konstanter för att få ett realistiskt beteende hos håret. Dessa justeringar av konstanterna har lett till bieffekten att simuleringen inte är helt korrekt med avseende på tiden i form av att förloppet går långsammare än det borde. För att kompensera för detta spelas bilderna upp i snabbare takt än de renderats för. I Figur 3.1 illustreras en simulering av 30 centimeter långt hår då det till en början står rakt ut från huvudet varpå de sedan faller av påverkan från externa krafter. Användandet av parameterkartor för att variera hårets karaktäristik gjorde det möjligt att framställa hår som ses i Figur Möjligheter till optimering Som nämnts tidigare har ingen tid lagts på att försöka optimera koden för att få en så effektiv programkod som möjligt. Det finns emellertid ett antal saker vi hade kunnat göra om vi haft mer tid. På moderna grafikkort finns möjligheten att göra andra beräkningar än enbart grafikberäkningar på GPU:n 1. Optimeringsteget som är möjligt är att man då kan simulerar flera olika hårstrån parallellt istället för att som vi gör nu, simulera dem efter varandra på CPU:n 2. 1 Graphical Processing Unit 2 Central Processing Unit 19

20 Ytterligare en möjlighet till optimering som observerats är att enhetsvektorerna v θ och v φ som används vid momentberäkningarna är likadana vektorer som efterföljande punkts koordinatsystems x- och z-axlar. I dagsläget beräknar vi både v θ och v φ samt koordinatsystemsaxlarna vilket innebär onödiga beräkningar. Det skulle räcka med att enbart beräkna v θ och v φ och använda dem som koordinataxlar. Figur 3.1: Simulering Figur 3.2: Resultat av att använda parameterkarta för att kontrollera hårets färg 20

21 Kapitel 4 Diskussion och förslag på vidareutveckling För att bredda användningsområdet för simuleringsapplikationen är ett naturligt steg att utvidga modellen till att behandla rotation och translation av huvudet. En annan del av modellen som ligger nära till hands att utveckla är kollisioner mellan håret och andra sfäriska objekt utöver huvudet. Detta då den kollisionshantering som är implementerad är allmän för sfäriska objekt. Att implementera funktionalitet för kollisioner hårstrån sinsemellan skulle kunna ge mer realistiska interaktioner inom håret och det skulle troligen även resultera i ett mer realistiskt rörelseförlopp för håret som helhet. En utökning av ljusmodellen i form av stöd för självskuggning i håret skulle kunna ytterligare förhöja det visuella intrycket. Det arbete som presenterats beskriver en metod för att utifrån en fysikalisk modell simulera hår, med möjlighet att simulera allt ifrån ett hårstrå till en hel frisyr. Under utvecklingen och främst vid justering av konstanter har vi observerat att vår modell även skulle gå att använda till att simulera högt gräs och liknande växtlighet. Med tanke på tidsramen och de förkunskaper projektgruppen hade anser vi att resultatet överstigit våra förväntningar. 21

22 22

23 Litteraturförteckning [1] K. Ward & F. Bertails & T-Y.Kim & S. Marschner & M-P. Cani & M. Lin. A survey on hair modeling: Styling, simulation, and rendering. Website, WBKMCL07.pdf. Tillgång: 12 mars [2] M. Bergbom. Super-helices for hair modelling and dynamics. Website, http: // fulltext.pdf. Tillgång: 12 mars [3] T. Kurihara & K. Anjyo & D. Thalmann. Hair animation with collision detection. Website, pdf. Tillgång: 26 februari [4] T. Kurihara & D. Thalmann & N. Thalmann & A. Daldegan. An integrated system for modelling, animating and rendering hair. Website, and_al_eg_93.pdf. Tillgång: 26 februari [5] D. Halliday & R. Resnick & J. Walker. Fundamentals of physics. John Wiley & sons INC, United States, [6] Unknown. Drag coefficient. Website, coefficient. Tillgång: 10 mars [7] G.E.P Box & M. Muller. A note on the generation of random normal deviates. Website, body&id=pdf_1&handle=euclid.aoms/ Tillgång: 10 mars [8] E. Weisstein. Stereographic projection. Website, Mathworld, com/stereographicprojection.html. Tillgång: 10 mars [9] J. T. Kajiya & T. L. Kay. Rendering fur with three dimensional textures. Website, acm.org/citation.cfm?id= Tillgång: 20 mars [10] G.E.P Box & M. Muller. Real-time hair simulation and visualization for games. Website, http: //graphics.cs.lth.se/theses/projects/hair/report.pdf. Tillgång: 10 mars [11] A. Watt. 3D Computer graphics. Addison-Wesley Publishing, United States,

Inledning. Kapitel 1. 1.1 Bakgrund. 1.2 Syfte

Inledning. Kapitel 1. 1.1 Bakgrund. 1.2 Syfte Sammanfattning Vi har i kursen Modelleringsprojekt TNM085 valt att simulera ett geléobjekt i form av en kub. Denna består av masspunkter som är sammankopplade med tre olika typer av fjädrar med olika parametrar.

Läs mer

Tentamen TNM061, 3D-grafik och animering för MT2. Onsdag 20/ kl SP71. Inga hjälpmedel

Tentamen TNM061, 3D-grafik och animering för MT2. Onsdag 20/ kl SP71. Inga hjälpmedel Tentamen TNM061, 3D-grafik och animering för MT2 Onsdag 20/8 2014 kl 14-18 SP71 Inga hjälpmedel Tentamen innehåller 7 uppgifter, vilka tillsammans kan ge maximalt 50 poäng. För betyg G (registreras som

Läs mer

PROCEDUELL TERRÄNG. Proceduella metoder för bilder (TNM084) Jimmy Liikala Institutionen för teknik och naturvetenskap

PROCEDUELL TERRÄNG. Proceduella metoder för bilder (TNM084) Jimmy Liikala Institutionen för teknik och naturvetenskap PROCEDUELL TERRÄNG Proceduella metoder för bilder (TNM084) Jimmy Liikala (jimli570@student.liu.se) Institutionen för teknik och naturvetenskap Sammanfattning Rapporten beskriver hur en proceduell terräng

Läs mer

MODELLERING AV EN HELIKOPTERS RÖRELSER I LUFTEN

MODELLERING AV EN HELIKOPTERS RÖRELSER I LUFTEN Linköpings universitet, Campus Norrköping Institutionen för teknik och naturvetenskap (ITN) TNM85 Modelleringsprojekt Vårterminen 28 Handledare: Anna Lombardi, annlo@itn.liu.se MODELLERING AV EN HELIKOPTERS

Läs mer

Veckoblad 1, Linjär algebra IT, VT2010

Veckoblad 1, Linjär algebra IT, VT2010 Veckoblad, Linjär algebra IT, VT Under den första veckan ska vi gå igenom (i alla fall stora delar av) kapitel som handlar om geometriska vektorer. De viktigaste teoretiska begreppen och resultaten i kapitlet

Läs mer

Spelutveckling 3d-grafik och modellering. Grunder för 3d-grafik Blender Animering

Spelutveckling 3d-grafik och modellering. Grunder för 3d-grafik Blender Animering Spelutveckling 3d-grafik och modellering Grunder för 3d-grafik Blender Animering Grunderna för 3d-grafik Positionering, transformationer Projektion, kameran Objekt i en 3d-värld Ljusmodeller för 3d-grafik

Läs mer

Simulering och rendering av gräs och vind i realtid

Simulering och rendering av gräs och vind i realtid Simulering och rendering av gräs och vind i realtid Linköpings universitet, ITN, TNM085, VT2010 Carl Claesson, 850508-1672, carcl268@student.liu.se Lucas Correia, 870325-7496, lucco863@student.liu.se David

Läs mer

MATEMATIK GU. LLMA60 MATEMATIK FÖR LÄRARE, GYMNASIET Analys, ht 2014. Block 5, översikt

MATEMATIK GU. LLMA60 MATEMATIK FÖR LÄRARE, GYMNASIET Analys, ht 2014. Block 5, översikt MATEMATIK GU H4 LLMA6 MATEMATIK FÖR LÄRARE, GYMNASIET Analys, ht 24 I block 5 ingår följande avsnitt i Stewart: Kapitel 2, utom avsnitt 2.4 och 2.6; kapitel 4. Block 5, översikt Första delen av block 5

Läs mer

Gel esimulering 22 mars 2008

Gel esimulering 22 mars 2008 Gelésimulering 22 mars 2008 2 Sammanfattning Vi har i kursen Modelleringsprojekt TNM085 valt att simulera ett geléobjekt i form av en kub. Denna består av masspunkter som är sammankopplade med tre olika

Läs mer

Vi har väl alla stått på en matta på golvet och sedan hastigt försökt förflytta

Vi har väl alla stått på en matta på golvet och sedan hastigt försökt förflytta Niclas Larson Myra på villovägar Att modellera praktiska sammanhang i termer av matematik och att kunna använda olika representationer och se samband mellan dessa är grundläggande förmågor som behövs vid

Läs mer

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Försättsblad till skriftlig tentamen vid Linköpings Universitet Försättsblad till skriftlig tentamen vid Linköpings Universitet (fylls i av ansvarig) Datum för tentamen Sal Tid Kurskod Provkod Kursnamn/benämning Institution Antal uppgifter i tentamen Antal sidor på

Läs mer

EXPERIMENTELLT PROBLEM 2 DUBBELBRYTNING HOS GLIMMER

EXPERIMENTELLT PROBLEM 2 DUBBELBRYTNING HOS GLIMMER EXPERIMENTELLT PROBLEM 2 DUBBELBRYTNING HOS GLIMMER I detta experiment ska du mäta graden av dubbelbrytning hos glimmer (en kristall som ofta används i polariserande optiska komponenter). UTRUSTNING Förutom

Läs mer

Robotarm och algebra

Robotarm och algebra Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson 2010-12-07 Robotarm och algebra I denna laboration skall du lära dig lite mer om möjlighetera att rita ut mer avancerade

Läs mer

Kursens olika delar. Föreläsning 0 (Självstudium): INTRODUKTION

Kursens olika delar. Föreläsning 0 (Självstudium): INTRODUKTION 1 Föreläsning 0 (Självstudium): INTRODUKTION Kursens olika delar Teorin Tentamen efter kursen och/eller KS1+KS2 Inlämningsuppgifter Lära känna kraven på redovisningar! Problemlösning Tentamen efter kursen

Läs mer

Inlämningsuppgift 4 NUM131

Inlämningsuppgift 4 NUM131 Inlämningsuppgift 4 NUM131 Modell Denna inlämningsuppgift går ut på att simulera ett modellflygplans rörelse i luften. Vi bortser ifrån rörelser i sidled och studerar enbart rörelsen i ett plan. De krafter

Läs mer

Definitioner: hastighet : v = dr dt = r fart : v = v

Definitioner: hastighet : v = dr dt = r fart : v = v KOMIHÅG 8: --------------------------------- Jämvikten kan rubbas: stjälpning, glidning Flexibla system- jämvikt bara i jämviktslägen ---------------------------------- Föreläsning 9: PARTIKELKINEMATIK

Läs mer

Procedurell grottgenerator och eld i GLSL. Marcus Widegren

Procedurell grottgenerator och eld i GLSL. Marcus Widegren Procedurell grottgenerator och eld i GLSL Marcus Widegren 14 januari 2012 Innehåll 2 Sammanfattning Jag har gjort en enkel procedurell grottgenerator i GLSL och C++. För belysning används en fackla, som

Läs mer

Tentamen TNM061, 3D-grafik och animering för MT2. Tisdag 3/ kl 8-12 TP51, TP52, TP54, TP56, TP41, TP43. Inga hjälpmedel

Tentamen TNM061, 3D-grafik och animering för MT2. Tisdag 3/ kl 8-12 TP51, TP52, TP54, TP56, TP41, TP43. Inga hjälpmedel Tentamen TNM061, 3D-grafik och animering för MT2 Tisdag 3/6 2014 kl 8-12 TP51, TP52, TP54, TP56, TP41, TP43 Inga hjälpmedel Tentamen innehåller 8 uppgifter, vilka tillsammans kan ge maximalt 50 poäng.

Läs mer

LÖSNINGAR TENTAMEN MEKANIK II 1FA102

LÖSNINGAR TENTAMEN MEKANIK II 1FA102 LÖSNINGAR TENTAMEN 16-10-20 MEKANIK II 1FA102 A1 Skeppet Vidfamne 1 har en mast som är 11,5 m hög. Seglet är i överkant fäst i en rå (en stång av trä, ungefär horisontell vid segling). För att kontrollera

Läs mer

Integraler av vektorfält Mats Persson

Integraler av vektorfält Mats Persson Föreläsning 1/8 Integraler av vektorfält Mats Persson 1 Linjeintegraler Exempel: En partikel rör sig längs en kurva r(τ) under inverkan av en kraft F(r). i vill då beräkna arbetet som kraften utövar på

Läs mer

Sidor i boken Figur 1: Sträckor

Sidor i boken Figur 1: Sträckor Sidor i boken 37-39 Vektorer Det vi ska studera här är bara en liten del av den teori du kommer att stifta bekantskap med i dina fortsatta studier i kursen Linjär algebra. Många av de objekt man arbetar

Läs mer

Två gränsfall en fallstudie

Två gränsfall en fallstudie 19 november 2014 FYTA11 Datoruppgift 6 Två gränsfall en fallstudie Handledare: Christian Bierlich Email: christian.bierlich@thep.lu.se Redovisning av övningsuppgifter före angiven deadline. 1 Introduktion

Läs mer

Modellering av Dynamiska system. - Uppgifter till övning 1 och 2 17 mars 2010

Modellering av Dynamiska system. - Uppgifter till övning 1 och 2 17 mars 2010 Modellering av Dynamiska system - Uppgifter till övning 1 och 2 17 mars 21 Innehållsförteckning 1. Repetition av Laplacetransformen... 3 2. Fysikalisk modellering... 4 2.1. Gruppdynamik en sciologisk modell...

Läs mer

Mer om geometriska transformationer

Mer om geometriska transformationer CTH/GU LABORATION 4 TMV141-1/13 Matematiska vetenskaper 1 Inledning Mer om geometriska transformationer Vi fortsätter med geometriska transformationer och ser på ortogonal (vinkelrät) projektion samt spegling.

Läs mer

Mer om analytisk geometri

Mer om analytisk geometri 1 Onsdag v 5 Mer om analytisk geometri Determinanter: Då man har en -matris kan man till den associera ett tal determinanten av som också skrivs Determinanter kommer att repeteras och studeras närmare

Läs mer

Tentamen Mekanik F del 2 (FFM520)

Tentamen Mekanik F del 2 (FFM520) Tentamen Mekanik F del 2 (FFM520) Tid och plats: Lördagen den 1 september 2012 klockan 08.30-12.30 i M. Hjälpmedel: Physics Handbook, Beta, Typgodkänd miniräknare samt en egenhändigt skriven A4 med valfritt

Läs mer

Målsättningar Proffesionell kunskap. Kunna hänvisa till lagar och definitioner. Tydlighet och enhetliga beteckningar.

Målsättningar Proffesionell kunskap. Kunna hänvisa till lagar och definitioner. Tydlighet och enhetliga beteckningar. 1 Föreläsning 1: INTRODUKTION Målsättningar Proffesionell kunskap. Kunna hänvisa till lagar och definitioner. Tydlighet och enhetliga beteckningar. Kursens olika delar Teorin Tentamen efter kursen och/eller

Läs mer

Linjär algebra på några minuter

Linjär algebra på några minuter Linjär algebra på några minuter Linjära ekvationssystem Ekvationssystem: { Löses på matrisform: ( ) ( ) I det här fallet finns en entydig lösning, vilket betyder att determinanten av koefficientmatrisen

Läs mer

1 Vektorer i koordinatsystem

1 Vektorer i koordinatsystem 1 Vektorer i koordinatsystem Ex 11 Givet ett koordinatsystem i R y a 4 b x Punkten A = (3, ) och ortsvektorn a = (3, ) och punkten B = (5, 1) och ortsvsektorn b = (5, 1) uttrycks på samma sätt, som en

Läs mer

Vågrörelselära och optik

Vågrörelselära och optik Vågrörelselära och optik Kapitel 14 Harmonisk oscillator 1 Vågrörelselära och optik 2 Vågrörelselära och optik Kurslitteratur: University Physics by Young & Friedman (14th edition) Harmonisk oscillator:

Läs mer

October 9, Innehållsregister

October 9, Innehållsregister October 9, 017 Innehållsregister 1 Vektorer 1 1.1 Geometrisk vektor............................... 1 1. Vektor och koordinatsystem.......................... 1 1.3 Skalär produkt (dot eller inner product)...................

Läs mer

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister Vektorgeometri för gymnasister Per-Anders Svensson http://homepage.lnu.se/staff/psvmsi/vektorgeometri/gymnasiet.html Fakulteten för teknik Linnéuniversitetet Areor, vektorprodukter, volymer och determinanter

Läs mer

1 Vektorer och tensorer

1 Vektorer och tensorer Föreläsning 1. 1 Vektorer och tensorer Vi kommer att använda två olika beteckningar för vektorer. Enligt det första systemet använder vi fet stil för en vektor i typsatt text och ett vektorstreck då vi

Läs mer

TNM022 Proceduella Bilder Rendering av proceduell päls i realtid

TNM022 Proceduella Bilder Rendering av proceduell päls i realtid TNM022 Proceduella Bilder Rendering av proceduell päls i realtid Jonas Nilsson jonni957@student.liu.se Sammanfattning Jag har undersökt och experimenterat med möjligheterna att rendera päls i realtid med

Läs mer

Planering mekanikavsnitt i fysik åk 9, VT03. och. kompletterande teorimateriel. Nikodemus Karlsson, Abrahamsbergsskolan

Planering mekanikavsnitt i fysik åk 9, VT03. och. kompletterande teorimateriel. Nikodemus Karlsson, Abrahamsbergsskolan Planering mekanikavsnitt i fysik åk 9, VT03 och kompletterande teorimateriel Nikodemus Karlsson, Abrahamsbergsskolan Planering mekanikavsnitt, VT 03 Antal lektioner: fem st. (9 jan, 16 jan, 3 jan, 6 feb,

Läs mer

Begrepp:: Kort om Kryssprodukt

Begrepp:: Kort om Kryssprodukt Begrepp:: Kort om Kryssprodukt Introduktion till kryssprodukten Namnet kryssprodukt kommer av att produktsymbolen skrivs som ett kryss. Kryssprodukten av två vektorer u och v skrivs då u v. input = vektorer

Läs mer

Omtentamen. TNM077 3D-datorgrafik och animering kl 8-12 Inga hjälpmedel. (samt även TNM008 3D-datorgrafik och VR)

Omtentamen. TNM077 3D-datorgrafik och animering kl 8-12 Inga hjälpmedel. (samt även TNM008 3D-datorgrafik och VR) Omtentamen TNM077 3D-datorgrafik och animering (samt även TNM008 3D-datorgrafik och VR) 2005-06-10 kl 8-12 Inga hjälpmedel Denna tentamen innehåller 7 uppgifter som tillsammans kan ge maximalt 40 poäng.

Läs mer

Självkoll: Ser du att de två uttrycken är ekvivalenta?

Självkoll: Ser du att de två uttrycken är ekvivalenta? ANTECKNINGAR TILL RÄKNEÖVNING 1 & - LINJÄR ALGEBRA För att verkligen kunna förstå och tillämpa kvantmekaniken så måste vi veta något om den matematik som ligger till grund för formuleringen av vågfunktionen

Läs mer

Vektoranalys I. Anders Karlsson. Institutionen för elektro- och informationsteknik

Vektoranalys I. Anders Karlsson. Institutionen för elektro- och informationsteknik Vektoranalys I Anders Karlsson Institutionen för elektro- och informationsteknik 2 september 2015 Översikt över de tre föreläsningarna 1. Grundläggande begrepp inom vektoranalysen, nablaoperatorn samt

Läs mer

Final i Wallenbergs Fysikpris

Final i Wallenbergs Fysikpris Final i Wallenbergs Fysikpris 26-27 mars 2010. Teoriprov Lösningsförslag 1. a) Vattens värmekapacitivitet: Isens värmekapacitivitet: Smältvärmet: Kylmaskinen drivs med spänningen och strömmen. Kylmaskinens

Läs mer

Mekanik SG1108 Mekanikprojekt Dubbelpendel

Mekanik SG1108 Mekanikprojekt Dubbelpendel Mekanik SG1108 Mekanikprojekt Dubbelpendel Studenter: Peyman Ahmadzade Alexander Edström Robert Hurra Sammy Mannaa Handledare: Göran Karlsson karlsson@mech.kth.se Innehåll Sammanfattning... 3 Inledning...

Läs mer

Byggnationen av Cheopspyramiden - ett visualiseringsprojekt. Mathias Bergqvist, Rikard Gehlin, Henrik Gunnarsson

Byggnationen av Cheopspyramiden - ett visualiseringsprojekt. Mathias Bergqvist, Rikard Gehlin, Henrik Gunnarsson Byggnationen av Cheopspyramiden - ett visualiseringsprojekt Mathias Bergqvist, Rikard Gehlin, Henrik Gunnarsson 25 April 2010 0.1 Förord Gruppen vill tacka Adam Grudzinski för att ha fått tillåtelse att

Läs mer

e 3 e 2 e 1 Kapitel 3 Vektorer i planet och i rummet precis ett sätt skrivas v = x 1 e 1 + x 2 e 2

e 3 e 2 e 1 Kapitel 3 Vektorer i planet och i rummet precis ett sätt skrivas v = x 1 e 1 + x 2 e 2 Kapitel 3 Vektorer i planet och i rummet B e 3 e 2 A e 1 C Figur 3.16 Vi har ritat de riktade sträckor som representerar e 1, e 2, e 3 och v och som har utgångspunkten A. Vidare har vi skuggat planet Π

Läs mer

KOKBOKEN 1. Håkan Strömberg KTH STH

KOKBOKEN 1. Håkan Strömberg KTH STH KOKBOKEN 1 Håkan Strömberg KTH STH Hösten 2006 Håkan Strömberg 2 KTH Syd Innehåll Olikheter.................................... 6................................. 6 Uppgift 2.................................

Läs mer

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister Vektorgeometri för gymnasister Per-Anders Svensson http://homepage.lnu.se/staff/psvmsi/vektorgeometri/gymnasiet.html Fakulteten för teknik Linnéuniversitetet Linjära avbildningar I Innehåll En liten tillbakablick:

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Laboration 1. Linjär Algebra och Avbildningar Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion I denna övning skall

Läs mer

Karta över Jorden - viktigt exempel. Sfär i (x, y, z) koordinater Funktionen som beskriver detta ser ut till att vara

Karta över Jorden - viktigt exempel. Sfär i (x, y, z) koordinater Funktionen som beskriver detta ser ut till att vara Föreläsning 1 Jag hettar Thomas Kragh och detta är kursen: Flervariabelanalys 1MA016/1MA183. E-post: thomas.kragh@math.uu.se Kursplan finns i studentportalens hemsida för denna kurs. Där är två spår: Spår

Läs mer

Vektorgeometri för gymnasister

Vektorgeometri för gymnasister Vektorgeometri för gymnasister Per-Anders Svensson http://homepage.lnu.se/staff/psvmsi/vektorgeometri/gymnasiet.html Fakulteten för teknik Linnéuniversitetet Skalärprodukt Innehåll Skalärprodukt - Inledning

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Laboration 3. Linjär algebra Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion 2 En Komet Kometer rör sig enligt ellipsformade

Läs mer

Newtons 3:e lag: De par av krafter som uppstår tillsammans är av samma typ, men verkar på olika föremål.

Newtons 3:e lag: De par av krafter som uppstår tillsammans är av samma typ, men verkar på olika föremål. 1 KOMIHÅG 8: --------------------------------- Hastighet: Cylinderkomponenter v = r e r + r" e " + z e z Naturliga komponenter v = ve t Acceleration: Cylinderkomponenter a = ( r " r# 2 )e r + ( r # + 2

Läs mer

Procedurell renderingsmotor i Javascript och HTML5

Procedurell renderingsmotor i Javascript och HTML5 Procedurell renderingsmotor i Javascript och HTML5 TNM084 Procedurella Metoder för bilder Gustav Strömberg - gusst250@student.liu.se http://gustavstromberg.se/sandbox/html5/shademe/texture_stop_final.html

Läs mer

Beräkningsuppgift I. Rörelseekvationer och kinematiska ekvationer

Beräkningsuppgift I. Rörelseekvationer och kinematiska ekvationer 1 Beräkningsuppgift I Vi skall studera ett flygplan som rör sig i xz planet, dvs vi har med de frihetsgrader som brukar kallas de longitudinella. Vi har ett koordinatsystem Oxyz fast i flygplanet och ett

Läs mer

Andra EP-laborationen

Andra EP-laborationen Andra EP-laborationen Christian von Schultz Magnus Goffeng 005 11 0 Sammanfattning I denna rapport undersöker vi perioden för en roterande skiva. Vi kommer fram till, både genom en kraftanalys och med

Läs mer

AB2.1: Grundläggande begrepp av vektoranalys

AB2.1: Grundläggande begrepp av vektoranalys AB2.1: Grundläggande begrepp av vektoranalys En vektor är en storhet som dels har icke-negativ storlek dels har riktning i rummet. Två vektorer a och b är lika, a = b, om de har samma storlek och samma

Läs mer

Integraler av vektorfalt. Exempel: En partikel ror sig langs en kurva r( ) under inverkan av en kraft F(r). Vi vill

Integraler av vektorfalt. Exempel: En partikel ror sig langs en kurva r( ) under inverkan av en kraft F(r). Vi vill Forelasning 6/9 ntegraler av vektorfalt Linjeintegraler Exempel: En partikel ror sig langs en kurva r( ) under inverkan av en kraft F(r). i vill da berakna arbetet som kraften utovar pa partikeln. Mellan

Läs mer

Tillåtna hjälpmedel: Physics Handbook, Beta, kalkylator i fickformat, samt en egenhändigt skriven A4- sida med valfritt innehåll.

Tillåtna hjälpmedel: Physics Handbook, Beta, kalkylator i fickformat, samt en egenhändigt skriven A4- sida med valfritt innehåll. Tentamen i Mekanik för F, del B Tisdagen 17 augusti 2004, 8.45-12.45, V-huset Examinator: Martin Cederwall Jour: Ling Bao, tel. 7723184 Tillåtna hjälpmedel: Physics Handbook, Beta, kalkylator i fickformat,

Läs mer

Repetion. Jonas Björnsson. 1. Lyft ut den/de intressanta kopp/kropparna från den verkliga världen

Repetion. Jonas Björnsson. 1. Lyft ut den/de intressanta kopp/kropparna från den verkliga världen Repetion Jonas Björnsson Sammanfattning Detta är en kort sammanfattning av kursen Mekanik. Friläggning Friläggning består kortfattat av följande moment 1. Lyft ut den/de intressanta kopp/kropparna från

Läs mer

SF1626 Flervariabelanalys

SF1626 Flervariabelanalys 1 / 28 SF1626 Flervariabelanalys Föreläsning 2 Hans Thunberg Institutionen för matematik, KTH VT 2018, Period 4 2 / 28 SF1626 Flervariabelanalys Dagens lektion: avsnitt 11.1 11.3 Funktioner från R till

Läs mer

Institutionen för matematik SF1626 Flervariabelanalys. Lösningsförslag till tentamen Måndagen den 5 juni 2017 DEL A

Institutionen för matematik SF1626 Flervariabelanalys. Lösningsförslag till tentamen Måndagen den 5 juni 2017 DEL A Institutionen för matematik SF66 Flervariabelanalys Lösningsförslag till tentamen Måndagen den 5 juni 7 DEL A. En kulles höjd ges av z 6,x,y där enheten är meter på alla tre koordinataxlar. (a) I vilken

Läs mer

Moment 4.2.1, 4.2.2, 4.2.3, Viktiga exempel 4.1, 4.3, 4.4, 4.5, 4.6, 4.13, 4.14 Övningsuppgifter 4.1 a-h, 4.2, 4.3, 4.4, 4.5, 4.

Moment 4.2.1, 4.2.2, 4.2.3, Viktiga exempel 4.1, 4.3, 4.4, 4.5, 4.6, 4.13, 4.14 Övningsuppgifter 4.1 a-h, 4.2, 4.3, 4.4, 4.5, 4. Moment 4.2.1, 4.2.2, 4.2., 4.2.4 Viktiga exempel 4.1, 4., 4.4, 4.5, 4.6, 4.1, 4.14 Övningsuppgifter 4.1 a-h, 4.2, 4., 4.4, 4.5, 4.7 Många av de objekt man arbetar med i matematiken och naturvetenskapen

Läs mer

Linjära avbildningar. Låt R n vara mängden av alla vektorer med n komponenter, d.v.s. x 1 x 2. x = R n = x n

Linjära avbildningar. Låt R n vara mängden av alla vektorer med n komponenter, d.v.s. x 1 x 2. x = R n = x n Linjära avbildningar Låt R n vara mängden av alla vektorer med n komponenter, d.v.s. R n = { x = x x. x n } x, x,..., x n R. Vi räknar med vektorer x, y likandant som i planet och i rymden. vektorsumma:

Läs mer

MMA127 Differential och integralkalkyl II

MMA127 Differential och integralkalkyl II Mälardalens högskola Akademin för utbildning, kultur och kommunikation MMA17 Differential och integralkalkyl II Tentamen Lösningsförslag 9..19 8. 11. Hjälpmedel: Endast skrivmaterial (gradskiva tillåten).

Läs mer

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP DIFFERENTIALEKVATIONER INLEDNING OCH GRUNDBEGREPP Differentialekvation (DE) är en ekvation som innehåller derivator av en eller flera okända funktioner ORDINÄRA DIFFERENTIAL EKVATIONER i) En differentialekvation

Läs mer

1 Ortogonalitet. 1.1 Skalär produkt. Man kan tala om vinkel mellan vektorer.

1 Ortogonalitet. 1.1 Skalär produkt. Man kan tala om vinkel mellan vektorer. Ortogonalitet Man kan tala om vinkel mellan vektorer.. Skalär produkt Vi definierar längden (eller normen) av en vektor som ett reellt tal 0 (Se boken avsnitt.). Vi definierar skalär produkt (Inner product),

Läs mer

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A

SF1626 Flervariabelanalys Lösningsförslag till tentamen DEL A SF626 Flervariabelanalys Lösningsförslag till tentamen 23-5-27 DEL A. Bestäm alla punkter på ytan z = x 2 + 4y 2 i vilka tangentplanet är parallellt med planet x + y + z =. 4 p) Lösning. Tangentplanet

Läs mer

Mekanik Föreläsning 8

Mekanik Föreläsning 8 Mekanik Föreläsning 8 CBGA02, FYGA03, FYGA07 Jens Fjelstad 2010 02 19 1 / 16 Repetition Polära koordinater (r, θ): ange punkter i R 2 m h a r: avståndet från origo (0, 0) θ: vinkeln mot positiva x axeln

Läs mer

Stelkroppsmekanik partiklar med fixa positioner relativt varandra

Stelkroppsmekanik partiklar med fixa positioner relativt varandra Stelkroppsmekanik partiklar med fixa positioner relativt varandra Rörelse relativt mass centrum Allmänt partikelsystem Stel kropp translation + rotation (cirkelrörelse) För att kunna beskriva och förstå

Läs mer

Föreläsning 5: Acceleration och tidsderivering (kap ) . Sambandet mellan olika punkters hastigheter i en stel kropp: v A

Föreläsning 5: Acceleration och tidsderivering (kap ) . Sambandet mellan olika punkters hastigheter i en stel kropp: v A 1 Föreläsning 5: Acceleration och tidsderivering (kap 212-215) Komihåg 4: Vinkelhastighetsvektorn " = # e z Skillnadsvektorn mellan två punkter i stel kropp kan bara vrida sig: r BA = " # r BA Sambandet

Läs mer

Approximation av funktioner

Approximation av funktioner Vetenskapliga beräkningar III 8 Kapitel Approximation av funktioner Vi skall nu övergå till att beskriva, hur man i praktiken numeriskt beräknar funktioner I allmänhet kan inte ens elementära funktioner

Läs mer

λ = T 2 g/(2π) 250/6 40 m

λ = T 2 g/(2π) 250/6 40 m Problem. Utbredning av vattenvågor är komplicerad. Vågorna är inte transversella, utan vattnet rör sig i cirklar eller ellipser. Våghastigheten beror bland annat på hur djupt vattnet är. I grunt vatten

Läs mer

Omtentamen TNM077, 3D datorgrafik och animering (samt även TNM008, 3D datorgrafik och VR)

Omtentamen TNM077, 3D datorgrafik och animering (samt även TNM008, 3D datorgrafik och VR) Omtentamen TNM077, 3D datorgrafik och animering (samt även TNM008, 3D datorgrafik och VR) Grupp: MT2 och NO2MT Datum: Fredagen den 23 april 2004 Tid: 14.00-18.00 Hjälpmedel: inga Ansvarig lärare: Stefan

Läs mer

Geometriska transformationer

Geometriska transformationer CTH/GU LABORATION 5 TMV6/MMGD - 7/8 Matematiska vetenskaper Inledning Geometriska transformationer Vi skall se på några geometriska transformationer; rotation, skalning, translation, spegling och projektion.

Läs mer

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28 TANA17 Matematiska beräkningar med MATLAB för M, DPU Fredrik Berntsson, Linköpings Universitet 9 november 2015 Sida 1 / 28 Föreläsning 3 Linjära ekvationssystem. Invers. Rotationsmatriser. Tillämpning:

Läs mer

Gemensamt projekt: Matematik, Beräkningsvetenskap, Elektromagnetism. Inledning. Fysikalisk bakgrund

Gemensamt projekt: Matematik, Beräkningsvetenskap, Elektromagnetism. Inledning. Fysikalisk bakgrund Gemensamt projekt: Matematik, Beräkningsvetenskap, Elektromagnetism En civilingenjör ska kunna idealisera ett givet verkligt problem, göra en adekvat fysikalisk modell och behandla modellen med matematiska

Läs mer

UPG5 och UPG8 Miniprojekt 1: 2D datorgrafik

UPG5 och UPG8 Miniprojekt 1: 2D datorgrafik UPG5 och UPG8 Miniprojekt 1: 2D datorgrafik I den här uppgiften studerar vi hur man kan använda sig av linjära avbildningar för att modifiera bilder i två dimensioner Mycket är repetition av vissa grundbegrepp

Läs mer

Lösningar Heureka 2 Kapitel 3 Rörelse i två dimensioner

Lösningar Heureka 2 Kapitel 3 Rörelse i två dimensioner Lösningar Heureka Kapitel 3 Rörelse i två dimensioner Andreas Josefsson Tullängsskolan Örebro Lösningar Fysik Heureka:Kapitel 3 3.1) Enligt figuren: nordliga förflyttningen: 100+00-100=00m Östliga förflyttningen:

Läs mer

z = 4 + 3t P R = (5 + 2t, 4 + 2t, 4 + 3t) (1, 1, 3) = (4 + 2t, 3 + 2t, 1 + 3t)

z = 4 + 3t P R = (5 + 2t, 4 + 2t, 4 + 3t) (1, 1, 3) = (4 + 2t, 3 + 2t, 1 + 3t) Tentamenskrivning MATA15 Algebra: delprov 2, 6hp Fredagen den 16 maj 2014 Matematikcentrum Matematik NF LÖSNINGSFÖRSLAG 1. Låt l vara linjen genom punkten (5, 4, 4) som är vinkelrät mot planet 2x+2y +3z

Läs mer

Mekanik III, 1FA103. 1juni2015. Lisa Freyhult 471 3297

Mekanik III, 1FA103. 1juni2015. Lisa Freyhult 471 3297 Mekanik III, 1FA103 1juni2015 Lisa Freyhult 471 3297 Instruktioner: Börja varje uppgift på nytt blad. Skriv kod på varje blad du lämnar in. Definiera införda beteckningar i text eller figur. Motivera uppställda

Läs mer

Transformationer i R 2 och R 3

Transformationer i R 2 och R 3 Linjär algebra, I / Matematiska vetenskaper Inledning Transformationer i R och R 3 Vi skall se på några geometriska transformationer; rotation, skalning, translation och projektion. Rotation och skalning

Läs mer

1 Den Speciella Relativitetsteorin

1 Den Speciella Relativitetsteorin 1 Den Speciella Relativitetsteorin På tidigare lektioner har vi studerat rotationer i två dimensioner samt hur vi kan beskriva föremål som roterar rent fysikaliskt. Att från detta gå över till den speciella

Läs mer

Explorativ övning Vektorer

Explorativ övning Vektorer Eplorativ övning Vektorer Syftet med denna övning är att ge grundläggande kunskaper om vektorräkning och dess användning i geometrin Liksom många matematiska begrepp kommer vektorbegreppet från fysiken

Läs mer

1. För vilka värden på konstanterna a och b är de tre vektorerna (a,b,b), (b,a,b) och (b,b,a) linjärt beroende.

1. För vilka värden på konstanterna a och b är de tre vektorerna (a,b,b), (b,a,b) och (b,b,a) linjärt beroende. Institutionen för matematik KTH MOELLTENTAMEN Tentamensskrivning, år månad dag, kl. x. (x + 5).. 5B33, Analytiska metoder och linjär algebra. Uppgifterna 5 svarar mot varsitt moment i den kontinuerliga

Läs mer

SF1624 Algebra och geometri

SF1624 Algebra och geometri Föreläsning 2 Institutionen för matematik KTH 2 november 2016 Skalärprodukt Dagens ämne: Skalärprodukt, kapitel 1.3-1.4 i boken Definition, skalärprodukt på två sätt Vinklar mellan vektorer Norm Plan och

Läs mer

Komihåg 5: ( ) + " # " # r BA Accelerationsanalys i planet: a A. = a B. + " # r BA

Komihåg 5: ( ) +  #  # r BA Accelerationsanalys i planet: a A. = a B. +  # r BA 1 Föreläsning 6: Relativ rörelse (kap 215 216) Komihåg 5: ( ) Accelerationssamb: a A = a B + " # r BA + " # " # r BA Accelerationsanalys i planet: a A = a B " d BA # 2 e r + d BA # e # Rullning på plan

Läs mer

Frågorna 1 till 6 ska svaras med ett kryss för varje korrekt påstående. Varje uppgift ger 1 poäng. Använd bifogat formulär för dessa 6 frågor.

Frågorna 1 till 6 ska svaras med ett kryss för varje korrekt påstående. Varje uppgift ger 1 poäng. Använd bifogat formulär för dessa 6 frågor. TM-Matematik Mikael Forsberg 74-4 Matematik med datalogi, mfl. Linjär algebra ma4a 6 Skrivtid: 9:-4:. Inga hjälpmedel. Lösningarna skall vara fullständiga och lätta att följa. Börja varje ny uppgift på

Läs mer

Tentamen Mekanik F del 2 (FFM521 och 520)

Tentamen Mekanik F del 2 (FFM521 och 520) Tentamen Mekanik F del 2 (FFM521 och 520) Tid och plats: Tisdagen den 27 augusti 2013 klockan 14.00-18.00. Hjälpmedel: Physics Handbook, Beta samt en egenhändigt handskriven A4 med valfritt innehåll (bägge

Läs mer

Lösningsförslag Inlämningsuppgift 1 elstatikens grunder

Lösningsförslag Inlämningsuppgift 1 elstatikens grunder Inst. för fysik och astronomi 017-11-08 1 Lösningsförslag Inlämningsuppgift 1 elstatikens grunder Elektromagnetism I, 5 hp, för ES och W (1FA514) höstterminen 017 (1.1) Laddningen q 1 7,0 10 6 C placeras

Läs mer

Ansiktsigenkänning med MATLAB

Ansiktsigenkänning med MATLAB Ansiktsigenkänning med MATLAB Avancerad bildbehandling Christoffer Dahl, Johannes Dahlgren, Semone Kallin Clarke, Michaela Ulvhammar 12/2/2012 Sammanfattning Uppgiften som gavs var att skapa ett system

Läs mer

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP

DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP Armin Halilovic: EXTRA ÖVNINGAR DIFFERENTIALEKVATIONER. INLEDNING OCH GRUNDBEGREPP Differentialekvation (DE) är en ekvation som innehåller derivator av en eller flera okända funktioner. ORDINÄRA DIFFERENTIALEKVATIONER

Läs mer

Om ellipsen och hyperbelns optiska egenskaper

Om ellipsen och hyperbelns optiska egenskaper Om ellipsen och hyperbelns optiska egenskaper Anders Källén MatematikCentrum LTH anderskallen@gmail.com Sammanfattning Ellipser och hyperbler är, liksom parabeln, s.k. kägelsnitt, dvs kurvor som uppkommer

Läs mer

SG1108 Tillämpad fysik, mekanik för ME1 (7,5 hp)

SG1108 Tillämpad fysik, mekanik för ME1 (7,5 hp) Läsåret 11/12 Utförliga lärandemål SG1108 Tillämpad fysik, mekanik för ME1 (7,5 hp) Richard Hsieh Huvudsakligt innehåll: Vektoralgebra och dimensionsbetraktelser. Kraft och kraftmoment. Kraftsystem; kraftpar,

Läs mer

Lennart Carleson. KTH och Uppsala universitet

Lennart Carleson. KTH och Uppsala universitet 46 Om +x Lennart Carleson KTH och Uppsala universitet Vi börjar med att försöka uppskatta ovanstående integral, som vi kallar I, numeriskt. Vi delar in intervallet (, ) i n lika delar med delningspunkterna

Läs mer

" e n Föreläsning 3: Typiska partikelrörelser och accelerationsriktningar

 e n Föreläsning 3: Typiska partikelrörelser och accelerationsriktningar KOMIHÅG 2: 1 Cylinderkomponenter: Hastighet v = r e r + r" e " + z e z Acceleration: a = ( r " r# 2 )e r + ( r # + 2 r # )e # + z e z Naturliga komponenter: v = ve t a = v e t + v 2 " e n ------------------------------------

Läs mer

Laboration 1 Mekanik baskurs

Laboration 1 Mekanik baskurs Laboration 1 Mekanik baskurs Utförs av: Henrik Bergman Mubarak Ali Uppsala 2015 01 19 Introduktion Gravitationen är en självklarhet i vår vardag, de är den som håller oss kvar på jorden. Gravitationen

Läs mer

kan vi uttrycka med a, b och c. Avsnitt 2, Vektorer SA + AB = SB AB = SB SA = b a, Vi ritar först en figur av hur pyramiden måste se ut.

kan vi uttrycka med a, b och c. Avsnitt 2, Vektorer SA + AB = SB AB = SB SA = b a, Vi ritar först en figur av hur pyramiden måste se ut. vsnitt 2, Vektorer kan vi uttrycka med a, b och c. W109 är basytan (en kvadrat) i en regelbunden fyrsidig pyramid med spetsen. Låt = a, = b och = c. eräkna. Vi ritar först en figur av hur pyramiden måste

Läs mer

Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem.

Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem. Vectorer, spannet av vektorer, lösningsmängd av ett ekvationssystem. Begrepp som diskuteras i det kapitlet. Vektorer, addition och multiplikation med skalärer. Geometrisk tolkning. Linjär kombination av

Läs mer

Mekanik FK2002m. Vektorer

Mekanik FK2002m. Vektorer Mekanik FK2002m Föreläsning 2 Vektorer 2013-09-02 Sara Strandberg SARA STRANDBERG P. 1 FÖRELÄSNING 2 Introduktion Förra gången pratade vi om rörelse i en dimension. När vi går till flera dimensioner behöver

Läs mer

= 0. Båda skärningsvinklarna är således π/2 (ortogonala riktningsvektorer).

= 0. Båda skärningsvinklarna är således π/2 (ortogonala riktningsvektorer). Institutionen för Matematik, KTH Torbjörn Kolsrud SF163, ifferential- och integralkalkyl II, del 2, flervariabel, för F1. Tentamen torsdag 19 augusti 21, 14. - 19. Inga hjälpmedel är tillåtna. Svar och

Läs mer

Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik

Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik Fredrik Berntsson (fredrik.berntsson@liu.se) 5 oktober 2016 Frame 1 / 23 Bakgrund och Syfte Inom kursen Fysik3 finns material som

Läs mer

SF1624 Algebra och geometri Lösningsförsag till modelltentamen

SF1624 Algebra och geometri Lösningsförsag till modelltentamen SF1624 Algebra och geometri Lösningsförsag till modelltentamen DEL A (1) a) Definiera begreppen rektangulär form och polär form för komplexa tal och ange sambandet mellan dem. (2) b) Ange rötterna till

Läs mer