问题标签 [quad]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 有没有办法将 SymPy 符号微分与 SciPy 的 Quad 集成包连接起来?
我最近刚刚学会了如何使用 SciPy 的四元积分来积分一个二变量函数,仅针对一个变量。例如,假设我们有一个函数 f(x,y)。我对 x 进行积分,以获得 f(y)。然后我绘制了 f(y) 与 y 值的 NumPy 数组。这里没问题。但是,我现在想将我的原始被积函数乘以雅可比矩阵(雅可比矩阵的各个条目中的每个函数也是 x 和 y 的函数)。
我现在无法完全概念化的问题是如何将部分微分合并到我的原始代码中——它非常干净地集成了我最初的二变量函数。我知道 SymPy 是符号积分的一个很好的选择,但我无法弄清楚如何评估雅可比行列式(因为这需要导数)以一种与其结果相乘的方式相兼容的方式乘以一个单独的函数,然后集成该产品。是否有一种形式的lambdify,它不是将我的 SymPy 函数转换为它们的 NumPy 对应函数,而是将 SymPy 函数转换为可用于 SciPy 的四元集成的函数?还是他们的另一种常见做法?
根据建议,我包含了最能解释我的困境的示例代码。如果这不遵守“最小示例”指南,请发表评论,我会解决这个问题。如您所见,在第一个块中,我使用 SciPy 和 NumPy 来集成和绘制我的原始函数。在第二个块中,我使用 SymPy 来区分两个独立的函数并计算雅可比行列式。最终,我想将得到的雅可比行列式(在第二个块中)乘以我的原始函数(在第一个块中)。在我有了这个新功能(两者的产物)之后,我想简单地执行相同的集成过程。附在这里 --> 1是我尝试运行此想法时收到的错误消息的屏幕截图(这是预期的)。如果我能做些什么来更好地解释这一点,请告诉我。谢谢!
python - 四倍积分功能给了我一些意想不到的零?
我正在集成一个对数正态函数,但遇到了一些意外的零,那为什么呢?我的代码是:
结果应该是 1,但我得到的结果为零。这种行为发生了很多次,这是一个问题,因为我需要乘以另一个函数才能找到 wXb 和 Xbmed。有人可以帮我理解quad函数的问题吗?
scipy - 有没有办法将 scipy.optimize.fsolve 与 jit_integrand_function 和 scipy.integrate.quad 一起使用?
根据此处提供的解释1,我正在尝试使用相同的想法来加速以下积分:
结合之前的参考,我尝试使用 numba/jit 并通过以下方式修改之前的块:
但是,这个实现给了我错误
错误来自我在被积函数内部使用来自 scipy.optimize 的 fsolve 的事实。
我想知道是否有解决此错误的方法,以及在这种情况下是否可以将 scipy.optimize.fsolve 与 numba 一起使用。
python - 涉及 fsolve 和 quad 集成的 python 代码中的数学域错误
我在这段代码中遇到数学域错误。但是相同的功能F
在另一个程序(我没有使用fsolve
)中确实有效,没有任何域错误。
我收到此错误:
python - Quad函数在python中返回不同的值
尝试使用 quad 集成功能时遇到问题。本质上,我有两个版本的代码,我在不同的地方定义了 t(a)。这两个代码对我来说看起来一样,但我得到的结果略有不同。
我猜这是由于使用 quad 方法相关的错误,但不太确定。将不胜感激任何帮助!
python - TypeError:使用 trapz 方法时,只能将 size-1 数组转换为 Python 标量
这是我的python代码
我收到了这个错误:
为什么呢?使用 quad 方法的积分效果很好,但使用 trapz 方法效果不佳
python - ValueError:残差在初始点不是有限的。(Python)
我需要使用包括数值积分在内的复杂函数来拟合图形。如果我使用更简单的函数(这也是一个积分)来执行此操作,则此方法有效,但对于我正在尝试的函数,它不起作用。尽管该程序正在运行,但它非常不适合。您可以看到软件所做的调整是一条恒定线 y = 0 ......这不是预期的。
代码是:
我的数据是:dados= https://github.com/Henrique0501/Dadosbalanca/blob/main/dadosbalanca.xlsx
你能帮我解决这个问题吗?
python - 使用 scipy Python 提高计算积分计算效率的方法
一点背景知识:我正在为大学做一个项目。现在,我需要创建剪切力图。这是通过整合沿感兴趣的梁作用的载荷来完成的。这一切都很好,我认为这很简单。我正在使用Integrate.quad 函数,另请参阅下面的代码。
在这段代码中,z 是一个 np.arange(0,18,0.25) 形式的数组(例如,我感兴趣的光束从 0 米延伸到 18 米)。加载是几个函数的组合,但我认为它在这里并不重要,因为计算每次迭代的值所需的时间可以忽略不计。
如果您愿意,我的主要“问题”是计算结果所需的时间。总共需要 71 次迭代才能找到结果。在这些迭代中,前 30 次左右总共只需要 30 秒。然而,剩下的 41 次迭代开始花费更长的时间,给我的总程序运行时间为 4 分 30 秒。
是否有任何计算增强功能可用于加速此过程?