| 查看: 2082 | 回复: 4 | ||
[求助]
scipy.integrate.quad 积分错误原因? 已有1人参与
|
|
有以下积分,n2和n3的值非常接近,但积分结果却大相径庭。 n2=22144 积分结果=0.4256854383924181 n3=22145 积分结果=11774635265351.027 用matlab算,后面是准确的。是什么原因导致n2所出现的错误? from math import sqrt, log, exp import numpy as np from scipy.integrate import quad def integrand(x, r1, r2): a = r1 + r2 b = r1 * r2 R = a * x / 2 R1 = R ** 2 - a ** 2 R2 = R ** 2 - (r1 - r2) ** 2 vdw = -7e-21 * (2 * b / R1 + 2 * b / R2 + log(R1 / R2)) edl = 7.8e-12 * b / a * log(1 + exp(-328774227 * (R - a))) force = vdw + edl return exp(force / 4.11447e-21) / x ** 2 n1 = 5010 n2 = 22144 n3 = 22145 radius1 = 1.05 * 10 ** -8 * n1 ** (1 / 1.8) radius2 = 1.05 * 10 ** -8 * n2 ** (1 / 1.8) radius3 = 1.05 * 10 ** -8 * n3 ** (1 / 1.8) w2 = quad(integrand, 2, np.inf, args=(radius1, radius2)) w3 = quad(integrand, 2, np.inf, args=(radius1, radius3)) print('w2=', w2[0]) print('w3=', w3[0]) |
» 猜你喜欢
微信指数没变化,科研之友没阅读
已经有4人回复
这种情况还有戏吗
已经有9人回复
同事接到电话了,我却没有
已经有4人回复
准备明年的基金了
已经有5人回复
今年的WR进展到哪一步了?
已经有6人回复
时间戳他又来了
已经有11人回复
小木虫看见有人已经知道结果了
已经有15人回复
这个自发加氧反应的机理是什么?
已经有6人回复
J-J-W不为人知的一面
已经有18人回复
没消息就是被刷了呗
已经有13人回复
2楼2021-05-21 16:59:32
3楼2021-05-22 10:36:12
4楼2021-05-23 08:48:12
5楼2021-05-24 00:23:32











回复此楼