Sin 函数不适用于微分方程

我试图得到微分方程 y'=sin(x) 但我的微分方程将无法进一步运行,因为我收到错误“无法将表达式转换为浮点数”。如果我将 numpy 与 np.sin(x) 一起使用,则会收到另一个错误“ufunc 的循环不支持没有可调用 sin 方法的 Symbol 类型的参数 0”。这是代码:


import sympy as sym

from math import *


x = sym.symbols('x')

y = sym.Function('y')

diffeq = sym.Eq(y(x).diff(x), sin(x))

如果有人能告诉我哪里出错了,那将是一个很大的帮助,因为它看起来很简单......


猛跑小猪
浏览 85回答 1
1回答

喵喔喔

您打电话时sin()提出了一个它不支持的论点。math.sin()必须将数值作为其唯一参数。我认为要解决这个问题,您只需要传递函数的名称而不是调用它:diffeq = sym.Eq(y(x).diff(x), sin)否则,您需要使用sym.sin而不是math.sin:diffeq = sym.Eq(y(x).diff(x), sym.sin(x))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python