• No results found

Inlämningsuppgift 2, HF1006. (MATLAB)

N/A
N/A
Protected

Academic year: 2021

Share "Inlämningsuppgift 2, HF1006. (MATLAB)"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

Sida 1 av 6

INLÄMNINGSUPPGIFT 2 (MATLAB) Kurs: Linjär algebra och analys

Del2, analys Kurskod: HF1006 Skolår: 2020/21

Redovisas under en av de tre schemalaggda redovisningstillfällen i slutet av P2.

Individuellt arbete. Använd MATLAB för att lösa dina uppgifter. I nedanstående uppgifter a, b, c och d är de sista fyra siffrorna i ditt personnummer. Har du t ex pn.

751332 2348 så är a=2 , b=3, c=4 och d=8 som du substituerar i dina uppgifter och därefter löser dem.

Två schemalaggda labbövningar ( i P2) är lärarledda lektioner i Matlab.

REDOVISNING.

i) Under kursens gång gör du nedanstående uppgifter 1-6, skriver kommentarer till dina lösningar, sparar varje uppgift som separat m-fil (script) och slutligen redovisar

uppgifterna under en av de tre schemalaggda redovisningstillfällen i P2.

ii) Hinner du inte redovisa dina (korrekta) lösningar i tid måste du göra även uppgift 7.

När du gjort färdigt uppgifterna 1-7 bokar du via e-mail en tid för redovisning hos din klasslärare ( för Analys-delen).

iii) Du redovisar (med hjälp av din laptop) dina uppgifter genom att förklara dina lösningar och visa att dina Matlab-koder fungerar.

iv) Efter godkänd redovisning laddar du upp på Canvas dina lösningar dvs m-filerna samlade i en mapp.

Du behöver inte lämna in någon pappersversion av lösningen.

Uppgift 1. (SUBPLOT)

(Läs gärna help, subplot innan du börjar med uppgiften.

Läs stencilen

http://ingforum.haninge.kth.se/armin/ALLA_KURSER/matlab/PLOT2D.pdf 1 A) Testa och förklara hur nedanstående kommandon fungerar.

clear clc

%% Uppgift 1.

% SUBPLOT figure(4) x=1:0.1:10;

(2)

Sida 2 av 6 y1=5*x.^3-3*x.^2+2*x+1.2;

subplot(2,2,1) plot(x,y1)

title('y1=5*x.^3-3x.^2+2*x+1.2');

subplot(2,2,2) x=1:0.1:10;

y2=sin((5*x.^2-2*x)./x);

plot(x,y2,'r')

title(' y2=sin((2*x.^2-2*x)./x)');

subplot(2,2,3) x=1:0.5:10;

z1=cos((3*x.^2+1)./x);

plot(x,z1,' g s -.')

title(' z1=cos((3*x.^2+1)./x)');

subplot(2,2,4) x=-5:0.1:5;

z=2*x.^2-1;

plot(x,z)

title('z=2*x.^2-1');

%%

1 B) Plotta grafer till y=2sin(x) +3cos(10x) och y= 3sin(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 innan du börjar med uppgiften.

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+1)/x y5=subs(f,x,5) ezplot(f,[- 5, 5]) solve(f==0,x)

%% DERIVATOR g1=diff(f,x) g2=diff(f,x,2) g3=diff(f,x,3) solve(g1==2,x)

%% INTEGRALER

(3)

Sida 3 av 6 integral1=int(f) %obestämd integral

fdx

I1=int(f,3,5) % integral

5

3

) ( dxx f

I1b=double(I1) % numeriska värdet av I1 g= sqrt(sin(x)+exp(x))

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,0,'left') L4=limit(f,x,0,'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

)2

1

)

(

( x = e

xb

f

3.1 Plotta grafen till f(x) i intervallet b−4≤xb+2.

3.2 Beräkna (numeriskt) arean av det område som definieras av b−4≤xb+2 , 0≤ y ≤ f(x).

3.3 Beräkna (numeriskt) volymen av den kropp som uppstår vid rotation av området b−4≤xb+2 , 0≤ y ≤ f(x)

a) kring x-axeln b) kring y-axeln.

3.4 Beräkna (numeriskt) längden av den del av kurvan som definieras av

)2

1

)

(

( x = e

xb

f

, b−4≤xb+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

(4)

Sida 4 av 6

SKRIVSÄTT i Matlabs dsolve : FUNKTION OCH DERIVATOR:

Glöm inte att deklarera syms y(t)

Matematik Matlab

)

y(t y

) (t

y′ diff(y)

) (t

y ′′ diff(y,2)

VILLKOR

Matematik Matlab

b a

y( )= y(a)==b

b a

y′ )( = Två steg

Steg1: Dy=diff(y) Steg2: Dy(a)==b b

a

y′′ )( = Två steg

Steg1: D2y=diff(y,2) Steg2: 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 e t

t y t

y′( )+10 ( )= 10 , 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)+10y(t)=e10t, y(0)=1 och plotta lösningen, använder vi följande script:

%% Uppgift 4, exempel 1 clear

clcsyms 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,[-1,2]) % plottar lösningskurvan i intervallet [-1,2]

(5)

Sida 5 av 6

Exempel 2. Använd kommandot dsolve i Matlab för att lösa följande differentialekvation )

* 2 sin(

* 10 ) ( 3 ) ( 4 )

(t y t y t t

y′′ + ′ + = , 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)

Steg2: 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)+4*diff(y)+ 3*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 y t) ( ) 0= , y( =0) 2 (a och b är parametrar från ditt personnummer)

2. y t′′( ) (3− +b y t) ( ) (2′ + +b y t) ( ) 2 3= t+ , y( =0) 0,y′( =0) 2

3. y′′(t)+(1+c)y(t)=0, y( =0) 0, y′( =0) 3 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) =(15+a)cos(10t) V , L=1 H , R1=20 Ω, R2=50 Ω, C=0.001F , i(0)=12 A, 1

) 0

′i( = A /s

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 !

(6)

Sida 6 av 6

Uppgift 7. ( Använd Matlab för att lösa följande uppgift.) Bestäm strömmen i(t) i nedanstående LR-krets då

u(t) =(2+a)exp(-5t) V , L=(4+b+c) H , R1=(1+b+c), i(0)=3A.

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!

References

Related documents

I de diskussioner och material som kom fram från denna grupp fanns tankar om konsumtion, ekologi, vegetarianism, mångkultur och funderingar kring vad vi egentligen har på vår

Emmaboda Kommun verkar för att det finns tillgång till simundervisning för alla åldrar i kommunen.. För de grupper av kommunmedlemmar som av olika anledningar inte har eller

Lösningar lämnas per e-mail till klamra@particle.kth.se eller skriftligt i Wlodzimierz Klamras postfack vid AlbaNovas expedition senast fredagen den 24

Anmälan via Kalendariet på hushallningssallskapet.se/vastra eller direkt till Bengt Andréson, 070-829 09 31 eller bengt.andreson@hushallningssallskapet.se senast den 3 december....

Hushållningssällskapet och HIR Skåne samverkar med Arbetsförmedlingen med att hjälpa nyanlända till arbete inom de gröna näringarna, under perioden juni 2016 till juni

Anbudsgivaren/Företaget kan själv, via ”Mina Sidor” (kräver e-legitimation), ta fram en digital SKV 4820 där skuldbelopp avseende skatter och avgifter hos Kronofogden

☐ Leverantören, som är etablerad i annat land än Sverige, och där intyg enligt ii inte utfärdas, försäkrar på heder och samvete att allvarliga ekonomiska svårigheter

Dock kan ett problem vara att resultatet inte är representativt för hela populationen 24 , något som jag i denna uppsats anser inte har någon betydelse eftersom syftet är att få