1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Thảo luận nhóm TMU học PHẦN TOÁN CAO cấp NHIỆM vụ sử DỤNG PYTHON GIẢI các bài TOÁN

49 17 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 49
Dung lượng 1,58 MB

Nội dung

TRƯỜNG ĐẠI HỌC THƯƠNG MẠI KHOA HTTTKT & TMĐT BÀI THẢO LUẬN HỌC PHẦN: TOÁN CAO CẤP NHIỆM VỤ: SỬ DỤNG PYTHON GIẢI CÁC BÀI TOÁN Lớp học phần 2213AMTA1011 : Giảng viên : Lê Văn Tuấn Nhóm thực : Nhóm 0 TIEU LUAN MOI download : skknchat123@gmail.com NHIỆM VỤ 1: A Thực phép tính 1.1 a), c), d) 1.1 a) Nhập: import numpy as np A = np.array([[2, 4],[-4, 7],[0, 1]]) B = np.array([[-2, 1, -6, -1],[5, 4, 7, 10]]) print(np.dot(A,B)) Kết : [[16 18 16 38] [43 24 73 74] [ 710]] 1.1 c) Nhập: import numpy as np A = np.array([[1,1,1,1],[1,1,-1,-1],[1,-1,1,-1],[1,-1,-1,1]]) print(np.linalg.matrix_power(A,2)) Kết quả: [[4000] [0400] [0040] [0004]] 1.1 d) Nhập: import numpy as np A = np.array([[4, 7, 4],[8, 2, 5],[9, -3, 1]]) B = np.array([[5], [6], [4]]) print(np.dot(A,B)) Kết quả: [[78] 0 TIEU LUAN MOI download : skknchat123@gmail.com [72] [31]] B Tính định thức, ma trận nghịch đảo ma trận 1.8 (với m= 8) : 1.8.1 Nhập: import numpy as np A = np.array([[3, 4, 2],[6, 8, 4],[9, 12, 8]]) print(np.linalg.det (A)) Kết quả: Định thức = + Vì định thức = => khơng có ma trận nghịch đảo 1.8.2 Nhập: import numpy as np B = np.array([[1, 2, 1, 1],[2, 3, 2, 6],[-63, -1, 0, 11],[1, 1, 1, 5]]) print(np.linalg.det (B)) Kết quả: -1.1191048088221598e-13 => Định thức = -1.1191048088221598e-13 Vì định thức => khơng có ma trận nghịch đảo NHIỆM VỤ : A Tìm hạng ma trận 1.7 với = 1.7.1 Nhập: import numpy as np A = np.array([[5, -4, 3, 1],[9, 8, 6, 3],[4, 1, 3, 2]]) print(np.linalg.matrix_rank(A)) 0 TIEU LUAN MOI download : skknchat123@gmail.com Kết quả: Hạng ma trận = 1.7.2 Nhập: import numpy as np B = np.array([[1, 8, -1, 2],[2, -1, 8, 5],[1, 10, -6, 1]]) print(np.linalg.matrix_rank(B)) Kết quả: Hạng ma trận = B Tìm hạng xét tính độc lập tuyến tính, phụ thuộc tuyến tính hệ vectơ 2.4 2.5 với m = 2.4 = (1, -1, 2, 0, 3); = (2, -3, 5, 1, -4); = (4, -5, 9, 1, 8); = (2, -2, 4, 9, 6) Nhập: import numpy as np C = np.array([[1, -1, 2, 0, 3],[2, -3, 5, 1, -4],[4, -5, 9, 1, 8],[2, -2, 4, 9, 6]]) print(np.linalg.matrix_rank(C)) Kết quả: Hạng ma trận = Vì hạng ma trận = = số véc tơ (4) => Hệ độc lập tuyến tính 2.5 X1 = X2 = X3 = X4 =( 0 TIEU LUAN MOI download : skknchat123@gmail.com Nhập: import numpy as np D = np.array([[1, 0, -1, 2, -2],[2, 1, 0, 3, -5],[5, 2, -1, 8, 8-64],[-3,-1,1,-5,8+3]]) print(np.linalg.matrix_rank(D)) Kết quả: Hạng ma trận = < số véc tơ (4) Hệ phụ thuộc tuyến tính NHIỆM VỤ : Giải hệ PTTT 3.4, 3.6, 3.9 với m = k=8 3.4.1 Nhập: import numpy as np a = np.array([[9, 1, 1],[1, 9, 1],[1, 1, 9]]) b = np.array([1,8,64]) x = np.linalg.solve(a, b) print(x) Kết : [-0.70454545 0.17045455 7.17045455] Hệ có nghiệm: [-0.70454545 0.17045455 7.17045455] 3.4.2 Nhập: import numpy as np a = np.array([[2, 1, 3, 4],[0, 3, 1, 4],[-4, -2, 4, -6],[2, 4, 9, -7]]) b = np.array([4, 2, -2, 3]) x = np.linalg.solve(a, b) print(x) Kết : [ 0.46666667 -0.00833333 0.525 ] TIEU LUAN MOI download : skknchat123@gmail.com Hệ có nghiệm [ 0.46666667 -0.00833333 0.525 0.375 ] 3.6.1 Nhập: import numpy as np a = np.array([[1,1,1],[1,-2,-2],[1,4,16]]) b = np.array([0,0,0]) x = np.linalg.solve(a,b) print(x) Kết : [ -0 0.] Hệ có nghiệm [ -0 0.] 3.6.2 Nhập: import numpy as np a = np.array([[2, 3, 1, 2],[4, 5, 3, 4],[6, 7, 5, 7], [8,9,9,8]]) b = np.array([0,0,0,0]) x = np.linalg.solve(a,b) print(x) Kết : [ 0 -0 -0.] Hệ có nghiệm [ 0 -0 -0.] 3.9 Nhập: import numpy as np a = np.array([[2,-6,4,-6],[2,-1,1,1],[1,2,-1,4],[1,7,-4,11]]) b = np.array([-5,1,2,8]) x = np.linalg.solve(a,b) print(x) Kết : Traceback (most recent call last): 00 TIEU LUAN MOI download : skknchat123@gmail.com File "D:\toandaicuong\main.py", line 4, in x = np.linalg.solve(a,b) File "< array_function internals>", line 180, in solve File "D:\toandaicuong\venv\lib\sitepackages\numpy\linalg\linalg.py", line 393, in solve r = gufunc(a, b, signature=signature, extobj=extobj) File "D:\toandaicuong\venv\lib\sitepackages\numpy\linalg\linalg.py", line 88, in _raise_linalgerror_singular raise LinAlgError("Singular matrix") numpy.linalg.LinAlgError: Singular matrix Hệ vô nghiệm vô số nghiệm NHIỆM VỤ 4: A Vẽ đồ thị hàm số 6.10 đoạn [8,16] 6.10.1 : Nhập: import numpy as np from matplotlib import pyplot as plt from mpl_toolkits.mplot3d import Axes3D x = np.arange(8,16,0.4) y = x*(((1-2*x)**2)**(1/3)) plt.plot(x,y) plt.xlabel("Truc x") plt.ylabel("Truc y") plt.title('Toan cao cap') plt.show() Kết : 00 TIEU LUAN MOI download : skknchat123@gmail.com 6.10.2 Nhập: import numpy as np from matplotlib import pyplot as plt from mpl_toolkits.mplot3d import Axes3D x = np.arange(8,16,0.4) y =x+3*((x**2)**1/3) plt.plot(x,y) plt.xlabel("Truc x") plt.ylabel("Truc y") plt.title('Toan cao cap') plt.show() Kết : 0 TIEU LUAN MOI download : skknchat123@gmail.com 6.10.3 Nhập: import numpy as np from matplotlib import pyplot as plt from mpl_toolkits.mplot3d import Axes3D x = np.arange(8,16,0.4) y =x/(np.exp(x)) plt.plot(x,y) plt.xlabel("Truc x") plt.ylabel("Truc y") plt.title('Toan cao cap') plt.show() Kết : 0 TIEU LUAN MOI download : skknchat123@gmail.com 6.10.4 Nhập: import numpy as np from matplotlib import pyplot as plt from mpl_toolkits.mplot3d import Axes3D x = np.arange(8,16,0.4) y =x*((np.log(x))**2) plt.plot(x,y) plt.xlabel("Truc x") plt.ylabel("Truc y") plt.title('Toan cao cap') plt.show() Kết : 10 0 TIEU LUAN MOI download : skknchat123@gmail.com * Tìm MAX 6.10.1, Nhập: import math from scipy.optimize import fmin def f(x): return -(x* (1-2*x)**2/3) min_loc = fmin(f, 1.0) print(min_loc) print(-f(*min_loc)) Kết : Warning: Maximum number of function evaluations has been exceeded [6.338253e+28] 3.3950599605575043e+86 Ghi Giá trị max vượt giá trị lớn Python (hàm số tiến vô cùng) 6.10.2, Nhập: import math from scipy.optimize import fmin def f(x): return -(x+ 3* x**2/3) min_loc = fmin(f, 1.0) print(min_loc) 35 00 TIEU LUAN MOI download : skknchat123@gmail.com print(-f(*min_loc)) Kết : Warning: Maximum number of function evaluations has been exceeded [6.338253e+28] 4.0173451106474974e+57 Ghi Giá trị max vượt giá trị lớn Python (hàm số tiến vô cùng) 6.10.3, Nhập: import math from scipy.optimize import fmin def f(x): return -(x/math.e**x) min_loc = fmin(f, 1.0) print(min_loc) print(-f(*min_loc)) Kết : Optimization terminated successfully Current function value: -0.367879 Iterations: 10 Function evaluations: 20 [1.] 0.36787944117144233 36 00 TIEU LUAN MOI download : skknchat123@gmail.com Ghi Hàm số đạt max x = Giá trị max : 0.36787944117144233 6.10.4, Nhập: import math from scipy.optimize import fmin def f(x): return -(x*math.log(x)**2) min_loc = fmin(f, 1.0) print(min_loc) print(-f(*min_loc)) Kết : Warning: Maximum number of function evaluations has been exceeded [6.338253e+28] 2.787695426470232e+32 Ghi Giá trị max vượt giá trị lớn Python (hàm số tiến vô cùng) 6.10.5, Nhập: import math from scipy.optimize import fmin def f(x): return -(math.exp(x)/(x+1)) min_loc = fmin(f, 1.0) 37 00 TIEU LUAN MOI download : skknchat123@gmail.com print(min_loc) print(-f(*min_loc)) Kết : OverflowError: math range error 6.10.6, Nhập: import math from scipy.optimize import fmin def f(x): return -((x+1)*((math.pow(x,2)-1)**1/3)) min_loc = fmin(f, 1.0) print(min_loc) print(-f(*min_loc)) Kết : Warning: Maximum number of function evaluations has been exceeded [6.338253e+28] 8.487649901393761e+85 Ghi Giá trị max vượt giá trị lớn Python (hàm số tiến vô cùng) 6.10.7, Nhập: import math 38 00 TIEU LUAN MOI download : skknchat123@gmail.com from scipy.optimize import fmin def f(x): return -(x*((x**2-1)**1/3)) min_loc = fmin(f, 1.0) print(min_loc) print(-f(*min_loc)) Kết : Warning: Maximum number of function evaluations has been exceeded [6.338253e+28] 8.487649901393761e+85 Ghi Giá trị max vượt giá trị lớn Python (hàm số tiến vô cùng) 7.9 * Tìm MIN 7.9.1, Nhập: import math from scipy.optimize import fmin def f(x,y): return x**2 + x*y +y**2 +x-y+1 min_loc = fmin(lambda vec: f(vec[0], vec[1]), [0.1, 0.1]) print(min_loc) print(f(*min_loc)) 39 0 TIEU LUAN MOI download : skknchat123@gmail.com Kết : Optimization terminated successfully Current function value: 0.000000 Iterations: 39 Function evaluations: 76 [-1.00001244 1.00003511] 9.504592668463374e-10 Hàm số đạt (x, y) = (-1.00001244 , 1.00003511) (0, 1) Giá trị min: 9.504592668463374e-10 7.9.2, Nhập: import math from scipy.optimize import fmin def f(x,y): return 2*x**4+y**4-x**2-2*y**2 min_loc = fmin(lambda vec: f(vec[0], vec[1]), [0.1, 0.1]) print(min_loc) print(f(*min_loc)) Kết : Optimization terminated successfully Current function value: -1.125000 Iterations: 46 Function evaluations: 89 40 0 TIEU LUAN MOI download : skknchat123@gmail.com import sympy x, y = sympy.symbols ('x y', real = True) z = (x**3 + y**3)/(x**2 + y**2) z_x = sympy.diff(z, x) z_xx = sympy.diff(z_x,x) z_xx = sympy.lambdify((x,y), z_xx) z_x = sympy.diff(z, x) z_xy = sympy.diff(z_x,y) z_xy = sympy.lambdify((x, y), z_xy) z_y = sympy.diff(z, y) z_yy = sympy.diff(z_y,y) z_yy = sympy.lambdify((x, y), z_yy) print(z_xx(8,16)) print(z_xy(8,16)) print(z_yy(8,16)) Kết : 0.07199999999999998 -0.036000000000000004 0.017999999999999988 7.2.2 : 24 TIEU LUAN MOI download : skknchat123@gmail.com Nhập : import sympy x, y = sympy.symbols ('x y', real = True) z = sympy.log(x + sympy.sqrt(x**2 + y**2)) z_x = sympy.diff(z, x) z_xx = sympy.diff(z_x,x) z_xx = sympy.lambdify((x,y), z_xx) z_x = sympy.diff(z, x) z_xy = sympy.diff(z_x,y) z_xy = sympy.lambdify((x, y), z_xy) z_y = sympy.diff(z, y) z_yy = sympy.diff(z_y,y) z_yy = sympy.lambdify((x, y), z_yy) print(z_xx(8,16)) print(z_xy(8,16)) print(z_yy(8,16)) Kết : -0.001397542485937368 -0.0027950849718747367 -0.0007617794066409208 7.2.3 : Nhập : TIEU LUAN MOI download : skknchat123@gmail.com import sympy import sympy x, y = sympy.symbols ('x y', real = True) z = sympy exp(sympy.atan(y/x)) z_x = sympy.diff(z, x) z_xx = sympy.diff(z_x,x) z_xx = sympy.lambdify((x,y), z_xx) z_x = sympy.diff(z, x) z_xy = sympy.diff(z_x,y) z_xy = sympy.lambdify((x, y), z_xy) z_y = sympy.diff(z, y) z_yy = sympy.diff(z_y,y) z_yy = sympy.lambdify((x, y), z_yy) 25 TIEU LUAN MOI download : skknchat123@gmail.com print(z_xx(8,16)) print(z_xy(8,16)) print(z_yy(8,16)) Kết : 0.015128594525018135 0.0018910743156272686 -0.005673222946881803 7.2.4 : Nhập : import sympy x, y = sympy.symbols ('x y', real = True) z = sympy.log((sympy.sqrt(x**2 + y**2)-x)/ (sympy.sqrt(x**2 + y**2)+x)) z_x = sympy.diff(z, x) z_xx = sympy.diff(z_x,x) z_xx = sympy.lambdify((x,y), z_xx) z_x = sympy.diff(z, x) z_xy = sympy.diff(z_x,y) z_xy = sympy.lambdify((x, y), z_xy) z_y = sympy.diff(z, y) z_yy = sympy.diff(z_y,y) z_yy = sympy.lambdify((x, y), z_yy) print(z_xx(8,16)) print(z_xy(8,16)) print(z_yy(8,16)) Kết : 0.0027950849718747393 0.005590169943749476 -0.006288941186718158 7.2.5 : TIEUNhậpLUAN: MOI download : skknchat123@gmail.com 26 import sympy x, y = sympy.symbols ('x y', real = True) z = x**(y**3) z_x = sympy.diff(z, x) z_xx = sympy.diff(z_x,x) z_xx = sympy.lambdify((x,y), z_xx) TIEUz _LUANx=sympyMOI.diff(z,downloadx) : skknchat123@gmail.com z xy sympy diff(z x y) z_xy = sympy.diff(z_x,y) z_xy = sympy.lambdify((x, y), z_xy) z_y = sympy.diff(z, y) z_yy = sympy.diff(z_y,y) z_yy = sympy.lambdify((x, y), z_yy) print(z_xx(8,16)) print(z_xy(8,16)) print(z_yy(8,16)) Kết : OverflowError: integer division result too large for a float 7.2.6 : Nhập : import sympy x, y = sympy.symbols ('x y', real = True) z = sympy.atan((sympy.sqrt(x**2 - y**2)))/ ((sympy.sqrt(x**2 + y**2))) z_x = sympy.diff(z, x) z_xx = sympy.diff(z_x,x) z_xx = sympy.lambdify((x,y), z_xx) z_x = sympy.diff(z, x) z_xy = sympy.diff(z_x,y) z_xy = sympy.lambdify((x, y), z_xy) z_y = sympy.diff(z, y) z_yy = sympy.diff(z_y,y) z_yy = sympy.lambdify((x, y), z_yy) print(z_xx(8,16)) 27 TIEU LUAN MOI download : skknchat123@gmail.com print(z_xy(8,16)) print(z_yy(8,16)) Kết : (nan+7.040763791098415e-06j) (nan-1.408152758219683e-05j) (nan+2.816305516439366e-05j) :2: RuntimeWarning: invalid value encountered in sqrt return 3*x**2*arctan(sqrt(x**2 - y**2))/(x**2 + y**2)**(5/2) 2*x**2/(sqrt(x**2 - y**2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)**2) - 2*x**2/(sqrt(x**2 - y**2)*(x**2 + y**2)**(3/2)*(x**2 y**2 + 1)) - x**2/ ((x**2 - y**2)**(3/2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)) arctan(sqrt(x**2 - y**2))/(x**2 + y**2)**(3/2) + 1/ (sqrt(x**2 y**2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)) TIEU LUAN MOI download : skknchat123@gmail.com :2: RuntimeWarning: invalid :2: RuntimeWarning: invalid value encountered in sqrt return 3*x*y*arctan(sqrt(x**2 - y**2))/(x**2 + y**2)**(5/2) + 2*x*y/(sqrt(x**2 - y**2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)**2) + x*y/((x**2 - y**2)**(3/2)*sqrt(x**2 + y**2)*(x**2 y**2 + 1)) :2: RuntimeWarning: invalid value encountered in sqrt return 3*y**2*arctan(sqrt(x**2 - y**2))/(x**2 + y**2)**(5/2) 2*y**2/(sqrt(x**2 - y**2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)**2) + 2*y**2/(sqrt(x**2 - y**2)*(x**2 + y**2)**(3/2)*(x**2 - y**2 + 1)) - y**2/ ((x**2 - y**2)**(3/2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)) - arctan(sqrt(x**2 - y**2))/(x**2 + y**2)**(3/2) - 1/ (sqrt(x**2 - y**2)*sqrt(x**2 + y**2)*(x**2 - y**2 + 1)) 28 TIEU LUAN MOI download : skknchat123@gmail.com ... print(np.linalg.matrix_rank(D)) Kết quả: Hạng ma trận = < số véc tơ (4) Hệ phụ thuộc tuyến tính NHIỆM VỤ : Giải hệ PTTT 3.4, 3.6, 3.9 với m = k=8 3.4.1 Nhập: import numpy as np a = np.array([[9, 1,... plt.xlabel("Truc x") plt.ylabel("Truc y") plt.title('Toan cao cap') plt.show() Kết : 16 0 TIEU LUAN MOI download : skknchat123@gmail.com NHIỆM VỤ 5: A Tính đạo hàm hàm số 6.1 x = 6.1.1 Nhập: import...NHIỆM VỤ 1: A Thực phép tính 1.1 a), c), d) 1.1 a) Nhập: import numpy as np A = np.array([[2, 4],[-4,

Ngày đăng: 05/08/2022, 10:23

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w