Multiplying Function Handles quad

4 views (last 30 days)
sarngon
sarngon on 20 Mar 2015
Commented: Torsten on 20 Mar 2015
Hi Guys , When I run this code below I get Error using * Inner matrix dimensions must agree. So whats your solution for this .
Error in f8>@(w)bb(w)*cc(w) (line 31)
f3 =@(w)bb(w)*cc(w);
Thanks .
code:
bb=@(w) (((1+w/wr*l)*vi/ccons).^(k-1));
cc=@(w) (2.71.^((-((1+w/wr*l)*vi/ccons)).^k));
f3 =@(w)bb(w)*cc(w);

Accepted Answer

Torsten
Torsten on 20 Mar 2015
f3 =@(w)bb(w).*cc(w);
Best wishes
Torsten.
  2 Comments
sarngon
sarngon on 20 Mar 2015
Thanks ,
Can You explain why should I use dot there ?
Torsten
Torsten on 20 Mar 2015
w is a vector, say w=(w1,w2,...,wn), and the value of your function to be integrated at positions
w=(w1,w2,...,wn) is
(bb(w1)*cc(w1),bb(w2)*cc(w2),...,bb(wn)*cc(wn))
Thus you must use elementwise multiplication to get
(bb(w1),bb(w2),...,bb(wn)).*(cc(w1),cc(w2),...,cc(wn))=
(bb(w1)*cc(w1),bb(w2)*cc(w2),...,bb(wn)*cc(wn)).
Best wishes
Torsten.

Sign in to comment.

More Answers (0)

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!