Why can't I solve this, it's simple. (Incorrect dimensions.... use .^) (I did then it says Invalid Operator.......)
12 views (last 30 days)
Show older comments
>> [x,y]=meshgrid(1:1:exp(5), -3:0.01:3)
>> z=((x+1)^y)-(x^y)
Error using ^ (line 51)
Incorrect dimensions for raising a matrix to a power. Check that the matrix is square and the power is a
scalar. To perform elementwise matrix powers, use '.^'.
>> z=((x+1)^.y)-(x^y)
z=((x+1)^.y)-(x^y)
↑
Error: Invalid use of operator.
0 Comments
Accepted Answer
More Answers (1)
Steven Lord
on 9 Oct 2019
The operator .^ (period followed by a caret) performs elementwise matrix power.
There is no operator ^. (caret followed by a period) in MATLAB. That can still be a valid sequence of symbols (the first example below shows one such use) but it is not valid in the context in which you're using it (the first part of the second and third examples.) The second part of the second and third examples show how you would perform those computations using the .^ operator.
2^.5 % 2 to the 1/2 power or sqrt(2)
x = 0.5;
2^.x % error
2.^x % sqrt(2)
y = 5;
2^.y % Nope
2.^y % 2^5 = 32
0 Comments
See Also
Categories
Find more on Linear Algebra 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!