Nesta secção4.3, debruçamo-nos sobre enquanto espaço vectorial real. Repare que as colunas de formam uma base de , pelo que . Mostre-se que de facto geram . Se se denotar por a coluna de , é imediato verificar que . Por outro lado, implica , e portanto . O conjunto é chamado base canónica de .
Considere, a título de exemplo, o conjunto
Octave
Vamos agora usar o octave para esboçar o conjunto definido acima. Vamos considerar
e tentar que o octave encontre os pontos
. Como é óbvio, não poderão percorrer todos os elementos do intervalo . Vamos, em primeiro lugar, definir os vectores x,y
com os racionais de a 2 com intervalo de entre si. Não se esqueça de colocar ;
no fim da instrução, caso contrário será mostrado o conteúdo desses vectores (algo desnecessário). Com o comando meshgrid
pretende-se construir uma matriz quadrada onde x,y
surgem copiados. Finalmente, define-se Z=2*X-3*Y
e solicita-se a representação gráfica. Para obter a representação gráfica precisa de ter o gnuplot
instalado.
> x=[-2,0.1,2];
> y=[-2,0.1,2];
> [X,Y]=meshgrid (x,y);
> Z=2*X-3*Y;
> surf(X,Y,Z)
Verifique se a sua versão do gnuplot
permite que rode a figura. Clique no botão esquerdo do rato e arraste a figura. Para sair do gnuplot, digite q
.
Como é óbvio, o uso das capacidades gráficas ultrapassa em muito a representação de planos. O seguinte exemplo surge na documentação do octave:
tx = ty = linspace (-8, 8, 41)'; [xx, yy] = meshgrid (tx, ty); r = sqrt (xx .^ 2 + yy .^ 2) + eps; tz = sin (r) ./ r; mesh (tx, ty, tz);
O conjunto
é um subespaço de
, já que
. O subespaço é dado pela intersecção do plano dado pela equação
com o plano dado pela equação .
Octave
Para obtermos a representação gráfica dos dois planos, vamos fazer variar de a , com intervalos de 0.1. O comando hold on
permite representar várias superfícies no mesmo gráfico.
> x=[-3:0.1:3]; > y=x; > [X,Y]=meshgrid (x,y); > Z1=-2*X+4*Y; > Z2=1/2*X-1/2*Y; > surf(X,Y,Z1) > hold on > surf(X,Y,Z2)Em vez de
x=[-3:0.1:3];
poderíamos ter usado o comando linspace
. No caso, x=linspace(-3,3,60)
. A sintaxe é linspace(ponto_inicial,ponto_final,numero_de_divisoes)
.
Vejamos como poderemos representar a recta que é a intersecção dos dois planos referidos atrás. Repare que os pontos da recta são exactamente aqueles que satisfazem as duas equações, ou seja, aqueles que são solução do sistema homogéneo , onde .
> A=[1 -2 1/2; -1 1 2] A = 1.00000 -2.00000 0.50000 -1.00000 1.00000 2.00000 > rref (A) ans = 1.00000 0.00000 -4.50000 0.00000 1.00000 -2.50000 > solucao=[-(rref (A)(:,3));1] solucao = 4.5000 2.5000 1.0000De facto, o comando
rref (A)
diz-nos que
, ou seja, que as soluções do homogéneo são da forma
, com
.
Ou seja, as soluções de
são todos os múltiplos do vector solucao
. Outra alternativa seria a utilização do comando null(A)
.
> t=[-3:0.1:3]; > plot3 (solucao(1,1)*t, solucao(2,1)*t,solucao(3,1)*t);
O gnuplot não permite a gravação de imagens à custa do teclado ou do rato. Podemos, no entanto, imprimir a figura para um ficheiro.
> print('grafico.eps','-deps') > print('grafico.png','-dpng')No primeiro caso obtemos um ficheiro em formato eps (encapsulated postscript), e no segundo em formato PNG. A representação dos dois planos será algo como a figura seguinte:
Como é óbvio, não estamos condicionados a . Por exemplo, o conjunto
Octave
Com base no teorema anterior, vamos mostrar que
> u=[1; 2; 3; 3]; v=[2; 0; 1; -1]; w=[0; 0; -1; -3];são linearmente independentes. Tal é equivalente a mostrar que :
> rank([u v w]) ans = 3Para , os vectores não são linearmente independentes:
> rank([u v y]) ans = 2
Escrevendo como
Octave
Considerando como no exemplo anterior, vamos verificar se
. Para
, tal é equivalente a verificar se tem solução.
> u=[1; 2; 3; 3]; v=[2; 0; 1; -1]; w=[0; 0; -1; -3]; octave:23> A=[u v w] A = 1 2 0 2 0 0 3 1 -1 3 -1 -3Ou seja, se .
> rank(A) ans = 3 > rank([A y]) ans = 3De uma forma mais simples,
> rank(A)==rank([A y ]) ans = 1Já o vector não é combinação linear de , ou seja, . De facto, :
> rank([A [0;0;0;1]]) ans = 4
Vejamos qual a razão de se denominar ``espaço das colunas de '' a . Escrevendo através das colunas de , pela forma como o produto de matrizes foi definido, obtemos
A classificação de sistemas de equações lineares como impossível, possível determinado ou possível indeterminado, ganha agora uma nova perspectiva geométrica.
Por exemplo, consideremos a equação matricial , com e . O sistema é possível, já que , mas é indeterminado pois .
Octave
Depois de definirmos e no octave,
> rank(A) ans = 2 > rank([A b]) ans = 2
As colunas de , que geram , não são linearmente independentes. Como é possível temos que , mas não sendo as colunas linearmente independentes, não se escreverá de forma única como combinação linear das colunas de . O sistema de equações tem como soluções as realizações simultâneas das equações , e . Cada uma destas equações representa um plano de , e portanto as soluções de são exactamente os pontos de que estão na intersecção destes planos.
Octave
Vamos representar graficamente cada um destes planos para obtermos uma imagem do que será a intersecção.
> x=-3:0.5:3; > y=x; > [X,Y]=meshgrid(x,y); > Z1=(14-2*X-4*Y)/(-8); > surf(X,Y,Z1) > Z2=(7-X-2*Y)/(-4); > Z3=(10-2*X-3*Y)/(5); > hold on > surf(X,Y,Z2) > surf(X,Y,Z3)A intersecção é uma recta de , e portanto temos uma infinidade de soluções da equação .
No entanto, o sistema é impossível, já que . A intersecção dos planos dados pelas equações do sistema é vazia.
Considere agora e . O facto de ser impossível (compare a característica de com a de ) significa que . Ora , ou seja, é o conjunto dos pontos de que se escrevem da forma
Octave
> alfa=-3:0.5:3; beta=a; > [ALFA,BETA]=meshgrid(alfa,beta); > surf(ALFA+BETA,ALFA,-ALFA+BETA)
Com alguns cálculos, podemos encontrar a equação que define . Recorde que se pretende encontrar os elementos para os quais existem tais que
Octave
> x=-3:0.5:3; y=x; > [X,Y]=meshgrid(x,y); > surf(X,Y,-2*Y+X); hold on; plot3([0],[1],[0],'x')
Ora é impossível, pelo que . Ou seja, não é um ponto do plano gerado pelas colunas de .
Se for invertível, então (neste caso, tem-se necessariamente ). De facto, para , podemos escrever , pelo que, tomando , temos . Portanto,
Se são matrizes reais para as quais existe, temos a inclusão . De facto, se então , para algum . Ou seja, , pelo que .
Se for invertível, então . Esta igualdade fica provada se se mostrar que . Para , existe tal que , e portanto .
Recordemos, ainda, que para matriz real , existem matrizes permutação, triangular inferior com 1's na diagonal (e logo invertível) e escada, respectivamente, tais que
Finalmente, e a comprovação deste facto fica ao cargo do leitor, as linhas não nulas de , matriz obtida de por aplicação do método de eliminação de Gauss, são linearmente independentes.
Para definidas atrás,
Seja a forma normal de Hermite de . Portanto, existe uma matriz permutação tal que , onde . Repare que , já que o conjunto gerador é o mesmo (ou ainda, porque é invertível). As primeiras colunas de formam uma base de , e portanto . Pretendemos mostrar que . Para tal, considere o lema que se segue:
Usando o lema anterior,
Octave
Considere os vectores de
> u=[1; 0; -2]; v=[2; -2; 0]; w=[-1; 3; -1];Estes formam uma base de , já que . Esta igualdade é válida já que e :
> A=[u v w] A = 1 2 -1 0 -2 3 -2 0 -1 > rank(A) ans = 3Já os vectores , com não são uma base de . De facto,
A=[u v q] A = 1 2 -5 0 -2 6 -2 0 -2 > rank(A) ans = 2e portanto . As colunas da matriz não são linearmente independentes, e portanto não são uma base do espaço das colunas da matriz .
A questão que se coloca aqui é: como obter uma base para ?
Octave
Suponha que é a matriz escada de linhas obtida da matriz . Recorde que
, e portanto
. Portanto, e considerando a matriz A=[u v q] do exemplo anterior, basta-nos calcular a matriz escada de linhas associada a :
> [l,V,p]=lu(A'); V' ans = -5.00000 0.00000 0.00000 6.00000 1.20000 0.00000 -2.00000 -2.40000 0.00000As duas primeiras colunas de V' formam uma base de .
Em primeiro lugar, verifica-se que as colunas de com pivot, digamos são linearmente independentes pois é possível determinado.
Em segundo lugar, vamos mostrar que as colunas de correpondentes às colunas de com pivot são também elas linearmente independentes. Para tal, alertamos para a igualdade , onde indica a -ésima coluna de . Tendo , e como é possível determinado, segue que, pela invertibilidade de , a equação admite apenas a solução nula. Mas é a matriz constituída pelas colunas de , pelo que estas são linearmente independentes, em número igual a . Visto , essas colunas constituem de facto uma base de .
Octave
Seja A a matriz do exemplo anterior:
> A A = 1 2 -5 0 -2 6 -2 0 -2Vamos agora descrever esta segunda forma de encontrar uma base de . Como já vimos, , pelo que as colunas de não formam uma base de pois não são linearmente independentes, e . Façamos a decomposição :
> [l,u,p]=lu(A); u u = -2 0 -2 0 -2 6 0 0 0Uma base possível para são as colunas de correspondendo às colunas de u que têm pivot. No caso, a primeira e a segunda colunas de formam uma base de .
Finalmente, como , temos a igualdade
Repare que já que se e só se . Na resolução de , é feita a separação das incógnitas em básicas e em livres. Recorde que o número destas últimas é denotado por . Na apresentação da solução de , obtemos, pelo algoritmo para a resolução da equação somas de vectores, cada um multiplicado por uma das incógnitas livres. Esses vectores são geradores de , e são em número igual a , onde . Queremos mostrar que . Seja a forma normal de Hermite de ; existe permutação tal que , tendo em mente que . Como é invertível, segue que . Sendo a matriz obtida de fazendo trocas convenientes de colunas, tem-se . Definamos a matriz quadrada, de ordem , . Como segue que , e portanto as colunas de pertencem a . Mas e as suas últimas colunas são linearmente independentes (já que ). Logo, . Pelo que vimos atrás, . Segue das duas desigualdades que
Como , obtemos, finalmente,
Octave
Vamos aplicar os resultados desta secção num caso concreto. Considere o subespaço de
gerado pelos vectores
. Como temos 5 vectores de um espaço de dimensão 3, eles são necessariamente linearmente dependentes. Qual a dimensão de ? é o espaço das colunas da matriz , cujas colunas são os vectores dados:
> A=[1 2 3 4 5; 2 -3 1 1 0; 1 -1 2 2 4];Ora .
> [L,U,P]=lu(A); U U = 2.00000 -3.00000 1.00000 1.00000 0.00000 0.00000 3.50000 2.50000 3.50000 5.00000 0.00000 0.00000 1.14286 1.00000 3.2857Ou seja, . Como e têm a mesma dimensão, então . Ou seja, as colunas de geram . As colunas de que formam uma base para são aquelas correspondentes às colunas de que têm pivot; neste caso, as três primeiras de . Uma base para é o conjunto formado pelos vectores . Vamos agora calcular as coordenadas de b=[0; -2; -2] nesta base. Tal corresponde a resolver a equação :
> b=[0; -2; -2] b = 0 -2 -2 > B=A(:,[1,2,3]) B = 1 2 3 2 -3 1 1 -1 2 > coord=inverse(B)*b coord = 1.00000 1.00000 -1.00000Ou seja, .
Subsecções
Seguinte: Brincando com a característica
Acima: Espaços vectoriais
Anterior: Bases de espaços vectoriais
  Conteúdo
Pedro Patricio
2008-01-08