Can someone explain what's wrong with my formula?

1 view (last 30 days)
close all
syms t
omega = 2:2:6
omega = 1×3
2 4 6
I = 10
I = 10
C = 0.05
C = 0.0500
V = (-I./omega.*C)*cos(omega.*t)
Error using * (line 432)
Dimensions do not match.
What is wrong with it? I get an error when I try to run it.

Accepted Answer

Matt J
Matt J on 30 Sep 2021
Edited: Matt J on 30 Sep 2021
Be careful of missing dots...
V = (-I./omega.*C).*cos(omega.*t)
  1 Comment
Kevin on 30 Sep 2021
Sorry I'm still relatively new to using matlab, but thank you so much for taking your time to answer :D

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 30 Sep 2021
omega is a vector, so (-I./omega.*C) is a vector and cos(omega.*t) is a vector the same size.
So you have 1 x 3 row vector * 1 x 3 row vector. But the * operator is algebraic matrix multiplication, "inner product". In the expresson A*B then size(A,2) must equal size(B,1) -- the "inner" dimensions must match. The first 1 x 3 vector operand for the * operation has 3 columns. The second 1 x 3 vector operand for the * operation has 1 row. But 1 is not equal to 3, so the * operation fails.
The element-by-element multiplication operator is .* instead of *


Find more on Mathematics 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!

Translated by