INLÄM MNINGSUP PPGIFT 2 Linjär algebra och h analys Kurskodd: HF1006, HF1008 Skolår: 2014/15 armin@ @kth.se www.stth.kth.se/arm min Due datte: Datatekknik 12 decc 2014, 88:15-12:00 Elektrooteknik: 10 0 dec 2014, 10:15-15:00 Medicinsk teknik 10 dec 20114, 10:15--15:00 Individuuellt arbete.. Använd MATLAB M fför att lösa dina d uppgiftter. I nedansstående uppgifteer a, b, c occh d är de sista s fyra sifffrorna i dittt personnum mmer. Har ddu t ex pn. 751332 2348 så är a=2 , b=3, c=4 och d= =8 som du su ubstituerar i dina uppggifter och därefterr löser dem. 5 labbövvningar är schemalagd s da i kursens andra del ( dvs Analyss-delen). Första 3 labbövninggar är lärarlledda lektiooner i Matlaab. De sistaa två (av 5 i del 2) labb bövningarn na är avsedda för redovisning av inlämningsuppgift 2. REDOV VISNING. i) Underr kursens gåång gör du nedanståend n de uppgifterr 1-6, skriveer kommenttarer till din na lösningaar, sparar varje v uppgifft som separrat m-fil (script) och red dovisar undder sista två å (av totaalt fem) lab bbövningarr i Analys-ddelen. ii) Hinnner du inte redovisa din na (korrekta)) lösningar i tid måste du göra äveen uppgift 7. 7 I detta falll, när du gjort färdigt uppgifternna 1-7, bokaar du via em mail en tid fö för redovisning hos din klasslärare ( för Analy ys-delen). ( hjälp av a din laptoop) dina upp pgifter geno om att förklaara dina iii) Du redovisar (med L a sparas på llärarens US SBlösningaar och visa att dina Maatlab-koder ffungerar. Lösningarna minne. D Du behöverr inte lämnaa in någon ppappersversion av lösniingen. Uppgiftt 1. (SUBPL LOT) (Läs gäärna help, suubplot innan n du börjar med uppgifften.) 1 A) Teesta och förkklara hur needanståendee kommando on fungerar. clear clc %% SUB BPLOT figure(4) x=1:0.1:10; y1=3*x.^3-2*x.^2+2*x; subplot(2,2,1) plot(x,y1) title('y1=3*x.^3-2x.^2+2*x'); subplot(2,2,2) x=1:0.1:10; y2=sin((x.^2+1)./x); plot(x,y2,'r') title(' y2=sin((x.^2+1)./x)'); subplot(2,2,3) x=1:0.5:10; z1=cos((x.^2+1)./x); plot(x,z1,' g s -.') title(' z1=cos((x.^2+1)./x)'); subplot(2,2,4) x=-5:0.1:5; z=3*x.^2-5; plot(x,z) title('z=3*x.^2-5'); %% 1 B) Plotta grafer till y=3sin(x) +cos(10x) och y= 4sin(2x) i intervallet 0 ≤x≤ 2π så att de ligger separat i två koordinatsystem som ligger horisontellt bredvid varandra. Tips. Använd subplot(1,2,1) och subplot(1,2,2). Spara script som Uppgift1 Uppgift 2. Symbolisk matematik med Matlab . Beräkning av integraler derivator och gränsvärden Läs gärna help avsnitt om syms subs , ezplot , diff, int, double, limit börjar med uppgiften. innan du Testa följande exempel i Matlab och förklara med några ord varje kommando. %% Uppgift 2. clear clc %% syms var1 var2 deklarerar symboliska variabler i Matlab syms x f=(x^2-2*x)/(x^2-1) y5=subs(f,x,5) ezplot(f,[-15,15]) solve(f==0,x) %% DERIVATOR g=diff(f,x) h=diff(f,x,2) solve(g==0,x) %% INTEGRALER integral1=int(f) %obestämd integral ∫ fdx 5 I1=int(f,3,5) % integral ∫ f ( x )dx 3 I1b=double(I1) % numeriska värdet av I1 integral2=int(g) I2=int(sqrt(sin(x)+exp(x)),0,1) % integralen kan inte beräknas exakt, % (matlab upprepar uttrycket för integralen utan beräkning) % medan samma integral kan beräknas numerisk % med kommandot double I2num=double(I2) % eller med direkt numerisk beräkning I2num= double(int(sqrt(sin(x)+exp(x)),0,1)) %% GRÄNSVÄRDEN L1=limit(f,x,inf) L2=limit(f,x,-inf) L3=limit(f,x,1,'left') L4=limit(f,x,1,'right') L5=limit(f,x,-1,'left') L6=limit(f,x,-1,'right') Spara script som Uppgift2 Uppgift 3. Lös följande uppgift med hjälp av Matlab Betrakta funktionen f ( x ) = ( x − b)e − ( x − b ) 2 3.1 Plotta grafen till f(x) i intervallet b − 2 ≤ x ≤ b + 2 . 3.2 Beräkna arean av det område som definieras av b ≤ x ≤ b + 2 , 0 ≤ y ≤ f ( x) . 3.3 Beräkna volymen av den kropp som uppstår vid rotation av området b ≤ x ≤ b + 2 , 0 ≤ y ≤ f ( x) kring x-axeln b) kring y-axeln. 3.4 Beräkna längden av kurvan mellan punkterna A(b,f(b) och B(b+2,f(b+2)). Tips. Använd matlab-kommandon från upp2. Kolla motsvarande formler i stencilen Tillämpningar av integraler http://ingforum.haninge.kth.se/armin/ALLA_KURSER/KURSMATERIAL/MATTE1/ANALYS/TILLAMP_INT.pdf Spara script som Uppgift3 Uppgift 4. DIFFERENTIALEKVATIONER. Exakta lösningar till några typer av differentialekvationer med kommandot dsolve. Läs gärna hjälp-avsnitt om dsolve innan du börjar med uppgiften. Sintax: syms y(t) % deklarerar y(t) som symbolisk funktion av t dsolve(ekvation,villkor1,villkor2,villkor3,...) % löser ekvationen med givna villkor SKRIVSÄTT i Matlabs dsolve : FUNKTION OCH DERIVATOR: Glöm inte att deklarera syms y(t) Matematik y (t ) y ′(t ) y ′′(t ) Matlab y diff(y) diff(y,2) VILLKOR Matematik y (a ) = b y ′(a ) = b y ′′(a ) = b Matlab y(a)==b Två steg Steg1: Steg2: Två steg Steg1: Steg2: Dy=diff(y) Dy(a)==b D2y=diff(y,2) D2y(a)==b Testa följande exempel i Matlab. Exempel 1. Använd kommandot dsolve i Matlab för att lösa följande differentialekvation y ′(t ) + 10 y (t ) = e −10t , y(0)=1. Plotta lösningen. Lösning: Bas-syntax för dsolve i Matlab när vi löser en DE består av följande kommandon: Sintax: syms y(t) % deklarerar y(t) som symbolisk funktion av t dsolve(ekvation,villkor) % löser ekvationen med givna villkor Skrivsätt: Derivatan y ′(t ) skriver vi som diff(y). För att lösa vår ekvation y ′(t ) + 10 y (t ) = e −10t , y(0)=1 och plotta lösningen, använder vi följande script: %% Uppgift 4, exempel 1 clear clc syms y(t) % deklarera y(t) som symbolisk funktion ekv1=diff(y)+ 10*y == exp(-10*t) % ekvationen V1=y(0) == 1 % villkoret sol1=dsolve(ekv1, V1) % löser DE (lösningen kallas sol1) f1=simplify(sol1) % förenklar lösning och ändrar namn till f1 figure(1) % nästa graf kommer att plottas i figure(1) ezplot(f1,[-3,3]) % plottar lösningskurvan i intervallet [-3,3] Exempel 2. Använd kommandot dsolve i Matlab för att lösa följande differentialekvation y ′′(t ) + 5 y ′(t ) + 6 y (t ) = 10 * sin(2 * t ) , y(0)=1, y ′(0) = 2 . Plotta lösningen. Lösning: Anmärkning: vilkoret V2, y ′(0) = 1 definierar vi i två steg: Steg1: Dy=diff(y) Steg1: V2=Dy(0)==2 ( se matlab help om dsolve) %% Uppgift 4, exempel 2 clear syms y(t) % deklarera y(x) som symbolisk funktion ekv4=diff(y,2)+5*diff(y)+ 6*y == 10*sin(2*t) % ekvationen V1=y(0) == 1 % villkor 1: y(0)=1 Dy=diff(y) % mellansteg: Beteckna y' som Dy V2=Dy(0)==2 % villkor 2 y'(0)=2 sol1=dsolve(ekv4, V1,V2) % lösning figure(2) % nästa graf kommer att plottas i figure(2) ezplot(sol1,[0,10]) % plottar lösningskurvan Spara script som Uppgift4 Uppgift 5. Använd kommandot dsolve i Matlab för att lösa följande differentialekvationer (med givna villkor) . Plotta varje lösning (lösning k i figure(k)). 1. y ′(t ) − (1 + a + b) y (t ) = 0 , y (0) = 3 (a och b är parametrar från ditt personnummer) y (0) = 0 , y ′(0) = 1 2. y ′′(t ) − ( 2 + b) y ′(t ) + (1 + b) y (t ) = 2t + 3 , y (0) = 0 , y ′(0) = 1 3. y ′′(t ) + ( 4 + c ) y (t ) = 0 , Spara script som Uppgift5 Uppgift 6. ( Använd Matlab för att lösa följande uppgift.) Bestäm strömmen i(t) i nedanstående LCR-krets då u(t) =(10+a)cos(40t) V , L=1 H , R1=30 Ω , R2=40 Ω , C=0.001F , i ′(0) = 1 A /s i(0)=1 A, 6.1 (Papper och penna) Ställ upp en differentialekvation för strömmen i(t) . 6.2 Lös ekvationen m a p i(t) dvs beräkna strömmen i(t) (använd Matlab) . Tips: Använd kommandot dsolve. 6.3 Plotta lösningen med hjälp av kommandot ezplot Spara script som Uppgift6 Om du redovisar första 6 uppgifter under kursens gång behöver du INTE göra uppgift 7 ! Uppgift 7. ( Använd Matlab för att lösa följande uppgift.) Bestäm strömmen i(t) i nedanstående LCR-krets då u(t) =(10+b)exp(-10t) V , L=(2+b+c) H , R1=(3+b) Ω , i(0)=1 A. 7.1 (Papper och penna) Ställ upp en differential ekvation för strömmen i(t) 7.2 Lös ekvationen m a p i(t) dvs beräkna strömmen i(t) (använd Matlab) Tips: Använd kommandot dsolve. 7.3 Plotta lösningen. Spara script som Uppgift7 Lycka till!
© Copyright 2024