I do appreciate your reply! You are right. I also checked the triplequad function detailedly yesterday. And as I defined, z should be a vector and then I can use the function triplequad.
So as you said, the two matrixs don't work. Then how should I define the f function? The exponentional part of the f function is just the part of the three dimension joint Gaussian distributation as following:
It has three matrixs operation. So how should I define? Thanks for your nice help!!!
"Steven_Lord" <firstname.lastname@example.org> wrote in message <email@example.com>... > > http://www.mathworks.com/help/matlab/ref/triplequad.html > > "The first input, fun, is a function handle. fun(x,y,z) must accept a vector > x and scalars y and z, and return a vector of values of the integrand." > > When your function is called with a vector z and scalar x and y, the > expressions (x-m1) and (y-m2) will be scalars but the expression (z-m3) will > be a vector. One of the concatenation steps will not work: > > [(x-m1),(y-m2),(z-m3)] % Doesn't work if z is a column vector > [(x-m1);(y-m2);(z-m3)] % Doesn't work if z is a row vector > > I believe z will be a row vector, so the latter step will not work. > > -- > Steve Lord > firstname.lastname@example.org > To contact Technical Support use the Contact Us link on > http://www.mathworks.com