2016年7月2日 星期六

matlab語言列


求解x
  syms x;

  x=solve('x^3-7*(x^2)+7*x+15=0')
作圖
  ezplot('(1+x^2)^(1/2)=y')
自製作圖(自己輸入DATA)
  step =linspace(0,pi/2,5)
  step=step'
  data=exp(2*step)

  plot(data)

collect(f):化簡多項式
  syms x t
  f=(1+x)*t+x*t;
  collect(f)
expand(f):展開多項式
factor(f):因式分解多項式

矩陣化簡(線性系統)****
  A=[2 1 -1 2;3 4 0 1;1 5 2 6;5 2 -1 -1]
  b=[-6;1;-3;3]
  c=[A b]
  R=rref(A)
  [R,pivot]=rref(A)
常用基本矩陣
  zeros(3,2)
  ones(3,5)
  eye(5)
計算trace(magic為神奇魔方,行列斜都等於定值)
  A=magic(3)    
  trace(A)
矩陣相乘(相加為+,次方為^)
  A=[2 1 -1 2;3 4 0 1;1 5 2 6]
  B=A'
  A*B
反矩陣****
  A=magic(3)
  B=inv(A)
LU分解****
  A=[1 2 3;4 5 6;7 8 0]
  [L,U]=lu(A)


   A=[1 2 3;4 5 6;7 8 0]
   b=[1;1;1]
   [L,U]=lu(A)
   y=L\b
行列式****
  A=magic(3)
  det(A)
求餘因子****
  新增函數如下
    function Cij = cofact(A,i,j)
    % cofactor ckl of the entry of the matrix A
    [m,n]=size(A);
    if m ~= n
        error('Matrix must be square')
end
    B=A([1:i-1,i+j:n],[1:j-1,j+1:n]);
    Cij = (-1)^(i+j)*det(B);
  接著指令如下
    A=magic(3)
    cofact(A,3,2)
求Ker(T)與N(T)
  A=[1 2 -1 0;2 1 0 0;0 3 -2 0;-1 0 1 8]
  rref(A)
  null(A,'r')

特徵值
1.特徵多項式求法
  A=[-5 0 0;3 7 0;4 -2 3]
  aaa=poly(A)  %(此為特徵多項式)

  bbb=roots(aaa)

2.對角化求法
  A=[-5 0 0;3 7 0;4 -2 3]
  [V,D]=eig(A)  %OR  D=eig(A)

SVD分解
  A=[2 0 0 0 1 3;0 0 0 0 0 0;0 0 3 0 0 2;0 4 0 0 0 5]

  [u d v]=svd(A)

jordan分解
  A = [1 -3 -2; -1  1 -1; 2 4 5]
  [V,J] = jordan(A)

備註:eye(2) 為2維單位矩陣


沒有留言:

張貼留言