from sympy import simplify import numpy as np import sympy as sp from sympy import symbols x, y, z = symbols('x y z') F = (x**2 + y**2 - 1)*(x**2 + z**2 - 1)*(y**2 + z**2 - 1) - 1 F_x = F.diff(x) F_y = F.diff(y) F_z = x**2 * F.diff(x) - y * F.diff(y) F_x = simplify(F_x) F_y = simplify(F_y) F_z = simplify(F_z) G_x = - F_x/F_z G_y = - F_y/F_z G_x = simplify(G_x) G_y = simplify(G_y) Fi = F_x.diff(x) Fj = F_x.diff(y) Fk = F_y.diff(y) N = G_x.cross(G_y) # normale N = simplify(N/N.norm()) E = simplify(G_x.norm()**2) F = simplify(G_x.dot(G_y)) G = simplify(G_y.norm()**2) I = simplify(N.dot(Fi)) J = simplify(N.dot(Fj)) K = simplify(N.dot(FK)) x = Symbol('x') factor(det(Matrix([[I - x*E, J - x*F], [J - x*F, K - x*G]])).subs({x:0, y:0}))跑不出来,
时间: 2024-03-31 12:37:57 浏览: 18
从代码上看,这是一个使用 SymPy 执行符号计算的程序。其中,定义了一些变量和表达式,对这些表达式求导,然后求取法向量、曲率等数据。最后一行代码是要计算一个行列式,并且把其中的 $x$ 和 $y$ 分别代入为 $0$,最后对行列式进行因式分解。但是,这段代码可能存在一些问题,例如变量 FK 应该是 Fk,因此会导致代码无法运行。如果你遇到了问题,可以检查一下代码是否有语法错误或变量名错误。
相关问题
import matplotlib.pyplot as plt import matplotlib as mpl import numpy as np from scipy import integrate import sympy import mpmath
这段代码导入了matplotlib、numpy、scipy、sympy和mpmath这五个库。其中,matplotlib是用于画图的库,numpy是用于数值计算的库,scipy是用于科学计算的库,sympy是用于符号计算的库,mpmath是用于高精度计算的库。这些库都是Python中常用的科学计算库。
from sympy import rc
import sympy
`rc` 是一个函数,它用于设置Sympy库的全局配置参数。它的作用是修改Sympy库中相关的显示选项,如小数点后的位数、输出格式等。通常,`rc`函数用于修改默认的显示设置,以满足用户的需求。
例如,可以使用以下代码将小数点后的位数设置为4位:
```python
from sympy import rc
rc('display', precision=4)
```
这样,在进行计算时,结果将以四位小数的形式显示。