I have to multiply 3*3 and 3*1 array. i am getting error using "curvature​qi=bsxfun(​@times,q,c​urvature);​" this is giving 3*3 matrix but i need 3*1 matrix in every layer or loop. please help

3 views (last 30 days)
q = [3*3] Matrix where q = q(:,:,1:20)
curvature = [3*1] Matrix where curvature is single matrix.

Accepted Answer

Walter Roberson
Walter Roberson on 15 Oct 2015
Edited: Walter Roberson on 16 Oct 2015
T = arrayfun(@(pane) q(:,:,pane) * curvature, 1 : size(q,3), 'Uniform', 0);
curvatureqi = cell2mat( reshape(T,1,1,size(q,3)) );
  5 Comments
Walter Roberson
Walter Roberson on 16 Oct 2015
You are getting stuck by the invisible character that I have since corrected. You can copy and paste the code as it is now. Or you can type in the statement by hand instead of copying and pasting it.

Sign in to comment.

More Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!