如何定义包含积分的函数?

How to define a function containing integrals?

我正在尝试在 MATLAB 中创建以下函数以用于绘图(见图)

这是我的功能:

function M = diodeMultiplication(alpha, beta, x, w)

M = (exp(-int(alpha-beta,x,w)))./(1-(int(alpha.*exp(-int(alpha-beta,diff(x),w)),0,w));

end

其中 x 是一个常数(即 x = 0),w 是一个常数(即 w = 1.*10^-4),alpha 和 beta 是作为 E 函数的浮点值数组。

我想输入 alpha、beta、x 和 w 并绘制 E vs M。它看起来像这样:

plot(E, diodeMultiplication(alpha, beta, x, w));

这个功能不会运行。有人有任何意见吗?谢谢。

您想进行数值积分,因此请使用 integral 而不是 int

您还需要将 alphabeta 定义为函数才能执行此操作。这是通过将 alpha 作为计算您提到的数组的函数来完成的,例如如果 alpha=E.^2 那么您输入 alpha=@(x)(x.^2)integral