python中是否有类似于matlab中的fzero的函数?

qinqinxiaoguai

我想在python中解决以下方程式。

方程

它可以在Matlab中通过fzero函数实现,如下所示:

    K=5;
    H=6;
    u=100;
    fun=@(x) -(K*(-H+log(1+H/x)*(x+H)))/(log(2)*x^2*(log2((x+H)/x))^2*(x+H))+u;
    xx=fzero(fun,[1e-3,1])

但是,我在python中找不到合适的函数。scipy.optimize.fsolve需要初始值。而且,它总是带有无法解释的错误。您能告诉我如何在python中实现它吗?

python代码如下:

import math
from scipy.optimize import fsolve
K=5
H=6
u=100
def func(x,K,H,u):
    return (-(K*(-H+math.log(1+H/x)*(x+H)))/(math.log(2)*(x**2)*(math.log((x+H)/x,2))**2*(x+H))+u)
print(fsolve(func,0.5,args=(K,H,u)))

错误如下:return(-(K *(-H + math.log(1 + H / x)(x + H)))/(math.log(2)(x ** 2)*(math .log((x + H)/ x,2))* 2(x + H))+ u)ValueError:数学域错误

Patol75

您遇到的问题与您对根的最初猜测以及它如何影响算法实现的稳定性有关。例如,如果用1e-3交换0.5,则fsolve收敛。我在下面提出了一个替代脚本,该脚本利用方括号算法,并且可以收敛而不会出现问题,但前提是根位于方括号内,并且方括号两端的图像具有相反的符号。如果没有强制执行后一种条件,则该算法将让您知道。

from numpy import log, log2
from scipy.optimize import root_scalar


def func(x, K, H, u):
    return (u - K * (log(1 + H / x) * (x + H) - H)
            / log(2) / x ** 2 / log2((x + H) / x) ** 2 / (x + H))


sol = root_scalar(func, args=(5, 6, 100), method='toms748', bracket=[1e-3, 1])
print(sol.root, func(sol.root, 5, 6, 100))
# 0.0784837307625566 4.263256414560601e-14

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否有类似于 vba 中的 toString() 函数的实现函数?

来自分类Dev

R中是否有类似于Excel中COUNTIF的函数?

来自分类Dev

在 Matlab 中隐藏类类似于私有函数

来自分类Dev

是否可以在Python中创建类似于JS间隔的函数?

来自分类Dev

是否有使用Python在Plotly中绘制类似于geom_smooth()的函数?

来自分类Dev

类似于Swift中的python的map函数

来自分类Dev

类似于Swift中的python的map函数

来自分类Dev

是否有类似于Python Counter函数的Javascript函数?

来自分类Dev

Python中是否有任何与Matlab中的“哪个”和“打开”类似的函数?

来自分类Dev

在类似于Matlab的python中在外部函数中使用全局变量

来自分类Dev

类似于sql中的函数

来自分类Dev

在SQL中是否有任何类似于“ LIKE”语句的Java函数?

来自分类Dev

ramda.js 中是否有与 mapValues 等效的函数(类似于 lodash)?

来自分类Dev

JavaScript中的“ WebWorkers”概念是否类似于异步函数?

来自分类Dev

Javascript 中是否有类似于 Python 中的算术运算符方法的任何内容

来自分类Dev

python中的块作用域-函数内部是否类似于javascript吊起?

来自分类Dev

在lua中是否有类似于ruby的别名

来自分类Dev

JAVA中是否有类似于JSON的数据结构?

来自分类Dev

是否有类似于netlogo中包含的内容

来自分类Dev

R中是否有类似于Rust模式语法的内容?

来自分类Dev

xubuntu中是否有类似于窗口概述的曝光功能?

来自分类Dev

R中是否有类似于Rust模式语法的内容?

来自分类Dev

xubuntu中是否有类似于窗口概述的曝光功能?

来自分类Dev

Clojure是否具有类似于Mathematica中BinCounts的功能?

来自分类Dev

BTRFS中是否有类似于LVM逻辑卷的内容?

来自分类Dev

在lua中是否有类似于ruby的别名

来自分类Dev

JAVA中是否有类似于JSON的数据结构?

来自分类Dev

是否有类似于Android中的stringByAppendingPathComponent的东西?

来自分类Dev

PostgreSQL中是否有类似于Cassandra的键空间的功能?

Related 相关文章

  1. 1

    是否有类似于 vba 中的 toString() 函数的实现函数?

  2. 2

    R中是否有类似于Excel中COUNTIF的函数?

  3. 3

    在 Matlab 中隐藏类类似于私有函数

  4. 4

    是否可以在Python中创建类似于JS间隔的函数?

  5. 5

    是否有使用Python在Plotly中绘制类似于geom_smooth()的函数?

  6. 6

    类似于Swift中的python的map函数

  7. 7

    类似于Swift中的python的map函数

  8. 8

    是否有类似于Python Counter函数的Javascript函数?

  9. 9

    Python中是否有任何与Matlab中的“哪个”和“打开”类似的函数?

  10. 10

    在类似于Matlab的python中在外部函数中使用全局变量

  11. 11

    类似于sql中的函数

  12. 12

    在SQL中是否有任何类似于“ LIKE”语句的Java函数?

  13. 13

    ramda.js 中是否有与 mapValues 等效的函数(类似于 lodash)?

  14. 14

    JavaScript中的“ WebWorkers”概念是否类似于异步函数?

  15. 15

    Javascript 中是否有类似于 Python 中的算术运算符方法的任何内容

  16. 16

    python中的块作用域-函数内部是否类似于javascript吊起?

  17. 17

    在lua中是否有类似于ruby的别名

  18. 18

    JAVA中是否有类似于JSON的数据结构?

  19. 19

    是否有类似于netlogo中包含的内容

  20. 20

    R中是否有类似于Rust模式语法的内容?

  21. 21

    xubuntu中是否有类似于窗口概述的曝光功能?

  22. 22

    R中是否有类似于Rust模式语法的内容?

  23. 23

    xubuntu中是否有类似于窗口概述的曝光功能?

  24. 24

    Clojure是否具有类似于Mathematica中BinCounts的功能?

  25. 25

    BTRFS中是否有类似于LVM逻辑卷的内容?

  26. 26

    在lua中是否有类似于ruby的别名

  27. 27

    JAVA中是否有类似于JSON的数据结构?

  28. 28

    是否有类似于Android中的stringByAppendingPathComponent的东西?

  29. 29

    PostgreSQL中是否有类似于Cassandra的键空间的功能?

热门标签

归档