I studio 1 beräknade vi derivatan numeriskt för olika funktioner . Men trots att vi använde samma formel,
Det går att göra detta mycket smidigare genom att använda s.k. funktionsfiler. En funktionsfil är som en fabrik, den tar in en råvara, t.ex. talet , och returnerar en färdig produkt, t.ex. talet . Vi illustrerar m.h.a.
function y = fkn(x) y=x^2+1;Denna funktion heter fkn och tar in talet och ger ut (returnerar) talet . Observera ordet function som indikerar att denna m-fil är en funktionsfil. Spara denna fil under namnet fkn.m. Vi kan nu anropa denna funktion från Matlabprompten eller innifrån en vanlig skriptfil genom att skriva t.ex.
>> fkn(1.0)vilket ger resultatet . Detta är ju rimligt eftersom vi ger funktionen värdet .
Antag nu att vill beräkna derivatan av i punkten och med . Vi kan göra detta genom att anropa funktionen fkn två gånger enligt nedan
>> h=0.001; >> x=2.0; >> y=(fkn(x+h)-fkn(x))/hObservera likheten med formeln . Om vi sedan vill räkna ut derivatan av en annan funktion i är det nu bara att ändra variabeln y i filen fkn.m.
Övning: Skriv en funktionsfil för funktionen och räkna ut derivatan i punkterna .
Övning: Räkna ut derivatan för funktionen i förra övningen i jämnt fördelade punkter i intervallet och rita derivatan.
Tips: använd dig av funktionsfilen från övningen innan och en for-loop, enligt
h=0.001; x=0:0.01:1; % x-values y=x; % init vector y to store results for i = 1:length(x) % loop through x-vector y(i)= % write derivative calculation here end plot(x,y)