Error correction...inner matrix dimensions must be same??? how to correct ?

1 view (last 30 days)
[EDIT: 20110610 00:25 CDT - reformat - WDR]
I wrote the following code:
------------------------
w=10:2:30;
a=4*((9*w)-7);
b=(-2)*((18*w)-16)*(w+1);
c=3*((w+1)^2)*((3*w)-1);
d=(-3)*((1+w)^3);
f = roots([a,b,c,d]);
f=f(f<1);
ptr=2./(1+w);
u=(1+w)./2;
l=(u*(1-ptr*f)^3)./3;
plot(w,l);
--------------------------
It shows the following error:
??? Error using ==> mtimes
Inner matrix dimensions must agree.
Error in ==> cubic at 3
b=(-2)*((18*w)-16)*(w+1);
======================
I am not able to correct it .Please help........

Accepted Answer

Walter Roberson
Walter Roberson on 28 Feb 2011
There are significant difficulties with the code that are being explored in the thread about cubic roots. Please do not spread the discussion over two threads.

More Answers (1)

Matt Fig
Matt Fig on 28 Feb 2011
You must put a dot before any *, / or ^ used when you want element-by-element operations on arrays of the same size. Note that if the arrays are not of the same size (or scalar), all bets are off.
A.*B
A./B
A.^B
Also, look at your other post (about cubic roots), I showed you this there too.
  3 Comments
Matt Fig
Matt Fig on 28 Feb 2011
Did you look at the other post? You keep posting the same erroneous code over and over, but did you try what I wrote in the other post???? I ran it and got no errors.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!