1. Trang chủ
  2. » Tất cả

Thực hành toán cao cấp chương 4 tích phân hàm số

7 6 0

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

THÔNG TIN TÀI LIỆU

Nội dung

Bộ môn Khoa học Dữ liệu Thực hành Toán cao cấp 2019 Trang 1 THỰC HÀNH TOÁN CAO CẤP TÀI LIỆU PHỤC VỤ SINH VIÊN NGÀNH KHOA HỌC DỮ LIỆU Nhóm biên soạn TS Hoàng Lê Minh – Khưu Minh Cảnh – Hoàng Thị Kiều A[.]

Bộ mơn Khoa học Dữ liệu THỰC HÀNH TỐN CAO CẤP TÀI LIỆU PHỤC VỤ SINH VIÊN NGÀNH KHOA HỌC DỮ LIỆU Nhóm biên soạn: TS Hồng Lê Minh – Khưu Minh Cảnh – Hoàng Thị Kiều Anh – Lê Thị Ngọc Huyên – … TP.HCM – Năm 2019 Thực hành Tốn cao cấp - 2019 Trang Bộ mơn Khoa học Dữ liệu MỤC LỤC CHƯƠNG 4: TÍCH PHÂN HÀM SỐ Hàm linspace numpy Giới thiệu lập trình hàm 2.1 Hàm ẩn/vô danh lambda 2.2 Ứng dụng hàm lambda 2.3 Giới thiệu lập trình hàm Tích phân hàm số 10 3.1 Việc tính tích phân 10 3.2 Tích phân với gói phần mềm scipy 13 3.3 Tích phân với gói sympy 14 3.4 Một ví dụ hàm mật độ xác suất 16 BÀI TẬP CHƯƠNG 19 Thực hành Toán cao cấp - 2019 Trang Bộ môn Khoa học Dữ liệu CHƯƠNG 4: TÍCH PHÂN Mục tiêu: - Sơ lược numpy, giới thiệu thêm tính gói Anaconda, phong cách lập trình - Bổ túc lập trình Python: vẽ đồ thị, hàm ẩn/vơ danh lambda - Giới thiệu lập trình hàm dạng - Tích phân hàm số Nội dung chính: Hàm linspace numpy Thư viện numpy hàm linspace để tạo số thực Trong trước, làm quen với hàm range cho để tạo khoảng số tự nhiên Và sau đó, làm quen với việc viết bổ sung hàm (frange) hỗ trợ cho việc tạo khoảng số thực Trong này, sử dụng hàm linspace gói tính tốn numpy Cùng với gói sympy, scipy,…, gói numpy gói hỗ trợ nhiều cho tính tốn xử lý liệu Tuy vậy, khác với sympy, numpy không tập trung vào việc giải tốn hình thức (cơng thức) mà giải cụ thể số Numpy xem thư viện trung gian chuẩn cấu trúc liệu để thư viện xử lý sympy, scipy tương tác liệu (ma trận, dãy số, lưới, đa thức, vector, số phức… nhiều hàm xử lý) Hình ảnh gói xử lý khoa học liệu gói Anaconda hỗ trợ Thư viện numpy hỗ trợ hàm linspace để tạo dãy số thực khoảng Đầu lệnh kiểu liệu dạng array numpy gói phần mềm hỗ trợ Ví dụ: Để chia miền đến thành 10 miền (11 giá trị), thực lệnh linspace sau: Thực hành 1: Chia khoảng liệu Thực hành Toán cao cấp - 2019 Trang Bộ môn Khoa học Dữ liệu >>> import numpy as np >>> mienchia = np.linspace(0, 2, 11) >>> mienchia ……………………………………………………… sinh viên điền vào Kết hợp linspace numpy để vẽ đồ thị hình sin matplotlib: Thực hành 2: Vẽ đồ thị import numpy as np import matplotlib.pyplot as plt fs = [1, 2, 4] all_time = np.linspace(0, 2, 200) t = all_time[:100] for f in fs: y = np.sin(2 * np.pi * f * t) plt.plot(t, y, label='{} Hz'.format(f)) plt.legend() import os os.chdir('d:\\') plt.savefig('basics_python.pdf') plt.show() Kết đồ thị tập tin pdf xuất ra: Thực hành Toán cao cấp - 2019 Trang Bộ môn Khoa học Dữ liệu Lưu ý: số báo cáo khoa học, việc sử dụng tập tin pdf bắt buộc ảnh khơng bị vỡ phóng to thu nhỏ Ngoài ra, định dạng pdf định dạng nhiều hệ điều hành như: Windows, Linux/Unix,… Cũng nói thêm phong cách/tư viết chương trình Chúng ta tưởng tượng “nơi vẽ đồ thị” giống bảng lớn Như vậy, trình diễn đồ thị có hai cách khác có là: - - Trình diễn dạng đối tượng (object-oriented approach): vẽ đồ thị lên tờ giấy bảng dán chúng lên bảng lớn Mỗi tờ giấy “bảng con” Ưu điểm phương pháp tách quản lý hình ảnh với bảng lớn Trong số trường hợp, cần điều chỉnh bảng nhỏ Tư phương pháp lập trình có ngơn ngữ lập trình đại như: Java, C++, C# Trình diễn dạng “máy trạng thái” (state-machine approach): vẽ đồ thị lên bảng đồ thị đến đồ thị khác Ưu điểm phương pháp trực quan tương thích với ngơn ngữ lập trình kinh điển khác như: Matlab (để dễ dàng chuyển đổi code) Như vậy, với hai cách bên phải xem xét đồ thị Nghĩa phải có vịng lặp duyệt đồ thị Nhưng khác chỗ: giải pháp hướng đối tượng “vẽ” lên bảng phương pháp state-machine “vẽ” vào “bảng” Ở đây, bảng đối tượng plt thư viện matplotlib Từ đó, xét đoạn mã với điểm khác biệt việc sử dụng vịng lặp for để vẽ: - Giải pháp hướng đối tượng: Vẽ đối tượng “con” plt: ……… fig, ax = plt.subplots() Thực hành Toán cao cấp - 2019 Trang Bộ môn Khoa học Dữ liệu for f in fs: y = np.sin(2 * np.pi * f * t) ax.plot(t, y, label='{} Hz'.format(f)) …………… - Giải pháp hướng máy trạng thái: Vẽ hình trực tiếp lên đối tượng plt: ……… for f in fs: y = np.sin(2 * np.pi * f * t) plt.plot(t, y, label='{} Hz'.format(f)) …………… Sinh viên tham khảo hình ảnh hai chương trình: Thực hành 3: Xây dựng chương trình hướng đối tượng Tư hướng đối tượng điểm mà người làm toán cần phải nắm để thể mơ hình Đó phương pháp ưu việt giúp chương trình kết hợp với để tạo phần mềm lớn Thực hành Toán cao cấp - 2019 Trang Bộ môn Khoa học Dữ liệu Giới thiệu lập trình hàm Trong trước, làm quen với việc xử lý tính tốn giá trị chuỗi hàm eval() Tuy nhiên, với số mơ hình tính tốn, cần phải mở rộng để xử lý 2.1 Hàm ẩn/vơ danh lambda Hàm lambda Python: có từ phiên 2.2 Gọi hàm “ẩn danh” (anonymous function) lúc chạy Hàm lambda khơng có lệnh return trả module Python ln ln thực lệnh để trả giá trị Ví dụ: xây dựng hàm tính dạng hàm lambda: theo phương pháp: viết hàm def thông thường viết hàm theo Thực hành 4: Minh họa hàm lambda >>> >>> 64 >>> >>> >>> >>> 64 def f (x): return x**2 print (f(8)) g = lambda x: x**2 print (g(8)) 2.2 Ứng dụng hàm lambda Khi xây dựng ứng dụng nhiều cấp, số tham số thay đổi cấp cụ thể Tuy nhiên, mặt công thức tính tốn giữ Ví dụ: việc tính thuế để mua xe,… công thức chung áp dụng cho nước Nhưng số nơi Hà Nội TP.HCM có điều chỉnh theo điều kiện như: để giảm tắt nghẽn giao thông để giảm nhiễm Xét ứng dụng bản: Bài tốn tính thuế địa phương sau: Giả sử thuế TPHCM 0.012 (nghĩa 1.2%); Hà Nội 0.01 (nghĩa 1%) Hãy viết hàm tính (lưu ý: hệ thống mở rộng nhiều địa phương) Thực hành 5: Tính thuế theo khu vực >>> def thue(phan_tram): return lambda x: x * phan_tram >>> = thue(0.012) >>> hn = thue(0.01) Thực hành Toán cao cấp - 2019 Trang ... trình hàm Tích phân hàm số 10 3.1 Việc tính tích phân 10 3.2 Tích phân với gói phần mềm scipy 13 3.3 Tích phân với gói sympy 14. .. 14 3 .4 Một ví dụ hàm mật độ xác suất 16 BÀI TẬP CHƯƠNG 19 Thực hành Toán cao cấp - 2019 Trang Bộ môn Khoa học Dữ liệu CHƯƠNG 4: TÍCH PHÂN Mục tiêu: - Sơ... đồ thị, hàm ẩn/vơ danh lambda - Giới thiệu lập trình hàm dạng - Tích phân hàm số Nội dung chính: Hàm linspace numpy Thư viện numpy hàm linspace để tạo số thực Trong trước, làm quen với hàm range

Ngày đăng: 02/03/2023, 08:13

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

TÀI LIỆU LIÊN QUAN