yolanda
Posts:
5
Registered:
6/19/13


Re: Error : Inner matrix dimensions must agree When computing the three dimensional integral.
Posted:
Jun 20, 2013 12:47 PM


Hi,
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:
exp( ([(xm1),(ym2),(zm3)]*(cov1)*[(xm1);(ym2);(zm3)])./(2) )./((sqrt(2*pi)).^3.*(sqrt(det(cov))))
It has three matrixs operation. So how should I define? Thanks for your nice help!!!
"Steven_Lord" <slord@mathworks.com> wrote in message <kpv4sv$otv$1@newscl01ah.mathworks.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 (xm1) and (ym2) will be scalars but the expression (zm3) will > be a vector. One of the concatenation steps will not work: > > [(xm1),(ym2),(zm3)] % Doesn't work if z is a column vector > [(xm1);(ym2);(zm3)] % 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 > slord@mathworks.com > To contact Technical Support use the Contact Us link on > http://www.mathworks.com

