numerical-integration相关内容
我正在实现一个RKF4(5)积分器,但我无法确定我的代码是否工作正常,并且我不理解本地截断错误,或者我的代码是否不工作。 对于代码块的大小,我深表歉意,但在这种情况下,最小可重现示例相当大。 import numpy as np def RKF45(state, derivative_function, h): """ Calculate the next state
..
我有DataFrame个力-位移数据。位移数组已设置为DataFrame索引,列是我针对不同测试的各种力曲线。 如何计算已完成的功(即“曲线下面积”)? 我查看了numpy.trapz,它似乎做了我需要的事情,但我认为我可以避免像这样循环遍历每一列: import numpy as np import pandas as pd forces = pd.read_csv(...
..
我有一个简单的问题,但我无法在任何地方找到解决方案.我必须集成一个函数(例如使用 Simpson 的规则子例程),但我必须将多个参数传递给我的函数:一个是我稍后要集成的变量,另一个只是来自不同的值我无法在函数内部执行的计算. 问题在于 Simpson 子例程只接受 f(x) 来执行积分,而不接受 f(x,y). 根据 Vladimir 的建议,我修改了代码. 下面的例子: 程序
..
我有以下 ODE: x_dot = 3*x.^0.5-2*x.^1.5 % (等式1) 我正在使用 ode45 来解决它.我的解决方案是作为一个dim(k x 1) 向量给出的(通常k = 41,由tspan 给出). 另一方面,我已经制作了一个近似于(1)中的模型的模型,但是为了比较第二个模型的准确度,我想通过ode45.我的问题是这第二个 ode 是离散的: x_dot = f(x
..
如果有人可以帮助解决以下问题,我将不胜感激.我有以下 ODE: dr/dt = 4*exp(0.8*t) - 0.5*r ,r(0)=2, t[0,1] (1) 我以两种不同的方式解决了 (1).通过Runge-Kutta 方法(四阶)和ode45 在Matlab 中.我将这两个结果与解析解进行了比较,解析解为: r(t) = 4/1.3 (exp(0.8*t) - exp(-0.5*t))
..
我希望对我的 ode45 运动方程计算有两个限制:位置和时间.我已经让时间事件起作用了,但我不确定是否以及如何添加另一个事件来限制位置.编辑:我还有许多不同的粒子在一个 ODE 方程中耦合在一起,并且需要它们在到达“屋顶"时单独停止,因为它们都以不同的速度行进......我能否通过事件实现这一目标?我有一个关于如何做到这一点的想法,但它非常复杂,而且可能会很慢...... 解决方案 我不确
..
我正在 t=0 处求解一组 ODE (dy/dt),所有初始条件 t=0 y_0=(0,0,0).我可以在不同时间为 y 值添加一些数字(例如,在 t=10 时,应将 y1 添加到该数字;在 t=20 时,应将 y2 添加到该数字等)并求解方程? 解决方案 按照您建议的方式(以及@macduff 说明的方式)在 ODE 中插入大的不连续性会导致精度降低和计算时间延长(尤其是使用 ode45
..
我想对三角形上的函数进行数值积分,类似于 import scipy.integrate 作为集成内部 = lambda x:integrate.quad(lambda x,y: 1, 0, x, args=(x))[0]外部 = 集成四边形(内部,0, 1)[0]打印(外)0.5 但使用 scipy.integrate.fixed_quad 函数(它具有积分顺序 n 作为参数).然而,当我写
..
我想对乘以勒让德多项式的定义函数进行分段积分.不幸的是,我在 文档.我想在 n = 1,..., 50 时对 x 的每个勒让德多项式进行积分,所以我设置了 n = np.arange(1, 51, 1). 将 numpy 导入为 np导入pylab从 scipy 导入集成n = np.arange(1, 51, 1)定义 f(x):如果 0 我想我需要定义另一个函数,比如 u(x). c
..
有一个函数可以确定圆形孔径的夫琅禾费衍射图案的强度......(更多信息) 距离 x= [-3.8317 , 3.8317] 函数的积分必须约为 83.8%(如果假设 I0 为 100),当您将距离增加到 [-13.33 , 13.33] 时,它应该约为 95%.但是当我在python中使用积分时,答案是错误的..我不知道我的代码出了什么问题:( from scipy.integrate
..
我有一段代码,我正在使用 scipy.integrate.quad.积分的极限是从负无穷到无穷大.它运行正常,但我希望它更快. 问题的本质是被积分的函数是三个函数的乘积:(1) 一个窄函数(介于 0 和 (2) 一个宽函数(例如,在 200,000 和 500,000 之间),以及(3) 下降为 1/abs(x). 如果那样的话,我只需要精确到 0.1%. 我可以做很多工作并实际
..
我有这个具有相关限制的二维积分.该函数可以在 Python 中定义为 def func(gamma, u2, u3):返回 (1-1/(1+gamma-u3-u2))*(1/(1+u2)**2)*(1/(1+u3)**2) 其中u3的极限是从0到gamma(一个正实数),u2的极限是从0到gamma-u3. 如何使用 scipy.integrate.nquad?我试图阅读文档,但并不容易
..
我一直在尝试使用 scipy.integrate.quadrature 来集成一个标量值函数,该函数将固定维度的向量作为输入.然而,尽管 scipy.integrate.quadrature 声称它可以接受带有向量输入的函数,但我终生无法理解如何进行这项工作. 我可能误解了 scipy.integrate.quadrature 的文档,当它说函数可以接受向量输入时,它仅仅意味着它能够在多个点
..
我必须计算函数的二重积分: >DIntegral
..
我想计算曲线下的面积以进行积分,而无需定义诸如 integrate() 之类的函数. 我的数据如下所示: 日期行使波动率2003-01-01 20 0.22003-01-01 30 0.32003-01-01 40 0.4等等. 我绘制了 plot(strike,volatile) 以查看波动率微笑.有没有办法整合这个绘制的“曲线"? 解决方案 AUC 通过查看大量梯形图很容易近
..
我正在尝试编写一个 Python 程序来使用 Tanh-sinh 求积来计算以下值: 但是尽管程序在每种情况下都收敛到一个合理的值,没有错误,但它并没有收敛到正确的值(对于这个特定积分是 pi),我找不到问题. 该程序不是要求所需的准确度,而是要求所需的函数评估次数,以便更轻松地比较收敛性和更简单的积分方法.评估的数量需要是奇数,因为使用的近似值是 谁能建议我可能做错了什么?
..
我想建立一个接受容差水平、上下界和函数的函数,来计算自适应梯形正交,以及绘制一个图形,比如这个: 因为我需要节点值来绘制我的图形,所以我尝试编码如下: function [node, approx] = aq(f,a,b,tol)t = (b-a)*(f(b)+f(a))/2;如果 abs((t2 - t)/3) >tol %由于 T(2)-T(1)=E(1)-E(2)=3*E(2)m =
..
我需要在下面使用 R 计算这个积分: 我在 R 中使用分位数回归设法实现的 q_theta(x) 函数(包:quantreg). matrix=structure(c(0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09,0.1, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 0.17, 0.18, 0.19,
..
我需要确定由离散数据点表示的一系列表面下的体积.在我的数据中,每个样本都作为单独的数据帧存储在数据帧列表中.这是一些(小的)示例数据: df1
..
我已经编写了一个用于计算立方体和半个空间的交点体积的函数,现在我正在为其编写测试. 我试图像这样用数字计算体积: integral = scipy.integrate.tplquad(lambda z,y,x:int(Vector(x,y,z).dot(normal)
..