Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Funktioner och vektorer:
- function [ya,yb1,yb2,yc1,yc2] = main_function(scalar_x,vector_x,matrix_x, square_matrix_x,xx)
- ya=function_a(scalar_x);
- yb1=function_b1(vector_x);
- yb2=function_b2(vector_x);
- yc1=function_c1(matrix_x);
- yc2=function_c2(square_matrix_x);
- end
- function y=function_a(x)
- %%% Skriv här %%%
- y = x^2
- %%%%%%%%%%%
- end
- function y=function_b1(x)
- %%% Skriv här %%%
- y = x.*x
- %%%%%%%%%%%
- end
- function y=function_b2(x)
- %%% Skriv här %%%
- y = dot(x,x)
- %%%%%%%%%%%
- end
- function y=function_c1(x)
- %%% Skriv här %%%
- y = x.^2
- %%%%%%%%%%%
- end
- function y=function_c2(x)
- %%% Skriv här %%%
- y = x*x
- %%%%%%%%%%%
- end
- Plotta grafer och asymptoter:
- dx=0.1
- % Skapa vektorn x, som går från -20 till 20, i steg om dx
- %%% skriv nedan %%%
- x = [-20:dx:20]
- %%%%%%
- % Skapa vektorn y enligt funktionen f i tentauppgiften
- %%% skriv nedan %%
- num = (x-2)
- y = 1 + x + 4./num.^2
- %%%%%%
- % Använd x och y för att plotta funktionen f(x) i intervallet (-20,20)
- plot(x,y)
- % Använd axis-kommandot för att avgränsa plotten till (-20,20) för x och (-10,20) för y
- axis([-20 20 -10 20])
- % Använd x och en ny variabel, ya1, för att plotta den sneda asymptoten
- % Skapa ya1
- %%% skriv nedan %%%
- ya1= 1 + x
- %%%%%%
- % Plotta asymptoten
- hold on
- plot(x,ya1)
- % Skapa två nya variabler xa2 och ya2 för att plotta den lodräta asymptoten (notera att vi inte kan använda den gamla x vektorn för att plotta linjen "x=2")
- %%% skriv nedan %%%
- xa2 = [2,2];
- ya2 = [-20 20];
- %%%%%%
- plot(xa2,ya2)
- Derivera numeriskt:
- function [a,b] = main_function()
- % En trigonometrisk funktion f
- function [ y ] = f( x )
- y=1+sin(x)+0.5*cos(4*x);
- end
- % derivatan till funktionen f
- function [ y ] = fprim( x )
- y=cos(x)-2*sin(4*x);
- end
- x=-10:0.1:10;
- % Låt y vara f(x) genom att anropa funktionen ovan
- y=f(x);
- % Låt yp vara f'(x) genom att anropa den andra funktionen ovan
- yp=fprim(x);
- %Sätt ett delta x för den numeriska derivatan
- dx=0.001
- % Beräkna den numeriska derivatan till f genom upprepade anrop av f (inte fprim). Spara resultatet i vektorn ypApprox
- %%% skriv nedan %%%
- ypApprox = (f(x+dx)-f(x))./dx
- %%%%%%
- % Plotta yp och ypApprox och se hur väl approximationen överensstämmer
- plot(x,yp)
- hold on
- plot(x,ypApprox,'x')
- axis([-10 10 -5 5])
- a=yp;
- b=ypApprox;
- end
- Plotta många lösningar i samma graf:
- function [res_1,res_2] = main_function()
- % skapa en local function som beräknar lösningen q(t) (given i svaret till uppgift 6) som en funktion av t,A,B
- %%% skriv nedan
- function y = q(t, A,B)
- y = exp(-t).*((A * cos(t))+(B*sin(t)))+cos(t)+2*sin(t)
- end
- %%%%%%
- t=0:0.1:10;
- % vi skapar en tidsvektor mellan 0 och 10
- % plotta lösningarna för alla kombinationer av A och B ( A = -4, -3, -2, -1, 0, 1, 2, 3, 4 och B = -4, -3, -2, -1, 0, 1, 2, 3, 4)
- res_2 = 0;
- for A = -4:4
- for B = -4:4
- laddning = q(t,A,B)
- plot(t,laddning)
- hold on
- res_2 = res_2 + laddning;
- axis([0 10 -5 10])
- end
- end
- % beräkna dessutom summan av alla dessa lösningar och returnera i variabeln res_2
- % beräkna den speciella lösningen för A=0 och B=1 och returnera i variabeln res_1
- res_1 = q(t,0,1)
- % Varför ser plotten ut som den gör? Stämmer påståendet i lösningen till 6B?
- %%% skriv nedan %%%
- %SVAR: for loopen gör massa olika grafer med alla olika värden på A och B men när t börjar bli större(gå mot oändligheten)
- %så går alla grafer ihop
- %%%%%%
- end
- Taylorpolynom:
- % Använd följande tidssteg
- x=-10:0.1:10;
- % Taylorpolynomet skall approximera Sin(x), så den plottar vi
- plot(x,sin(x))
- axis([-10 10 -2 2])
- hold on
- % Beräkna Taylorpolynomet och spara det i vektorn Tsum (som vi först sätter till en 0-vektor)
- Tsum=zeros(size(x));
- %%% skriv nedan %%%
- Tsum = x - (x.^3)/factorial(3) + (x.^5)/factorial(5) - (x.^7)/factorial(7) + (x.^9)/factorial(9) - (x.^11)/factorial(11) + (x.^13)/factorial(13)
- %%%%%%
- %Plotta Tsum och se att det stämmer väl nära 0 men sedan avviker strax utanför x=+/-5
- plot(x,Tsum, 'X')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement