% MATLAB Introduction % 1.050 % September 6-7, 2007 % ----------------------------------------------------------------- clear close all clc % vector operations a = [ 2 3 4 ] b = [ 1 -2 3 ] sizea = size(a) sizeb = size(b) aplusb = a + b % dot and cross products adotb = dot(a,b) % dot product transb = transpose(b) % transpose of a matrix atimestransb = a * transb % multiplication (dot product) theta = acosd( adotb / (norm(a)*norm(b)) ) % angle between vector a and b acrossb = cross(a,b) % cross product % ------------------------------------------------------------------ % Matrix operations A = [ 1 1 -1 ; 0 0 1 ; 0 -2 -2 ] B = [ 2 1 0 ; -2 6 7 ; 3 3 1 ] AmultB = A * B % multiplication AarraymultB = A .* B % array multiplication transposeA = A' % another way to perform a transpose operation detA = det(A) % determinant Ainv = A^(-1) % inverse Ainv2 = inv(A) % matrix operations C = [-3 1 0]' X = A\C % solving system of equations, alternatively, you can use the next statement X2 = inv(A)*C % % rank operations D = [1 -1 0 2 1 3 0 1 1] E = [1 1 1 -3 3 -1 ; 1 0 0 1 0 1 ; -2 0 -2 0 0 -2] rankD = rank(D) rankE = rank(E) % ------------------------------------------------------------------ % plotting routine % example: problem of Alberto saving a friend from drowning x = (0:1:100); %create an array of values for x %REMEMBER: since x is an array, then for operations like * , / , ^ % that are applicable to all elements in x use .* , ./ , .^ e1 = sqrt ( x.^2 + 100^2); e2 = sqrt ( (100-x).^2 + 50^2 ); v1 = 10000; v2 = 3000; t = e1/v1 + e2/v2; figure(1) plot(x,t) xlabel('x [m]') ylabel('T [h]')