Idé till specialarbete i matematik för gymnasister 
(En uppgift på kursen Matematik för lärare, 10 p, HT 1999, LU. Lärare: Bengt Gamstedt)
Författare och kontaktperson: Mikael Bonnier, E-post: mikaelb@df.lth.se, Webb: http://www.df.lth.se/~mikaelb/
Spline - en mjuk kurva genom punkter

Enligt en engelsk ordbok betyder ordet spline: räffla, spårning, ribba; i matematiken används ordet oftast för en polynomkurva som är anpassad att gå genom ett antal punkter på ett mjukt sätt. Spline-kurvan har både ett mjukt utseende och den ritas upp på ett mjukt sätt. 

Spline-kurvor används i t ex datorgrafik. T ex är datorernas och skrivarnas TrueType-typsnitt definierade med ett antal punkter genom vilka det ritas mjuka spline-kurvor. Det är därför som man kan visa typsnitten i valfri storlek, annars hade man behövt ha en bild för varje storlek på tecknet. Det hade tagit ett enormt minnesutrymme.

Ditt jobb är att skriva ett program (eventuellt med underprogram) för din grafräknare som ritar en spline-kurva. Användaren kan mata in punkter genom att först svara på en fråga om antal punkter och sen styra ett hårkors och trycka ENTER för varje punkt. Sedan beräknar programmet kurvans lutning för varje punkt. Därefter ritas spline-kurvan ut. Jag garanterar att det är spektakulärt att se. När kurvan är utritad kan du skriva programmet så att det frågar efter hur många linjestycken som varje kurvstycke skall bestå av, därefter ritas kurvan upp med det nya antalet linjestycken. Inmatning av 0 kan betyda att programmet avslutas.

Det kan vara lämpligt att lagra punkternas X och Y koordinater i listorna L� respektive L‚, och X och Y lutningarna kan lagras i Lƒ respektive L„. Har du gjort så kan du använda detta program för att rita ut lutningen vid varje punkt  (gäller grafräknaren TI-82):
:For(I,1,dim L�)
:Line(L�(I),L‚(I),L�(I)+.1Lƒ(I),L‚(I)+.1L„(I))
:End

Spline-kurvan är en funktion på så kallad parameterform som binder ihop punkterna:
.
Nu kan man bestämma hur  skall se ut mellan två punkter, man gör på samma sätt med . Det finns många typer av spline-funktioner men enklast blir det om man låter  vara ett tredjegrads polynom:
	, där .
Det gäller att kurvstyckena möts och att lutningarna är de samma som grannkurvstyckenas vid intervallets endpunkter. Man kan bestämma lutningarna genom att anpassa ett andragrads polynom (parabel) som går genom tre konsekutiva -par och ta mittpunktens derivata hos parabeln som lutningen som hör till en endpunkt i tredjegradspolynomet. Nu kan du skriva upp ekvationssystem mm. När du arbetar med detta har du stor nytta av ett datorprogram som klarar symbolisk algebra t ex Derive.

Redovisning
Skriv en rapport med en titelsida. På nästa blad har du en inledning där du bl a berättar om tänkbara tillämpningar av splines. Fortsätt med ett avsnitt kallat metod där du berättar om hur du närmade dig och löste problemet, gärna ett heuristiskt resonemang. Tag med ekvationerna du löste och berätta hur du löste dem. I avsnittet resultat skall du beskriva ditt programs användargränssnitt. Tag med skärmbilder. Du skall även ha en litteraturförteckning över den litteratur du använde, även eventuell e-brevväxling skall listas här. Kommenterade programlistningar skall ingå i ett appendix. Du skall även presentera ditt specialarbete inför klassen. Demonstrera programmet på en OH-grafräknare.

Litteraturförslag
Dewdney, A. K. (1993). The (New) Turing Omnibus. New York: Computer Science Press and W. H. Freeman and Company.
Texas Instruments. (1993). TI-82 Owner's Manual, Texas Instruments.