Matrix multiplication. Trying to get scalar solution

I am expecting a scalar value of 4/3 as the value for coor but am getting [2 0; 0 1]
Inputs as follows:
Number of floors: 2
Mass:2
Mass:1
numFlr=input('Number of floors: ');
nMode=[0.5 1]
nMode-nMode'
u0=ones(numFlr,1)
udot0=zeros(numFlr,1)
MVal=zeros(numFlr,1);
for i=1:numFlr
MVal(i)=input('Mass:');
end
M=diag(MVal);
% Choose=input('Mode: ');
% nMode=EigVec(:,Choose);
nModeT=nMode'
top=nMode.*M.*u0
bot=nMode.*M.*nModeT
coor=top/bot
The problem I am attemping is:

 Accepted Answer

Those should be matrix multiples, not element-wise multiplies. Remove the dots. E.g.,
top=nMode * M * u0;
bot=nMode * M * nModeT;

More Answers (0)

Categories

Tags

Community Treasure Hunt

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

Start Hunting!