Python - 使用 t 作为参数和变量的数值积分

问题描述

我正在尝试实现数值积分。具体来说,

Integral

我使用梯形法则得到如下解析表达式

Analytical

当我尝试用数字实现它时。

gamma=0.1 #parameter

Tmax=100 

N=100000 #number of steps

t=np.linspace(0,Tmax,N)

B=np.random.rand(len(t))

def A(t):
    A=np.zeros(len(t))
    trapezi=0
    for i in range(1,N-1):
        trapezi+=(np.exp(-gamma*(Tmax-t[i]))*B[i])
    h=Tmax/N
    A=h*(trapezi+1/2*(B[-1]+B[0]*np.exp(-gamma*Tmax)))
    return A

在这里我创建了一个随机 B 矩阵。

问题是现在输出 A(t) 只是一个值(即对于这个 t,我得到 A(t)=0.47),但我需要的是从 t=0 开始的函数数组到 t=t。这是我的主要问题:如何将变量 t 用作积分中的参数和变量

非常欢迎任何建议。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)