1. Resultat Funktionsklasser Funktionsklass Dataset Potensfunktion plus potensfunktion Dataset 1 Potensfunktion Dataset 2 Exponentiell funktion Dataset 3 Potensfunktion plus konstant Dataset 4 Potensfunktion av tre variabler Dataset 5 Konstanter Funktion/konstant Potensfunktion plus potensfunktion värde 𝑦=𝑞*𝑥 P 0.98 q 0.95 m -1 n 1 Potensfunktion 𝑛 𝑦=𝑘*𝑥 k 7.25 n 4 Exponentiell funktion y = A*exp(k*x) A 8.80 k -3 Potensfunktion plus konstant 𝑦=𝑘*𝑥 a 3.20 n 1.5 𝑛 𝑚 +𝑏 +𝑞*𝑥 𝑛 b 66 Potensfunktion av tre variabler y= 𝑘 * 𝑎 k 2.62 a 3 b -2 y -0.5 α *𝑏 β +𝑐 γ Figurer (Funktionen visas som svart streck, mina dataset punkter visas som röda cirklar) Figur 1 𝑠𝑎𝑚𝑚𝑎𝑛𝑠𝑎𝑡𝑡 𝑓𝑢𝑛𝑘𝑡𝑖𝑜𝑛 𝑓𝑟å𝑛 𝑑𝑎𝑡𝑎𝑠𝑒𝑡 1, 𝑎𝑛𝑝𝑎𝑠𝑠𝑎𝑑 𝑡𝑖𝑙𝑙 𝑦 = 𝑞 * 𝑥 𝑚 +𝑞*𝑥 𝑛 Figur 2 𝑃𝑜𝑡𝑒𝑛𝑠𝑓𝑢𝑛𝑘𝑡𝑖𝑜𝑛 𝑓𝑟å𝑛 𝑑𝑎𝑡𝑎𝑠𝑒𝑡 2, 𝑎𝑛𝑝𝑎𝑠𝑠𝑎𝑑 𝑡𝑖𝑙𝑙 𝑦 = 𝑘 * 𝑥 Figur 3 𝑛 𝑒𝑥𝑝𝑜𝑛𝑒𝑛𝑡𝑖𝑎𝑙𝑓𝑢𝑛𝑘𝑡𝑖𝑜𝑛 𝑓𝑟å𝑛 𝑑𝑎𝑡𝑎𝑠𝑒𝑡 3, 𝑎𝑛𝑝𝑎𝑠𝑠𝑎𝑑 𝑡𝑖𝑙𝑙 𝑦 = 𝐴 * 𝑒𝑥𝑝(𝑘 * 𝑥) Figur 4 𝑃𝑜𝑡𝑒𝑛𝑠𝑓𝑢𝑛𝑘𝑡𝑖𝑜𝑛 𝑝𝑙𝑢𝑠 𝑘𝑜𝑛𝑠𝑡𝑎𝑛𝑡 𝑓𝑟å𝑛 𝑑𝑎𝑡𝑎𝑠𝑒𝑡 4, 𝑎𝑛𝑝𝑎𝑠𝑠𝑎𝑑 𝑡𝑖𝑙𝑙 𝑦 = 𝑘 * 𝑥 𝑛 +𝑏 2. Beskrivning av din metod Val av databas Metoden nedanför presenterar data hämtad från dataset 2. Scriptet som hjälp för att lösa denna uppgift var Linjaranppasning.m Data och plottning 1. Först sparades datafilen i arbetsmappen för Matlab. Sedan används kommandot ● load('dataset2.mat') 2. sedan användes plot för att för att se hur figuren ser ut ● plot(x,y, ‘r--’) Figur 1: plottning av datapunkterna från dataset 2 Ansats Efter datan har plottats gjordes ansatsen att detta är en potensfunktion. Vid logaritmen av dessa värden borde resultera till en linjär ekvation. 3. plot (log(x), log(y)) Linjärisering 4. Eftersom värdet 0 inte kan logaritmeras tog dessa värden bort med hjälp av ● x (1)= [], y(1)= [] Figur 2: logaritmering av dataset 2 Passning för koefficienter 5. För att hitta exponenten till potenssambandet användes scriptet linjaranpassning.m. Man kan också direkt använda sig utav polyfit där vi har första grads polynom. Där skulle vi få k samt m värdet. Och det är just lutningen vi i detta fall vill få ut. ( I scriptet får vi även figur 3 samt värdet på K och M värdet som retur, och lutningen K blir våran exponent) ● Polyfit (x,y,1) Figur 3: linjär anpassning av dataset 2 Då har vi fått exponenten n= 4, 𝑦=𝑘*𝑥 4 För att få reda på K värdet behöver vi göra om ekvationen och resultatet blir 𝐾 = 𝑦/𝑥 4 På Matlab skrivs ekvationen in, då får vi ett K värde för varje y och x värde. Då vi har 9 st värden kommer vi få 9 st K värden. Ett medelvärde tas sedan av dessa värden som är sparade i namnet Klista 6. Mean (Klista) ● Då fås värdet 7.25 Nu har vi fått alla konstanter ● ● n=4 K= 7.25 7. För att kontrollera om räkningen är korrekt ersätter jag k och n med värdena jag mottagit och skapar en function_handle som jag sedan plottar in med hjälp av fplot. ● f=@(x) k.*x^n ● fplot(f,[min(x),max(x)], 'k--') 8. Sedan använder jag kommandot ● Hold on så att fplot grafen inte försvinner. Jag plottar nu in x och y ● Plot(x,y, ‘ro’) Figur 4: Plottning av function_handle samt plot(x,y) Eftersom linjen ligger på mina punkter är anpassningen korrekt.