about summary refs log tree commit diff
path: root/usth/MATH2.2/labwork/3
diff options
context:
space:
mode:
authorNguyễn Gia Phong <vn.mcsinyx@gmail.com>2020-02-16 14:26:55 +0700
committerNguyễn Gia Phong <vn.mcsinyx@gmail.com>2020-02-16 14:26:55 +0700
commit82e6cf7d1046d6cee16f7e8b044ec33e7ec6c4b7 (patch)
treef7b7ae0bce69070c47a1b31a85bd2bc69dfecf09 /usth/MATH2.2/labwork/3
parent29d1001e2e21eff289bff23412e284c8b2e44595 (diff)
downloadcp-82e6cf7d1046d6cee16f7e8b044ec33e7ec6c4b7.tar.gz
[usth] Numerical Method is MATH2.4
Diffstat (limited to 'usth/MATH2.2/labwork/3')
-rw-r--r--usth/MATH2.2/labwork/3/GaussPivot.m25
-rw-r--r--usth/MATH2.2/labwork/3/LU.m10
-rw-r--r--usth/MATH2.2/labwork/3/LU_pivot.m20
-rw-r--r--usth/MATH2.2/labwork/3/gauss.m12
-rw-r--r--usth/MATH2.2/labwork/3/labwork3.pdfbin72465 -> 0 bytes
-rw-r--r--usth/MATH2.2/labwork/3/subst.m17
6 files changed, 0 insertions, 84 deletions
diff --git a/usth/MATH2.2/labwork/3/GaussPivot.m b/usth/MATH2.2/labwork/3/GaussPivot.m
deleted file mode 100644
index 7764b3a..0000000
--- a/usth/MATH2.2/labwork/3/GaussPivot.m
+++ /dev/null
@@ -1,25 +0,0 @@
-function x = GaussPivot (A, b)
-  [m n] = size (A);
-  m ~= n && error ('Matrix A must be square');
-  nb = n + 1;
-  Aug = [A b];
-  % forward elimination
-  for k = 1 : n - 1
-    % partial pivoting
-    [big i] = max (abs (Aug(k:n, k)));
-    ipr = i + k - 1;
-    if ipr ~= k
-      Aug([k ipr], :) = Aug([ipr k], :);
-    end
-    for i = k + 1 : n
-      coeff = Aug(i, k) / Aug(k, k);
-      Aug(i, k:nb) = Aug(i, k:nb) - coeff * Aug(k, k:nb);
-    end
-  end
-  % back substitution
-  x = zeros (n, 1);
-  x(n) = Aug(n, nb) / Aug(n, n);
-  for i = n - 1 : -1 : 1
-    x(i) = (Aug(i, nb) - Aug(i, i+1:n) * x(i+1:n)) / Aug(i, i);
-  end
-end
diff --git a/usth/MATH2.2/labwork/3/LU.m b/usth/MATH2.2/labwork/3/LU.m
deleted file mode 100644
index 860486d..0000000
--- a/usth/MATH2.2/labwork/3/LU.m
+++ /dev/null
@@ -1,10 +0,0 @@
-function [L U] = LU (A)
-  [n n1] = size (A);
-  [L U] = deal (eye (n), A);
-  for k = 1:n
-    for i = k + 1 : n
-      L(i, k) = U(i, k) / U(k, k);
-      U(i, :) = U(i, :) - L(i, k)*U(k, :);
-    end
-  end
-end
diff --git a/usth/MATH2.2/labwork/3/LU_pivot.m b/usth/MATH2.2/labwork/3/LU_pivot.m
deleted file mode 100644
index c506697..0000000
--- a/usth/MATH2.2/labwork/3/LU_pivot.m
+++ /dev/null
@@ -1,20 +0,0 @@
-function [L U P] = LU_pivot (A)
-  [n _] = size (A);
-  [L P U] = deal (eye (n), eye (n), A);
-  for k = 1:n
-    [pivot m] = max (abs (U(k:n, k)));
-    m = m + k - 1;
-    if (m ~= k)
-      U([m k], :) = U([k m], :);  % interchange rows m and k in U
-      P([m k], :) = P([k m], :);  % interchange rows m and k in P
-      if k >= 2;  % very important point
-        % interchange rows m and k in columns 1:k-1 of L
-        L([m k], 1:k-1) = L([k m], 1:k-1);
-      end
-    end
-    for i = k + 1 : n
-      L(i, k) = U(i, k) / U(k, k);
-      U(i, :) -= L(i, k)*U(k, :);
-    end
-  end
-end
diff --git a/usth/MATH2.2/labwork/3/gauss.m b/usth/MATH2.2/labwork/3/gauss.m
deleted file mode 100644
index 09128dc..0000000
--- a/usth/MATH2.2/labwork/3/gauss.m
+++ /dev/null
@@ -1,12 +0,0 @@
-function x = gauss (A, b)
-  issquare (A) || error ('Matrix A must be square');
-  Aug = [A b];
-  [m n] = size (Aug);
-  % forward elimination
-  for k = 1 : m - 1
-    for l = k + 1 : m
-      Aug(l, k:n) = Aug(l, k:n) - Aug(k, k:n)*Aug(l, k)/Aug(k, k);
-    end
-  end
-  x = ubst (Aug);
-end
diff --git a/usth/MATH2.2/labwork/3/labwork3.pdf b/usth/MATH2.2/labwork/3/labwork3.pdf
deleted file mode 100644
index 4e0c7e0..0000000
--- a/usth/MATH2.2/labwork/3/labwork3.pdf
+++ /dev/null
Binary files differdiff --git a/usth/MATH2.2/labwork/3/subst.m b/usth/MATH2.2/labwork/3/subst.m
deleted file mode 100644
index 5c6e783..0000000
--- a/usth/MATH2.2/labwork/3/subst.m
+++ /dev/null
@@ -1,17 +0,0 @@
-function x = subst (aug)
-  [m n] = size (aug);
-  x = zeros (m, 1);
-  if (istril (aug))
-    x(m) = aug(1, n) / aug(1, m);
-    for k = 2 : m
-      x(k) = (aug(k, n) - aug(k, k+1:m)*x(1:k-1)) / aug(k, k);
-    end
-  elseif (istriu (aug))
-    x(m) = aug(m, n) / aug(m, m);
-    for k = m - 1 : -1 : 1
-      x(k) = (aug(k, n) - aug(k, k+1:m)*x(k+1:m)) / aug(k, k);
-    end
-  else
-    error ('aug must be a triangular matrix');
-  end
-end