Python có thể sử dụng toán tượng trưng không?

SymPy là một thư viện Python mà chúng ta có thể thực hiện các phép toán tượng trưng. Lợi ích của SymPy trong nhiều lĩnh vực như đạo hàm, tích phân, vi phân, giải phương trình, phép toán ma trận và phép toán thống kê. Nó cũng có các chức năng hữu ích trong các lĩnh vực vật lý và hóa học

Trước tiên, hãy cài đặt thư viện SymPy của chúng tôi và các thư viện cần thiết khác

Hình-1-Cài đặt Sympy1. Hoạt động cơ bản

Để thực hiện một số phép toán cơ bản, trước tiên hãy xác định hai ký hiệu là x và y, sau đó hãy xem đầu ra của một số phép toán ký hiệu

Hình-2-Sympy-Symbols

Ngoài các ký hiệu cơ bản, SymPy cho phép tạo các ký hiệu như alpha, beta và theta

Hình-3-Sympy-Symbols-2

Bây giờ hãy xem cách biểu diễn tích phân được thực hiện

Hình-4-Tích phân Sympy

SymPy cũng cho phép chúng ta dễ dàng tạo các ký hiệu đạo hàm, giới hạn, tổng và nhân

Hình-5-Sympy-Derivative-Giới hạn-Tổng-Sản phẩm

Chúng ta cũng có thể tạo một hàm đẳng thức với Eq(). Nếu chúng ta muốn xem kết quả của phép toán, chúng ta có thể sử dụng hàm doit(). Một hàm hữu ích khác là hàm evalf(), cho phép chúng ta xác định có bao nhiêu chữ số cần tính. Để tạo một hàm, chúng ta có thể sử dụng Hàm()

Hình-6-Sympy-Eq-evalf-doit

Các phép toán nhị thức và giai thừa cũng có thể thực hiện được với SymPy. Bây giờ hãy xem làm thế nào chúng ta có thể làm điều đó

Hình-7-Sympy-Binomial-Factorial2. Simplify(), Expand(),Factor(),Apart() và Together()

Simplify() rút gọn một biểu thức toán học. Hãy làm cho điều này dễ hiểu hơn với các ví dụ

Hình-8-Sympy-Đơn giản hóa

thừa số () chia các biểu thức đa thức thành các thừa số bất khả quy

Hình-9-Yếu tố Symy

hàm expand() ngược lại với hàm thừa số () và chia thành thừa số cho một biểu thức toán học

Hình-10-Sympy-mở rộng

Bây giờ chúng ta hãy xem các hàm together() và apart()

Hình-11-Sympy-together-apart3. Giải phương trình

Chúng ta có thể sử dụng hàm Solveset() để giải các phương trình. Nếu chúng tôi muốn chỉ định một tên miền, chúng tôi có thể sử dụng tham số tên miền

Hình-12-Sympy-solveset

Chúng ta có thể sử dụng hàm linsolve() cho phương trình tuyến tính và hàm nonlinsolve() cho phương trình phi tuyến

Hình-13-Sympy-linsolve-nonlinsolve4. Hoạt động ma trận

Thư viện SymPy cho phép bạn dễ dàng thực hiện nhiều thao tác ma trận. Bây giờ chúng ta hãy xem một số trong số này

Hình-14-Hoạt động ma trận Sympy

Hình-15-Sympy-Matrix-Operations-2

Hình-16-Sympy-Matrix-Operations-35. Tạo đồ thị

Trong SymPy, chúng ta có thể dễ dàng tạo biểu đồ bằng hàm plot(). Bây giờ hãy vẽ biểu đồ -x

Hình-17-Sympy-Tạo-Plot

Cũng có thể vẽ nhiều chức năng cùng một lúc

Hình-18-Sympy-Tạo-Plot-2

Bây giờ hãy vẽ hàm sigmoid, được sử dụng làm hàm kích hoạt trong mạng thần kinh nhân tạo

Hình-19-Sympy-Tạo-Plot-3

Chúng ta cũng có thể vẽ đồ thị ba chiều bằng SymPy. Bây giờ, hãy vẽ hàm sigmoid dưới dạng 3D

Hình-20-Sympy-Tạo-Plot-3D

Tất nhiên, thư viện SymPy không giới hạn ở những thứ này. Có rất nhiều thư viện đã được phát triển bằng SymPy cho các lĩnh vực như vật lý, hóa học và tối ưu hóa. Thông tin thêm về SymPy có thể được tìm thấy ở đây

Nếu bạn sử dụng Jupyter Notebook và muốn lưu công việc của mình dưới dạng tệp Word, bạn có thể lưu tệp của mình dưới dạng Markdown bằng cách làm theo Tệp>Tải xuống dưới dạng>Markdown(. md) và sau đó chuyển đổi nó sang Word tại đây

Trong toán ký hiệu, các ký hiệu được sử dụng để biểu diễn các biểu thức toán học. Dưới đây là một ví dụ về biểu thức toán học tượng trưng

$$ x^{2} + y^{2} = z $$

Trong biểu thức trên, chúng ta có các biến $x$, $y$ và $z$

Nếu chúng ta định nghĩa một biểu thức toán học tượng trưng thứ hai là

$$ x = a + b $$

Chúng ta có thể thay thế $a + b$ bằng $x$

Biểu thức kết quả là

$$ (a + b)^{2} + y^{2} = z $$$$ a^{2} + 2ab + b^{2} + y^{2} = z $$

Giải quyết $y$ theo $a$,$b$ và $z$, kết quả là

$$ y = \sqrt{z - a^{2} - 2ab - b^{2}} $$

Nếu chúng ta có các giá trị số cho $z$, $a$ và $b$, chúng ta có thể sử dụng Python để tính giá trị của $y$

Tuy nhiên, nếu chúng ta không có các giá trị số cho $z$, $a$ và $b$, Python cũng có thể được sử dụng để sắp xếp lại các hạng của biểu thức và giải quyết biến $y$ theo các biến $z khác . Làm việc với các ký hiệu toán học theo cách lập trình, thay vì làm việc với các giá trị số theo cách lập trình, được gọi là toán ký hiệu

SymPy là một thư viện Python để làm việc với toán tượng trưng. Trước khi có thể sử dụng SymPy, nó cần được cài đặt. Quá trình cài đặt Sympy được thực hiện bằng Anaconda Prompt (hoặc thiết bị đầu cuối và pip) bằng lệnh

> conda install sympy

SymPy được bao gồm trong bản phân phối Anaconda của Python. Nếu bạn có bản phân phối Anaconda đầy đủ, bạn sẽ được thông báo rằng thư viện SymPy đã được cài đặt

Xác định các biến trong SymPy¶

Để xác định các biến toán học tượng trưng với SymPy, trước tiên hãy nhập hàm

x, y = symbols('x y')
7 từ mô-đun SymPy

Trong 1]

from sympy import symbols

Các biến toán học tượng trưng được khai báo bằng hàm

x, y = symbols('x y')
7 của SymPy. Lưu ý, các đối số được truyền cho hàm
x, y = symbols('x y')
7 (tên biểu tượng) được phân tách bằng dấu cách, không có dấu phẩy và được bao quanh bởi dấu ngoặc kép. Đầu ra của hàm
x, y = symbols('x y')
7 là các đối tượng biểu tượng SymPy. Các đối tượng đầu ra này được phân tách bằng dấu phẩy không có dấu ngoặc kép

Trong 2]

x, y = symbols('x y')

Giờ đây, các ký hiệu

expr = 2*x + y
1 và
expr = 2*x + y
2 đã được khởi tạo, có thể tạo một biểu thức toán học ký hiệu bằng cách sử dụng
expr = 2*x + y
1 và
expr = 2*x + y
2

Một biểu thức toán học ký hiệu là sự kết hợp của các biến toán học ký hiệu với các số và toán tử, chẳng hạn như

expr = 2*x + y
5,
expr = 2*x + y
6,
expr = 2*x + y
7 và
expr = 2*x + y
8. Các quy tắc Python tiêu chuẩn để làm việc với các số áp dụng trong các biểu thức toán học ký hiệu SymPy

Trong 3]

expr = 2*x + y

Sử dụng phương pháp

expr = 2*x + y
9 để chèn một giá trị số vào một biểu thức toán học tượng trưng. Đối số đầu tiên của phương thức
expr = 2*x + y
9 là đối tượng ký hiệu (biến) và đối số thứ hai là giá trị số. Trong biểu thức trên

$$ 2x + y $$

Nếu chúng ta thay thế

$$ x = 2 $$

Biểu thức kết quả là

$$ 2(2) + y $$$$ 4 + y $$

Trong [4]

x, y = symbols('x y')
8

Ra[4]

x, y = symbols('x y')
9

Phương pháp

expr = 2*x + y
9 không thay biến tại chỗ,
expr = 2*x + y
9 chỉ hoàn thành thay thế một lần. Nếu chúng ta gọi
x, y = symbols('x y')
83 sau khi phương thức
expr = 2*x + y
9 được áp dụng, biểu thức
x, y = symbols('x y')
83 ban đầu được trả về

Trong [5]

from sympy import symbols
5

Ra[5]

from sympy import symbols
6

Để thực hiện thay thế vĩnh viễn, một đối tượng biểu thức mới cần được gán cho đầu ra của phương thức

expr = 2*x + y
9

Trong [6]

from sympy import symbols
8

Ra[6]

x, y = symbols('x y')
9

Các biến SymPy cũng có thể được thay thế thành các biểu thức SymPy

Trong [7]

from sympy import symbols
0

Ra[7]

from sympy import symbols
1

Thay thế phức tạp hơn cũng có thể được hoàn thành. Hãy xem xét những điều sau đây

$$ 2x + y $$

thay thế trong

$$ y = 2x^2 + z^{-3} $$

Kết quả trong

$$ 2x + 2x^2 + z^{-3} $$

Trong [8]

from sympy import symbols
2

Ra[8]

from sympy import symbols
3

Một ví dụ thực tế hơn có thể liên quan đến một biểu thức lớn và một số thay thế biến

$$ n_0e^{-Q_v/RT} $$$$ n_0 = 3. 48 \times 10^{-6} $$$$ Q_v = 12.700 $$$$ R = 8. 31 $$$$ T = 1000 + 273 $$

Trong [9]

from sympy import symbols
4

Nhiều phương thức SymPy ________ 187 có thể được xâu chuỗi lại với nhau để thay thế nhiều biến trong một dòng mã

Trong [10]

from sympy import symbols
5

Ra[10]

from sympy import symbols
6

Để đánh giá một biểu thức dưới dạng số dấu phẩy động (lấy câu trả lời bằng số), hãy sử dụng phương pháp

x, y = symbols('x y')
88 của Sympy

Trong [11]

from sympy import symbols
7

Ra[11]

from sympy import symbols
8

Định nghĩa phương trình trong Sympy¶

Chúng ta có thể định nghĩa các phương trình trong SymPy bằng cách sử dụng các biến toán học tượng trưng. Các phương trình trong SymPy khác với các biểu thức trong SymPy. Một biểu thức không có đẳng thức. Một phương trình có đẳng thức. Một phương trình bằng với một cái gì đó

Trong 1]

from sympy import symbols
9

Trong 2]

x, y = symbols('x y')

Các phương trình SymPy được khởi tạo như một đối tượng của lớp

x, y = symbols('x y')
89. Sau khi các ký hiệu SymPy được tạo, các ký hiệu có thể được chuyển vào một đối tượng phương trình. Hãy lập phương trình

$$ 2x + y - 1 = 0 $$

Trong 3]

x, y = symbols('x y')
1

Bây giờ hãy tạo một phương trình thứ hai

$$ x + y - 5 = 0 $$

Trong [4]

x, y = symbols('x y')
2

Để giải hai phương trình cho hai biến

expr = 2*x + y
1 và
expr = 2*x + y
2, chúng ta sẽ sử dụng hàm
x, y = symbols('x y')
92 của SymPy. Hàm
x, y = symbols('x y')
92 nhận hai đối số, một bộ gồm các phương trình
x, y = symbols('x y')
94 và một bộ các biến để giải quyết cho
x, y = symbols('x y')
95

Trong [5]

x, y = symbols('x y')
3

Ra[5]

x, y = symbols('x y')
4

Đối tượng giải pháp SymPy là một từ điển Python. Các khóa là các đối tượng biến SymPy và các giá trị là các giá trị số mà các biến này tương ứng với

Trong [6]

x, y = symbols('x y')
5

x, y = symbols('x y')
6

Bản tóm tắt¶

Trong bài đăng này, chúng tôi đã xem xét gói Python dành cho toán tượng trưng có tên là SymPy. Sử dụng toán ký hiệu, chúng ta có thể định nghĩa chính xác các biểu thức và phương trình dưới dạng các biến ký hiệu. Chúng tôi đã xem xét cách tạo biểu thức SymPy và thay thế các giá trị và biến vào biểu thức. Sau đó, chúng tôi đã tạo các đối tượng phương trình SymPy và giải hai phương trình cho hai ẩn số bằng hàm

x, y = symbols('x y')
92 của SymPy

Python có thể giải các phương trình tượng trưng không?

SymPy là một thư viện Python cho phép bạn tính toán các đối tượng toán học một cách tượng trưng .

Điện toán tượng trưng trong Python là gì?

SymPy là một hệ thống đại số máy tính mã nguồn mở được viết bằng Python thuần túy . Nó được xây dựng tập trung vào khả năng mở rộng và dễ sử dụng, thông qua cả ứng dụng tương tác và lập trình. Những đặc điểm này đã khiến SymPy trở thành một thư viện biểu tượng phổ biến cho hệ sinh thái Python khoa học.

Toán ký hiệu dùng để làm gì?

Hộp công cụ toán học tượng trưng cho phép bạn thực hiện phân tích phép tính vi phân, tích hợp, đơn giản hóa, biến đổi và giải phương trình . Thực hiện tính toán kích thước và chuyển đổi giữa các đơn vị.