DesignMat Uge 1 E2009Preben Alsholm, 31/8 2009restart;if ssystem("hostname")=[0,"PC-PKA1"] then
libname:="C:/Documents and Settings/alsholm/Dokumenter/DMat/libDMat",libname
elif ssystem("hostname")=[0,"pc-pka"] then
libname:="F:/DMat/libDMat",libname
elif ssystem("hostname")=[0,"alsholm-PC"] then
libname:="F:/DMat/libDMat",libname
else print("Fremmed computer. Skriv selv libname.")
end if;with(DMat):with(plots):
with(LinearAlgebra):Taylorpolynomierf:=x->arctan(x)*ln(x)+cos(Pi*x);taylor(f(x),x=1,3);P2:=convert(%,polynom);Alternativt:mtaylor(f(x),x=1,3);plot([f(x),P2],x=0..2,caption=typeset("Funktionen f: ",eval(f)," og dens Taylorpolynomium af orden 2 ud fra 1"),legend=["f",typeset(P[2])],legendstyle=[location=right],thickness=2);Line\303\246re ligningssystemerKoefficientmatricenA:=RandomMatrix(3,4,generator=-2..2);H\303\270jresiden:b:=RandomVector(3,generator=-2..2);Ligningssystemet Ax = b skrevet ud:sys:=GenerateEquations(A,[x,y,z,w],b);for L in sys do L end do;Totalmatricen:T:=GenerateMatrix(sys,[x,y,z,w],augmented=true);Lettere:<A|b>;Gausselimination til echelonform:E:=GaussianElimination(T);Det tilsvarende ligningssystem:sys2:=GenerateEquations(E,[x,y,z,w]);for L in sys2 do L end do;Kan l\303\270ses nedefra og opefter:solve(sys2,{x,y,w});z er fri. NB: A og b er tilf\303\246ldigt valgte, s\303\245 m\303\245ske det er anderledes, n\303\245r det k\303\270res en anden gang!. Systemet kunne ogs\303\245 tilf\303\246ldigvis v\303\246re uden l\303\270sninger.Men LinearSolve klarer selv sagen:LinearSolve(A,b,free=t);ExpandVector(%);MatrixmultiplikationA:=RandomMatrix(3,2,generator=-4..4);Antal r\303\246kker og s\303\270jler:Dimensions(A);B:=RandomMatrix(2,4,generator=-4..4);Dimensions(B);A.B;Dimensions(%);MatrixProdukt(A,B);S\303\270jlerne i B:Column(B,1..4);Matricen AB kan ogs\303\245 f\303\245s s\303\245ledes: Gang A p\303\245 hver af s\303\270jlerne i B:Matrix(map(x->A.x,[Column(B,1..4)]));Invers MatrixA:=RandomMatrix(3,3,generator=-4..4);A^(-1);Kontrol:A.%;Algoritmen best\303\245r i at l\303\270se systemet AX = I.Totalmatricen for dette matrixligningssystem er:T:=<A|IdentityMatrix(3)>;ReducedRowEchelonForm(T);%[1..3,4..6];DeterminantA:=RandomMatrix(3,3,generator=-4..4);Determinant(A);Determinanten \303\246ndres ikke ved r\303\246kkeoperationer af formen LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2I1EhRictRiM2JkYrLUYjNictSSVtc3ViR0YkNiUtRiw2JVEiUkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYkLUYsNiVRImlGJ0Y5RjwvRj1RJ25vcm1hbEYnLyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSSNtb0dGJDYtUSM6PUYnRkQvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRk8vJSlzdHJldGNoeUdGTy8lKnN5bW1ldHJpY0dGTy8lKGxhcmdlb3BHRk8vJS5tb3ZhYmxlbGltaXRzR0ZPLyUnYWNjZW50R0ZPLyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGaG4tRiM2J0YzLUZKNi1RIitGJ0ZERk1GUEZSRlRGVkZYRlovRmduUSwwLjIyMjIyMjJlbUYnL0ZqbkZhby1GIzYmLUYsNiVRImtGJ0Y5RjwtRko2LVExJkludmlzaWJsZVRpbWVzO0YnRkRGTUZQRlJGVEZWRlhGWi9GZ25RJjAuMGVtRicvRmpuRlxwLUY0NiVGNi1GIzYkLUYsNiVRImpGJ0Y5RjxGREZGRkRGK0ZERitGREYrRkRGK0ZE, n\303\245r LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYmLUkjbWlHRiQ2JVEiaUYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1JI21vR0YkNi1RKyZOb3RFcXVhbDtGJy9GM1Enbm9ybWFsRicvJSZmZW5jZUdRJmZhbHNlRicvJSpzZXBhcmF0b3JHRj0vJSlzdHJldGNoeUdGPS8lKnN5bW1ldHJpY0dGPS8lKGxhcmdlb3BHRj0vJS5tb3ZhYmxlbGltaXRzR0Y9LyUnYWNjZW50R0Y9LyUnbHNwYWNlR1EsMC4yNzc3Nzc4ZW1GJy8lJ3JzcGFjZUdGTC1GLDYlUSJqRidGL0YyRjk=.Gauss(A,1);Determinant(%);Gauss(A,2);Determinanten af en trianhul\303\246r matrix er produktet af diagonalelementerne:Determinant(%);Udvikling i komplementer langs f\303\270rste r\303\246kke:Det(A,r\303\246kke(1));value(%);Egenv\303\246rdier og EgenvektorerTilf\303\246ldigt valgte matricer har "grimme" egenv\303\246rdier, derfor bruges her decimalbr\303\270ker:A:=RandomMatrix(3,3,generator=-2.0..2);Eigenvalues(A);simplify(%);Lambda,V:=Eigenvectors(A);Direkte kontrol af f\303\270rste egenv\303\246rdi og tilh\303\270rende egenvektor:A.Column(V,1)-Lambda[1]*Column(V,1);simplify(fnormal~(%));F\303\270lgende matrix skulle gerne v\303\246re diagonal:V^(-1).A.V;(simplify@fnormal)~(%);(simplify@fnormal)~ (DiagonalMatrix(Lambda));Komplekse talp:=RandomTools:-Generate(polynom(complex(integer(range=-4..4)),z,degree=10));L:=[fsolve(p=0,z,complex)];complexplot(L,style=point,symbolsize=20,symbol=solidcircle,caption="R\303\270dderne i polynomiet");p:=RandomTools:-Generate(polynom(integer(range=-4..4),z,degree=10));L:=[fsolve(p=0,z,complex)];complexplot(L,style=point,symbolsize=20,symbol=solidcircle,caption="R\303\270dderne i polynomiet");DifferentialligningerLine\303\246r, f\303\270rste ordenligning:=diff(x(t),t)+x(t)/t=sin(t);Fuldst\303\246ndig l\303\270sning:dsolve(ligning);Mellemregning:dsolve(ligning,useInt);evalindets(%,specfunc(anything,exp),value);L\303\270sning af begyndelsesv\303\246rdiproblem:dsolve({ligning,x(Pi/2)=a});X:=rhs(%):animate(plot,[X,t=0..3*Pi,-2..2,caption=typeset("L\303\270sning til ",ligning," med ",x(Pi/2)='Chop'(a,2), "\134n Baggrund svarer til ",x(Pi/2)=2/Pi)],a=-1..1,trace=25,background=2/Pi);Hop overEt autonomt system af 2 f\303\270rsteordens differentialligninger med de samme banekurver:sys:={diff(t(s),s)=t(s),diff(x(s),s)=-x(s)+t(s)*sin(t(s))};dsolve(sys);dsolve(sys union {t(0)=1,x(0)=a});Det ses, at den ikke-retlinede separatrix til saddelpunktet i (0,0) svarer til begyndelsesv\303\246rdierne: t(0)=1,x(0)=sin(1)-cos(1);DEtools[DEplot](sys,[t(s),x(s)],s=-3..3.5,t=0..10,x=-2..2,[seq([t(0)=1,x(0)=k/3],k=-5..5),[t(0)=1,x(0)=-cos(1)+sin(1)]],stepsize=.03);animate(DEtools[DEplot],[sys,[t(s),x(s)],s=-3..3.5,t=0..10,x=-2..2,[[t(0)=1,x(0)=a]],stepsize=.03,linecolor=blue,color=gray],a=-1..1,background=-cos(1)+sin(1),trace=9,frames=10);Line\303\246r, anden orden, homogenligning:=diff(x(t),t,t)+2*diff(x(t),t)+c*x(t)=0;Fuldst\303\246ndig l\303\270sning i to fundamentalt forskellige tilf\303\246lde:dsolve(ligning) assuming c<1;dsolve(ligning) assuming c>1;Specialtilf\303\246ldet: Dobbeltrod i karakterligningen:dsolve(eval(ligning,c=1));Begyndelsesv\303\246rdiproblem:res:=dsolve({ligning,x(0)=0,D(x)(0)=1});L\303\270sningen i specialtilf\303\246ldet:res1:=dsolve({eval(ligning,c=1),x(0)=0,D(x)(0)=1});X repr\303\246senterer alle tilf\303\246lde:X:=piecewise(c=1,rhs(res1),rhs(res));animate(plot,[X(c),t=0..7,-.1..0.7,caption=typeset("L\303\270sningen til ",'Chop'(ligning,3),"\134n med ",{x(0)=0,D(x)(0)=1}," er \134n",x(t)='Chop'(simplify(evalc(X)),3))],c=-.1..4);Line\303\246r, anden orden, inhomogenligning:=diff(x(t),t,t)+2*diff(x(t),t)+c*x(t)=cos(t);dsolve(ligning) assuming c<1;dsolve(ligning) assuming c>1;dsolve(eval(ligning,c=1));res:=dsolve({ligning,x(0)=0,D(x)(0)=1});res1:=dsolve({eval(ligning,c=1),x(0)=0,D(x)(0)=1});X:=piecewise(c=1,rhs(res1),rhs(res));animate(plot,[X(c),t=0..15,-1/2..1,caption=typeset("L\303\270sningen til ",'Chop'(ligning,3),"\134n med ",{x(0)=0,D(x)(0)=1}," er \134n",x(t)='Chop'(simplify(evalc(X)),3))],c=-.1..4);Line\303\246r uafh\303\246ngighedKender vi koordinaterne for vektorerne mht. en eller anden basis, kan line\303\246r uafh\303\246ngighed afg\303\270res alene ved regning p\303\245 koordinaterne.Vi tager et antal koordinatvektorer tilf\303\246ldigt, men s\303\270rger dog for, at der er en rimelig sandsynlighed for, at de er line\303\246rt afh\303\246ngige:N:=3: M:=4:
V:=seq(RandomVector(M,generator=-1..1),k=1..N);Appellerer direkte til definitionen af line\303\246r uafh\303\246ngighed, hvilket betyder, at vi betragter totalmatricen for det homogene system med koordinats\303\270jlerne som s\303\270jler i koefficientmatricen:U:=Matrix([V,< (0$M) >]);GaussianElimination(U);Vi kunne bruge Rank direkte i Maple (bem\303\246rk, at rangen af U er den samme som rangen af koefficientmatricen, da systemet er homogent):if Rank(U)<N then "Line\303\246rt afh\303\246ngige" else "Line\303\246rt uafh\303\246ngige" end if;Basis, BasisskifteKoordinatmatrixLad der v\303\246re givet de f\303\270rste 4 Chebyshev-polynomierT:=seq(simplify(ChebyshevT(k,x)),k=0..3);F\303\270lgende funktion leverer ved input af et polynomium i x dets koordinater i monomiebasenKm3:= px -> <seq(coeff(px,x,i),i=0..3)>;Koordinatvektorerne for de fire polynomier i monomiebasen m0, m1, m2, m3 erseq(Km3(T[k]),k=1..4);Koordinatmatricen for de f\303\270rste 4 Chebyshev-polynomier i monomiebasen m0, m1, m2, m3 er derformMc:=Matrix([%]);Vi ser, at mMc er regul\303\246r. Det betyder, at de f\303\270rste 4 Chebyshev-polynomier er line\303\246rt uafh\303\246ngige og dermed udg\303\270r en basis for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYyLUklbXN1YkdGJDYlLUkjbWlHRiQ2JVEiUEYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYkLUkjbW5HRiQ2JFEiM0YnL0Y2USdub3JtYWxGJ0Y+LyUvc3Vic2NyaXB0c2hpZnRHUSIwRictSShtZmVuY2VkR0YkNiQtRiM2JC1GLzYlUSJSRidGMkY1Rj5GPi1JI21vR0YkNi5RIixGJy8lMGZvbnRfc3R5bGVfbmFtZUdRJVRleHRGJ0Y+LyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0Y0LyUpc3RyZXRjaHlHRlQvJSpzeW1tZXRyaWNHRlQvJShsYXJnZW9wR0ZULyUubW92YWJsZWxpbWl0c0dGVC8lJ2FjY2VudEdGVC8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHUSwwLjMzMzMzMzNlbUYnLUZMNi5RIn5GJ0ZPRj5GUi9GVkZURldGWUZlbkZnbkZpbkZbby9GX29GXW8tRi82JlEkc29tRicvRjNGVEZPRj5GYW8tRi82JlEjdmlGJ0Zpb0ZPRj5GYW8tRi82JlEma3VubmVGJ0Zpb0ZPRj5GYW8tRi82JlElZ2l2ZUYnRmlvRk9GPkZhby1GLzYmUSduYXZuZXRGJ0Zpb0ZPRj5GYW8tRi82JlEiY0YnRmlvRk9GPkY+.Basisskifte 1Hvad er koordinaterne for polynomiet p:=3+x+x^2-5*x^3;i Chebyshev-basen c fundet ovenfor?T;Koordinaterne for p i monomiebasen erKm3(p);Basisskiftematricen fra Chebyshev-koordinater til monomiekoordinater fandt vi faktisk ovenfor. Den blev fornuftigvis kaldt mMc:mMc;Koordinaterne for p i c bliver dermedmMc^(-1).Km3(p);Kontrol:add(%[k]&*T[k],k=1..4);value(%);hvilket jo netop er polynomiet p.Basisskifte 2Lad vektorernea:=<1,2,3,4>,<7,8,9,10>,<0,1,0,1>,<-1,1,1,1>;v\303\246re givet. Koordinatmatricen for disse vektorer i den kanoniske basis ereMa:=Matrix([a]);Rank(eMa);Det f\303\270lger, at vektorerne a udg\303\270r en basis for LUklbXJvd0c2Iy9JK21vZHVsZW5hbWVHNiJJLFR5cGVzZXR0aW5nR0koX3N5c2xpYkdGJzYkLUklbXN1cEdGJDYlLUkjbWlHRiQ2JVEiUkYnLyUnaXRhbGljR1EldHJ1ZUYnLyUsbWF0aHZhcmlhbnRHUSdpdGFsaWNGJy1GIzYlLUkjbW5HRiQ2JFEiNEYnL0Y2USdub3JtYWxGJy1JI21vR0YkNi1RIn5GJ0Y+LyUmZmVuY2VHUSZmYWxzZUYnLyUqc2VwYXJhdG9yR0ZGLyUpc3RyZXRjaHlHRkYvJSpzeW1tZXRyaWNHRkYvJShsYXJnZW9wR0ZGLyUubW92YWJsZWxpbWl0c0dGRi8lJ2FjY2VudEdGRi8lJ2xzcGFjZUdRJjAuMGVtRicvJSdyc3BhY2VHRlVGPi8lMXN1cGVyc2NyaXB0c2hpZnRHUSIwRidGPg==.Basisskiftematricen fra a-koordinater til kanoniske koordinater er netop eMa.Hvad er koordinaterne for vektoren v:=<12,8,-3,2>;i a-basen?Koordinaterne for v i den kanonsike basis er jo s\303\245 at sige v selv.Koordinaterne for v i a bliver dermedeMa^(-1).v;Kontrol:add(%[k]&*a[k],k=1..4);value(%);hvilket jo netop er vektoren v.