解方程

Python 包 SymPy 可以符号化地求解方程、微分方程、线性方程、非线性方程、矩阵问题、不等式、丢番图方程,并计算积分。SymPy 也可以进行数值求解。

解决指南 页面提供了适用于多种类型解决任务的建议。

学习如何使用 SymPy 计算机代数系统来:

描述

示例

解决方案

代数求解方程

\(x^2 = y\)

\(x \in \{-\sqrt{y},\sqrt{y}\}\)

代数求解方程组

\(x^2 + y = 2z, y = -4z\)

\(\{(x = -\sqrt{6z}, y = -4z),\) \({(x = \sqrt{6z}, y = -4z)\}}\)

数值求解一个或多个方程

\(\cos(x) = x\)

\( x \approx 0.739085133215161\)

代数求解常微分方程

\(y''(x) + 9y(x)=0 \)

\( y(x)=C_{1} \sin(3x)+ C_{2} \cos(3x)\)

代数或数值方法求多项式的根

\( ax^2 + bx + c = 0 \)

\( x = \frac{-b\pm\sqrt{b^2 - 4ac}}{2a} \)

代数求解矩阵方程

\( \left[\begin{array}{cc} c & d\\1 & -e\end{array}\right] \left[\begin{array}{cc} x\\y\end{array}\right] = \left[\begin{array}{cc} 2\\0\end{array}\right] \)

\( \left[\begin{array}{cc} x\\y\end{array}\right] = \left[\begin{array}{cc} \frac{2e}{ce+d}\\ \frac{2}{ce+d}\end{array}\right]\)

代数地减少一个或一个单变量的不等式系统

\( x^2 < \pi, x > 0 \)

\( 0 < x < \sqrt{\pi} \)

代数求解丢番图方程

\(a^2 + b^2 = c^2\)

\((a=2pq, b=p^2-q^2, c=p^2+q^2)\)

注释:

  • SymPy 有一个名为 solve() 的函数,它旨在找到一个方程或方程组的解,或者一个函数的根。SymPy 的 solve() 可能并不总是适合你特定问题的解决方案,因此我们建议你使用本页上的链接来学习如何“解决”你的问题。

  • 虽然一个常见的、口语化的表达是,例如,“求解一个积分”,在SymPy的术语中,它将是“计算一个积分”。本页不提供此类任务的指导。请在文档中搜索您想要计算的表达式类型。