Cách sử dụng sympy trong python

SymPy là một thư viện mã nguồn mở miễn phí bằng Python, được sử dụng cho tính toán tượng trưng và toán học. Trong hướng dẫn này, chúng tôi sẽ đề cập đến cách sử dụng hiệu quả Thư viện Python SymPy để thực hiện các phép toán trên các biểu thức, phép tính tượng trưng và các thuộc tính đại số khác nhau

Tính toán tượng trưng với SymPy

SymPy cho phép chúng tôi trình bày dữ liệu và giá trị theo một cách khác, chính xác 100%. Hãy cùng xem ví dụ sau

import math

print[math.sqrt[7]]

2.6457513110645907

Điều này làm, là trả về giá trị gần đúng của căn bậc hai của 7. Nó không phải là một câu trả lời chính xác 100%. Bạn bao gồm càng nhiều chữ số thập phân, câu trả lời càng chính xác. Vì vậy, về mặt kỹ thuật, điều này sẽ không bao giờ là một đại diện chính xác

Bây giờ, hãy thử điều tương tự, nhưng thay vào đó với SymPy

import sympy

print[sympy.sqrt[7]]

sqrt[7]

Những gì SymPy trả về ở đây, không phải là một giá trị toán học, mà là một biểu diễn tượng trưng cho sqrt của 7. Vì vậy, nó không bao giờ có thể là không chính xác. Ta có thể sử dụng cách biểu diễn kí hiệu này trong các phép tính khác, với độ chính xác cao hơn

Đây là một đoạn thú vị khác

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]

7.000000000000001
7

Chúng tôi đã lấy gốc sqrt của 7 với cả hai thư viện, sau đó áp dụng lũy ​​thừa 2 trên cả hai. SymPy trả về giá trị chính xác, trong khi thư viện toán học thì không [vì nó hoạt động gần đúng]

Những điều thú vị khác mà SymPy có thể làm là trả lại các biểu diễn đơn giản hóa

sympy.sqrt[8]

2*sqrt[2]

Điều tiếp theo trong Hướng dẫn này là cách tạo và thao tác các biểu thức trong Python SymPy

Biểu thức toán học với SymPy

SymPy cung cấp cho chúng tôi khả năng tạo các biểu thức thực tế bằng cách sử dụng các biến [được gọi là ký hiệu trong SymPy]. Ví dụ: nếu bạn muốn biểu diễn phương trình

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
2 bằng Python, bạn sẽ làm như thế nào?

SymPy cung cấp cho chúng tôi khả năng tạo và xử lý các biểu thức như vậy thực sự có thể được sử dụng trong tính toán. Python SymPy có nhiều hàm khác nhau có thể thực hiện các hoạt động thực tế như phân biệt và tích hợp, đồng thời trả về biểu thức kết quả. [Chúng ta sẽ xem xét những điều này sau trong phần hướng dẫn]

Vì vậy, làm thế nào để chúng ta tạo ra một biểu thức như vậy? . Trước tiên, chúng tôi xác định một ký hiệu, đại diện cho một ẩn số/biến như “x” hoặc “y”

from sympy import symbols

x, y = symbols["x y"]

Bây giờ chúng ta có thể sử dụng

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
3 và
import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
4 để xây dựng các biểu thức. Không cần tạo chuỗi hay gì cả, cứ làm bình thường. Hãy thử một vài ví dụ

2.6457513110645907
2

Sửa đổi biểu thức SymPy

Chúng ta thậm chí có thể làm những thứ thú vị như sửa đổi các biểu thức này, bằng cách cộng, trừ hoặc nhân các hằng số và các ký hiệu khác từ nó

2.6457513110645907
0

2.6457513110645907
1

SymPy thậm chí sẽ tự động điều chỉnh các biểu thức khi bạn sửa đổi nó. Ví dụ: nếu bạn có một biểu thức

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
5 và bạn thêm
import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
6 vào biểu thức đó, bạn có thể mong đợi nó chỉ được nối và trở thành
import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
7. Nhưng không, SymPy sẽ tự động đơn giản hóa nó thành
import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
8

Đây là một đoạn mã ngắn cho thấy điều này

2.6457513110645907
2

2.6457513110645907
3

Thay thế các giá trị vào Biểu thức

Bây giờ chúng ta đã biết cách tạo và sửa đổi các biểu thức trong SymPy, hãy xem cách đánh giá chúng. Điều chúng ta cần làm ở đây là sử dụng hàm

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
9 để thay thế các ký hiệu bằng các giá trị số

2.6457513110645907
4

2.6457513110645907
5

Bây giờ, hãy thử điều này cho một biểu thức có nhiều ẩn số

2.6457513110645907
6

2.6457513110645907
7

Chúng tôi cũng có thể thay thế chúng bằng các biểu tượng khác, nếu đó là những gì chúng tôi muốn

2.6457513110645907
8

2.6457513110645907
9

Giải phương trình với SymPy [tìm nghiệm nguyên]

Điều thú vị hơn nữa là SymPy có thể giải toàn bộ phương trình cho bạn theo đúng nghĩa đen và trả về [các] nghiệm. Không cần tự viết mã toàn bộ, chỉ cần sử dụng một hàm duy nhất cùng với biểu thức SymPy và danh sách [các] gốc sẽ được trả về

Hãy thử sử dụng SymPy

7.000000000000001
7
0 trên biểu thức
7.000000000000001
7
1

import sympy

print[sympy.sqrt[7]]
0

import sympy

print[sympy.sqrt[7]]
1

Hãy thử điều này trên một biểu thức khác

import sympy

print[sympy.sqrt[7]]
2

import sympy

print[sympy.sqrt[7]]
3

Trong phần tiếp theo, chúng tôi sẽ đề cập đến một số thao tác như vậy và giải thích cách bạn có thể sử dụng chúng trong mã SymPy của mình

Lượng giác với SymPy

Lượng giác là một vấn đề khá quan trọng trong hầu hết Mathematica, vì vậy bạn có thể tự hỏi làm thế nào bạn có thể đưa các hàm lượng giác và đồng nhất thức vào trong các biểu thức toán học của mình. Hãy cùng xem

Đây là một biểu thức đơn giản,

7.000000000000001
7
2. Hãy cắm một vài giá trị, chỉ để xác minh đầu ra. [Các giá trị đầu vào này của x tính bằng radian]

import sympy

print[sympy.sqrt[7]]
4

import sympy

print[sympy.sqrt[7]]
5

Như bạn có thể đã nhận thấy từ các lần nhập trong ví dụ mã trước, SymPy cho phép chúng tôi truy cập vào tất cả các biến thể khác nhau của các hàm lượng giác. “asin” đại diện cho sin nghịch đảo [arc sin], trong khi “sinh” đại diện cho sin hyperbol. Mô hình tương tự cũng áp dụng cho cos và tan

Một điều thú vị khác mà chúng ta có thể làm với SymPy, là đơn giản hóa các đồng nhất lượng giác. [Không cần phải ghi nhớ bất kỳ trong số họ nữa. ] SymPy sẽ tự động cố gắng đơn giản hóa bất kỳ biểu thức nào bạn chuyển vào hàm

7.000000000000001
7
3. Hãy xem xét một vài ví dụ

import sympy

print[sympy.sqrt[7]]
6

import sympy

print[sympy.sqrt[7]]
7

Sự khác biệt và tích hợp trong SymPy

Chủ đề chính cuối cùng mà chúng ta sẽ thảo luận trong Hướng dẫn này là cách phân biệt và tích hợp các biểu thức trong Python SymPy

khác biệt hóa

Để phân biệt các biểu thức bằng SymPy, chúng ta có thể sử dụng phương thức

7.000000000000001
7
4 trên bất kỳ biểu thức nào Tùy thuộc vào loại tham số được truyền cho
7.000000000000001
7
4, nó sẽ trả về vi phân của biểu thức đó

Tham số đầu tiên cho

7.000000000000001
7
4 là biểu thức mà bạn muốn phân biệt. Tham số thứ hai là những gì bạn muốn đạo hàm đối với. e. g. “Đạo hàm theo x”

Hãy xem xét một ví dụ

import sympy

print[sympy.sqrt[7]]
8

import sympy

print[sympy.sqrt[7]]
9

Nếu bạn muốn phân biệt một biểu thức nhiều lần, có hai cách để làm như vậy. Phương pháp đầu tiên đơn giản là bao gồm biểu tượng mà bạn muốn đạo hàm theo, nhiều lần

sqrt[7]
0

sqrt[7]
1

Ngoài ra, bạn có thể bao gồm một số nguyên “n” làm tham số sau biểu tượng và nó sẽ phân biệt “n” lần

sqrt[7]
2

sqrt[7]
1

Hơn nữa, bạn cũng có thể phân biệt đối với nhiều ký hiệu trong một hàm

7.000000000000001
7
4

sqrt[7]
4

sqrt[7]
5

Tích hợp với SymPy

Đã đến lúc tích hợp với SymPy. Chúng ta hãy xem làm thế nào chúng ta có thể tích hợp các biểu thức toán học khác nhau và có được các dạng tích phân của chúng

Tương tự như cách hoạt động của sự khác biệt, chúng tôi có một chức năng tích hợp trong SymPy có tên là

7.000000000000001
7
8. Nó cũng nhận các tham số tương tự, đó là ký hiệu mà chúng ta muốn lấy tích phân biểu thức theo

Hãy xem xét một số ví dụ

sqrt[7]
6

sqrt[7]
7

Một biểu thức phức tạp hơn một chút được tích hợp

sqrt[7]
8

sqrt[7]
9

Đây là điều xảy ra khi bạn tích hợp một biểu thức có nhiều ký hiệu, chỉ với một trong các ký hiệu đó

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
0

import sympy
import math

print[math.pow[math.sqrt[7], 2]]
print[sympy.sqrt[7] ** 2]
1

Để biết thêm thông tin, hãy xem hướng dẫn chuyên dụng của chúng tôi về Phân biệt và Tích hợp với SymPy

Loạt bài hướng dẫn Python SymPy

Đó có phải là tất cả đối với SymPy không? . Có nhiều tính năng và chức năng nâng cao hơn chưa được đề cập.

Dưới đây là bảng phân tích đầy đủ về tất cả các khái niệm riêng lẻ mà chúng tôi đã trình bày trong Python SymPy trên trang web này, cùng với các liên kết đến các hướng dẫn chuyên dụng của họ

  1. Hướng dẫn cài đặt Python SymPy
  2. Biểu thức toán học trong SymPy
  3. Vi phân và tích phân trong SymPy
  4. Chuyển đổi chuỗi thành biểu thức SymPy
  5. Hàm lượng giác trong SymPy
  6. Ma trận trong SymPy
  7. Giới hạn với SymPy

Điều này đánh dấu sự kết thúc của Hướng dẫn Python SymPy. Mọi đề xuất hoặc đóng góp cho CodersLegacy đều được chào đón. Các câu hỏi liên quan đến nội dung hướng dẫn có thể hỏi ở phần bình luận bên dưới

SymPy được sử dụng để làm gì trong Python?

SymPy là thư viện Python dành cho toán học biểu tượng . Nó nhằm mục đích trở thành một hệ thống đại số máy tính [CAS] đầy đủ tính năng trong khi vẫn giữ mã đơn giản nhất có thể để dễ hiểu và dễ mở rộng.

SymPy có phải là một phần của Python 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.

SymPy được sử dụng ở đâu?

Sympy được sử dụng để tạo các giá trị tham chiếu cho các bài kiểm tra đơn vị và một số tạo mã . Lập trình lượng tử trong Python. Bộ tạo dao động điều hòa đơn giản lượng tử 1D và Cổng ánh xạ lượng tử. hiền toán. Hệ thống toán học mã nguồn mở bao gồm SymPy.

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

SymPy là thư viện Python dành cho toán học ký hiệu . Nó nhằm mục đích trở thành một giải pháp thay thế cho các hệ thống như Mathicala hoặc Maple trong khi vẫn giữ mã đơn giản nhất có thể và dễ dàng mở rộng. SymPy được viết hoàn toàn bằng Python và không yêu cầu bất kỳ thư viện bên ngoài nào.

Chủ Đề