2013-01-31 32 views
6

Có lẽ im nhìn thấy rõ ràng nhưng làm cách nào để ngăn chặn sympy sắp xếp lại phương trình?Ngăn chặn Sympy sắp xếp lại phương trình

Im sử dụng Sympy trong sổ tay iPython để tôi có thể dễ dàng sao chép và dán mã Latex thành Lyx, nhưng tôi muốn các phương trình theo thứ tự như tôi định nghĩa chúng.

Ví dụ, công thức đối với bức xạ màu xám thân như một hàm của nhiệt độ của nó:

enter image description here

Sympy tự động đặt các thành phần Nhiệt độ phía trước, mang đến cho một đại diện rất không bình thường của công thức. Có cách nào để ngăn chặn điều này?

Trả lời

7

Hiện tại, không có cách nào để SymPy in mọi thứ chính xác khi được nhập, bởi vì thông tin đó thậm chí không được lưu ở bất kỳ đâu.

Tôi tin vào một phép nhân, ký hiệu được sắp xếp theo thứ tự bảng chữ cái, với các chữ cái viết hoa trước chữ thường (về cơ bản, thứ tự từ ord). Bí quyết tốt nhất tôi có thể đưa ra là sử dụng tùy chọn symbol_names để latex, cho phép bạn thay đổi tên được sử dụng cho Biểu tượng trong biểu diễn LaTeX của nó. Trật tự vẫn sẽ dựa vào tên biểu tượng ban đầu, do đó bạn có thể đánh lừa nó:

>>> from sympy.abc import epsilon, omega, t 
>>> latex(epsilon*sigma*t**4, symbol_names={t:"T"}) 
\epsilon \sigma T^{4} 

Nếu bạn muốn điều này để in khá độc đáo trong các máy tính xách tay, bạn sẽ phải viết một phiên bản tùy chỉnh của phần mở rộng in chuyển số symbol_names của bạn tới latex. Xem https://github.com/sympy/sympy/blob/master/sympy/interactive/printing.py (lý tưởng người ta chỉ có thể vượt qua các tùy chọn latex để init_printing, tôi sẽ mở một vấn đề trong trình theo dõi lỗi SymPy cho điều đó).

+0

Tôi đã mở [this] (http://code.google.com/p/sympy/issues/detail?id=3613) và [this] (http://code.google.com/p/sympy/ vấn đề/chi tiết? id = 3612) vấn đề SymPy cho những điều tôi đã đề cập trong câu trả lời của tôi. – asmeurer

+0

Cảm ơn bạn rất nhiều vì đã trả lời và mở vấn đề. Tôi nghĩ rằng nó sẽ là một bổ sung tốt đẹp eventhough visualization isnt thực sự những gì Sympy là về. Tương lai của máy tính xách tay có vẻ tốt và chuyển đổi nó thành một pdf/blog hoặc trình chiếu có thể sẽ là công cụ phổ biến trong tương lai gần. –

+3

Tuy nhiên, chúng tôi quan tâm đến việc hình dung. SymPy sẽ không gần như hữu ích vì nó không có khả năng in ấn. – asmeurer

Các vấn đề liên quan