> # hw 2, sections 11.2 and 11.3\ # selected problems\ # load linalg \ with(linalg); Warning: new definition for norm Warning: new definition for trace [BlockDiagonal, GramSchmidt, JordanBlock, Wronskian, add, addcol, addrow, adj, adjoint, angle, augment, backsub, band, basis, bezout, blockmatrix, charmat, charpoly, col, coldim, colspace, colspan, companion, concat, cond, copyinto, crossprod, curl, definite, delcols, delrows, det, diag, diverge, dotprod, eigenvals, eigenvects, entermatrix, equal, exponential, extend, ffgausselim, fibonacci, frobenius, gausselim, gaussjord, genmatrix, grad, hadamard, hermite, hessian, hilbert, htranspose, ihermite, indexfunc, innerprod, intbasis, inverse, ismith, iszero, jacobian, jordan, kernel, laplacian, leastsqrs, linsolve, matrix, minor, minpoly, mulcol, mulrow, multiply, norm, normalize, nullspace, orthog, permanent, pivot, potential, randmatrix, randvector, rank, ratform, row, rowdim, rowspace, rowspan, rref, scalarmul, singularvals, smith, stack, submatrix, subvector, sumbasis, swapcol, swaprow, sylvester, toeplitz, trace, transpose, vandermonde, vecpotent, vectdim, vector] -------------------------------------------------------------------------------- > #11 a+b is add(a,b,1,1), a-b is add(a,b,1,-1), 3a+4b is add(a,b,3,4)\ a :=[5,-12]; b:=[-2,8]; a := [5, -12] b := [-2, 8] -------------------------------------------------------------------------------- > add(a,b,1,1); [ 3, -4 ] -------------------------------------------------------------------------------- > add(a,b,1,-1); [ 7, -20 ] -------------------------------------------------------------------------------- > add(a,b,3,4); [ 7, -4 ] -------------------------------------------------------------------------------- > add(a,b,2,0); #or\ scalarmul(a,2); [ 10, -24 ] [ 10, -24 ] -------------------------------------------------------------------------------- > norm(a,2); # this is |a| 13 -------------------------------------------------------------------------------- > #21\ a:=[-2,4,3]; a := [-2, 4, 3] -------------------------------------------------------------------------------- > scalarmul(a, 1/norm(a,2)); 1/2 1/2 1/2 [ - 2/29 29 , 4/29 29 , 3/29 29 ] -------------------------------------------------------------------------------- > evalf("); [ -.3713906763, .7427813528, .5570860147 ] -------------------------------------------------------------------------------- > #25\ a:='a'; b:='b';# clear the old values of a and b\ eqns:={ a=2*i+3*j,b=i-j };\ solve(eqns,{i,j}); a := a b := b eqns := {b = i - j, a = 2 i + 3 j} {j = - 2/5 b + 1/5 a, i = 1/5 a + 3/5 b} -------------------------------------------------------------------------------- > # section 11.3\ # 1\ a:=[2,5];b:=[-3,1]; dotprod(a,b); a := [2, 5] b := [-3, 1] -1 -------------------------------------------------------------------------------- > #7\ # |a||b|cos(theta)\ 2*3*cos(Pi/3); 3 -------------------------------------------------------------------------------- > #13\ a:=[1,2];b:=[12,-5];arccos(dotprod(a,b)/(norm(a,2)*norm(b,2))); a := [1, 2] b := [12, -5] 1/2 arccos(2/65 5 ) -------------------------------------------------------------------------------- > evalf("*180/Pi);# answer in degrees 86.05481373 -------------------------------------------------------------------------------- > #27\ a:=[x,1,2];b:=[3,4,x];eqn:=dotprod(a,b)=0; a := [x, 1, 2] b := [3, 4, x] eqn := 5 x + 4 = 0 -------------------------------------------------------------------------------- > solve(eqn,x);\ -4/5 -------------------------------------------------------------------------------- >