-- ESERCIZIO 1 Use QQ[t, a,b]; C := Mat([[1, t, t, t, 0], [1, 2, t, 0, t], [1,-t,-1,-1, 0], [0, 1, 0, 0, t]]); C; A := Submat(C, [1,2,3,4], [1,2,3,4]); A; B := Submat(C, [1,2,3,4], [5]); B; -- prima colonna E1 := Identity(4); E1[2,1] := -1; E1[3,1] := -1; E1*C; -- seconda colonna E2 := Identity(4); Tmp := E2[4]; E2[4]:= E2[2]; E2[2]:= Tmp; E2*E1*C; E3 := Identity(4); E3[3,2] := 2t; E3[4,2] := t-2; E3*E2*E1*C; -- terza colonna --> considero i due casi: -- caso t = -1 C1 := Subst(E3*E2*E1*C, [[t, -1]]); C1; -- il sistema associato contiene la riga 0 = 2 -- ==> NESSUNA SOLUZIONE -- caso t != -1 E4 := Identity(4); E4[3,3] := 1/(-t-1); E4*E3*E2*E1*C; -- quarta colonna --> considero i due casi: -- caso t = 0 C0 := Subst(E4*E3*E2*E1*C, [[t, 0]]); C0; -- pongo w (variabile libera) = a: w = a, z = -a, x = 0, y = 0 -- quindi le INFINITE SOLUZIONI sono Sol := ColMat([0,0,-a,a]); -- verifico: AA := Subst(A, [[t,0]]); AA; BB := Subst(B, [[t,0]]); BB; AA * Sol = BB; -- True -- caso t != 0 E4*E3*E2*E1*C; E5 := Identity(4); E5[4,4]:=1/(-t); E5*E4*E3*E2*E1*C; -- [1, t, t, t, 0], -- [0, 1, 0, 0, t], -- [0, 0, 1, 1, -2t^2/(t + 1)], -- [0, 0, 0, 1, -t + 1] -- sostituzione all'indietro E6 := Identity(4); E6[3,4]:=-1; E6*E5*E4*E3*E2*E1*C; E7 := Identity(4); E7[1,2]:=-t; E7[1,3]:=-t; E7[1,4]:=-t; E7*E6*E5*E4*E3*E2*E1*C; -- [1, 0, 0, 0, (t^3 - t^2)/(t + 1)], -- [0, 1, 0, 0, t], -- [0, 0, 1, 0, (-t^2 - 1)/(t + 1)], -- [0, 0, 0, 1, -t + 1] -- UNICA SOLUZIONE Sol := Submat(E7*E6*E5*E4*E3*E2*E1*C, [1,2,3,4], [5]); Sol; -- verifico A*Sol = B; -- CONCLUSIONE: -- se t = -1 non esistono soluzioni; -- se t = 0 esistono infinite soluzioni { (0, 0, -a, a) | a in R } -- altrimenti esiste una soluzione -- ( (t^3-t^2)/(t+1), t, (-t^2-1)/(t+1), -t+1) ---------------------------------------------------------------------- -- ESERCIZIO 2 -- piano pi =(2s+t, s-3, 1+t) s,t in RR -- piano pi': y -x + z-1 = 0 -- (a) calcolo l'intersezione dei due piani: Use QQ[s,t, x,y,z]; (s-3) - (2s+t) + (1+t) -1; --> -s-3 = 0 quindi s = -3 [2(-3)+t, (-3)-3, 1+t]; --> equazione parametrica di r: (t - 6, -6, t + 1) -- verifico che r sia contenuto in pi': (-6) - (t-6) + (t+1) -1 = 0; --> True -- (b) Trovare il piano perpendicolare a r e passante per (1, 0, 3) P := [1,0,3]; -- vettore direzionale di r: Vr := [1,0,1]; -- piano perp a Vr passante per P ScalarProduct( (P-[x,y,z]), Vr); --> equazione cartesiana: -x - z + 4 = 0 -- verifico il passaggio per P -1 -3 +4; --> 0 verificato -- (c) La distanza di P da pi -- scrivo un'equazione cartesiana di pi -- 2s+t=x, s-3=y, 1+t=z --> s=y+3, t=z-1 2(y+3)+(z-1) -x; --> equazione cartesiana di pi: -x + 2y + z + 5 = 0 -- verifico: -(2s+t) + 2(s-3) + (t+1)+ 5 = 0; -- True -- calcolo la distanza usando la formula: -1 + 0 + 3 + 5; 1 + 4 + 1; --> la distanza di P da pi e' 7*sqrt(6)/6 -- (d) La distanza di P da r Q := [t - 6, -6, t + 1]; -- punto generico di r -- impongo (P-Q) perpendicolare a r ScalarProduct( (P-Q), Vr); --> -2t + 9 quindi il piede della perpendicolare da P a r e' Subst(Q, [[t, 9/2]]); --> [-3/2, -6, 11/2] -- la distanza e' la lunghezza di V := (P-Q) V := P - [-3/2, -6, 11/2]; V; -- verifico la perpendicolarita' ScalarProduct(V, Vr) = 0; --> True ScalarProduct(V,V); --> 97/2 97*2; -- la distanza di P da r e' sqrt(194)/2 ---------------------------------------------------------------------- -- ESERCIZIO 3 U := [1, -1, 2]; -- (a) -- la lunghezza di U e' sqrt(1+1+4) = sqrt(6) -- quindi un vettore parallelo a U e di lunghezza 5 e' 5*sqrt(6)*U/6 = -- (5*sqrt(6)/6, -5*sqrt(6)/6, 5*sqrt(6)/3) -- (b) -- un vettore ortogonale a U e' V := [2, 0, -1]; -- la lunghezza di V e' sqrt(4+1) = sqrt(5) -- quindi un vettore ortogonale a U e di lunghezza 5 e' 5*sqrt(5)*V/5 = -- (2*sqrt(5), 0, -sqrt(5)) -- (c) Trovare una base F=(U, U2, U3) di RR^3 tale che |U|<|U2| e |U|<|U3| -- considero i due vettori: U2 := [0,10,0]; U3 := [0,0,10]; -- hanno entrambi lunghezza 10, quindi maggiore di |U| MFE := Transposed(Mat([U, U2, U3])); MFE; -- [1, 0, 0], -- [-1, 10, 0], -- [2, 0, 10] --> e' una matrice (triangolare inferiore) con determinante 100 --> e' invertibile. Quindi F e' una base. ---------------------------------------------------------------------- -- ESERCIZIO 4 A := Mat([ [-1, 1, 3, 1], [0, -2, 1, 0], [0, 0, 1, -1], [0, 0, 0, -3]]); -- (a) A e' triangolare superiore quindi una decomposizione LU di A e' L := Identity(4); U := A; A = L*U; --> True -- (b) -- Il determinante di MFE = A e' -6 (prodotto degli elementi sulla diagonale) -- quindi F e' una base -- quindi MEF e' l'inversa di MFE. La calcolo: A; E0:=Identity(4); E0[1,1]:=-1; E0[2,2]:=-1/2; E0[4,4]:=-1/3; E0*A; -- [1, -1, -3, -1], -- [0, 1, -1/2, 0], -- [0, 0, 1, -1], -- [0, 0, 0, 1] E1:=Identity(4); E1[3,4]:=1; E1[1,4]:=1; E1*E0*A; -- [1, -1, -3, 0], -- [0, 1, -1/2, 0], -- [0, 0, 1, 0], -- [0, 0, 0, 1] E2:=Identity(4); E2[2,3]:=1/2; E2[1,3]:=3; E2*E1*E0*A; -- [1, -1, 0, 0], -- [0, 1, 0, 0], -- [0, 0, 1, 0], -- [0, 0, 0, 1] E3:=Identity(4); E3[1,2]:=1; E3*E2*E1*E0*A; --> I -- la matrice MEF e' MEF := E3*E2*E1*E0; MEF; -- [-1, -1/2, 7/2, -3/2], -- [0, -1/2, 1/2, -1/6], -- [0, 0, 1, -1/3], -- [0, 0, 0, -1/3] -- verifico A * MEF; --> I