\( \DeclareMathOperator{\abs}{abs} \newcommand{\ensuremath}[1]{\mbox{$#1$}} \)
(%i4) |
m
:
matrix([
3
*
a
+
2
*
b,
-
2
*
a
-
b],[
b,
a])
$
s1 : ev( m, a = 1, b = 0) $ s2 : ev( m, a = 0, b = 1) $ print( "S", "=", "Gen", "{", s1, s2, "}") $ |
Ahora, ortogonalizamos la base, pues la necesitamos ortogonal para calcular la proyección:
(%i6) |
u1
:
s1
;
u2 : s2 -( mat_trace( transpose( s2). u1) / mat_trace( transpose( u1). u1)) * u1 ; |
Ya estamos en condiciones de aplicar: \[\textbf{proy}_S(\vec{v})=\sum_{i=1}^m\frac{\vec{v}\bullet\vec{u}_i}{\parallel\vec{u}_i\parallel^2}\vec{u}_i.\]
(%i9) |
v
:
matrix([
-
1,
0],[
2,
1])
$
p :( mat_trace( transpose( v). u1) / mat_trace( transpose( u1). u1)) * u1 + ( mat_trace( transpose( v). u2) / mat_trace( transpose( u2). u2)) * u2 ; sqrt(( mat_trace( transpose( p). p)), numer ; |
Created with wxMaxima.
Primero necesitamos una base del subespacio vectorial. Procedemos a obtener los vectores de la base haciendo las sustituciones habituales: