如何将一个数学函数放入python函数中?

问题描述:

我做了Runge和Kutta算法来求解类型dy/dx=f (x,y)的微分方程。如何将一个数学函数放入python函数中?

而不必在我的代码def f(x,y)的,我想在我的龙和库塔函数的参数一样知道 RK4 (x0,y0,xmax,f (x,y))输入。

我应该如何编写它才能使其工作?

我想那一定是这样的浮动(...),但我不知道在所有...

+0

你在寻找匿名函数吗?检查第4.7.5节。 Lambda表达式在https://docs.python.org/3/tutorial/controlflow.html! – Zafi

+0

我不是蟒蛇这么好的朋友。我在3周前才开始学习它。所以我真的不知道你寄给我的那部分会有帮助。也许它被称为匿名函数,但对我来说它是未知的。举一个例子,我的算法为给定的导数提供了方程。但是我想将导数的数学公式输入到我的算法的参数中,所以我不必每次都编辑我的文件。 – John

+0

你想输入数学公式作为某种字符串参数或作为函数参数(其中数学公式是用python写的)。在第二种情况下,您应该使用lambda表达式。 – Zafi

使用lambda功能,你可以做一些事情,如下:

虽然我不确定这是否正是您需要的。这个问题对我来说还不太清楚。

+0

因此,例如我想解决dY/dt = -Y。所以我使用了Runge和Kutta算法RK(x0,xmax,yo),并且在我的程序中,我在某处写了一个函数f,定义为-Y。所以我的程序只运行这个等式。所以我的问题是,如果我的方程是dY/dt = F(x,y,t),我应该在代码中写入什么来将F作为参数,即RK(x0,xmax,y0,F)。 (并且在计算过程中,代码将能够对于x,y和t的几个值进行F)。你的lambda是这样做的吗? (对不起,我的英文是法文) – John

+0

你可以用你喜欢的任何参数调用lambda函数custom_func,是的。 – Zafi