Make an double integral function
5 次查看(过去 30 天)
显示 更早的评论
I want to make the double integration function (as per the formula shown in figure below) and then evaluate the integral for the given range of x and y. Please help me make the function.
My code is something like this but gives error:
fun = @(x,y) 1/sqrt(2*pi).*exp(-x.^2/2).*exp(-1/2.*(y+(u_j-u_m)/sigma_sq)).^2);
q = integral2(fun,y,Inf,-Inf,inf);
0 个评论
采纳的回答
Bjorn Gustavsson
2021-11-25
By putting the product inside the first pair of square brackets you've made the formula look a little bit confusing - since the only factors that depend on j and m_n are outside that parenthesized factor, but I'll give it a try...
The inner integral over x is just the error-function:
(erf(y/2^(1/2)) + 1)/2
This should give you a modified function, something like this:
fun = @(y) ((erf((2^(1/2)*y)/2) + 1))/2.*exp(-1/2*(y+(u_j-u_m)/s_n).^2);
Which for your desired values of u_j, u_m and s_n will integrate just fine from -inf to inf.
HTH
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Communications Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!