Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

To resolve issues starting MATLAB on Mac OS X 10.10 (Yosemite) visit: http://www.mathworks.com/matlabcentral/answers/159016

Inserting and equation and plotting it

Asked by abdo on 25 Nov 2012

i'm trying to insert an equation and plot it, but i couldn't because i keep getting errors like : matrix dimensions must agree, or inner matrix dimensions must agree.

http://www4.0zz0.com/2012/11/25/10/272913238.png

this is the equation. M has a value of 1 to 5 with an increment of 0.5. Q has a value of 0 to 1 with an increment of 0.1.

the plot is something like this.

http://www4.0zz0.com/2012/11/25/10/700692428.png

thank you in advance, i would appreciate your help

0 Comments

abdo

Products

No products are associated with this question.

2 Answers

Answer by moulay on 25 Nov 2012

Hi!

that is true. length(M)=9 and length (Q)=11. you should take the same length of both vectors. for example Q=0:0.1:0.8!

1 Comment

abdo on 25 Nov 2012

thanx for your reply ok i fixed that issue,i tried to split the equation into parts so it would be easier for me to insert it. lets say (d) represents a part d=q/2*m-arccossqrt(1-(q/m)^2); and it gets me this error 1. error using * the inner matrix dimensions must agree thanx in advance

moulay
Answer by bym on 25 Nov 2012

use the dot notation to specify element-by-element multiplication/division/exponentiation as in:

d= q./(2*m)-acos(sqrt(1-(q./m).^2))

2 Comments

abdo on 25 Nov 2012

thank you, now i have another error for the next part

e=q./m(1-sqrt(1-(q./m).^2));

Subscript indices must either be real positive integers or logicals.

bym on 27 Nov 2012

yes, you are missing a multiplication. I think what you want is

e = (m./q).*(1-sqrt(1-(q./m).^2))
bym

Contact us