After I changed the code into 2.^v, another main problem comes out, which is inner matrix dimensions must agree. I just want to calculate the summation. How can I rewrite the code to ignore the dimensions of r and 2.^v?
Solving a sum of series of exponential function with a sum of series of cosine function inside
10 views (last 30 days)
Show older comments
Cheung Ka Ho
on 2 Jul 2017
Answered: mohammed alzubaidy
on 16 May 2021
Here is the equation I'm going to solve.
where epsilon is a variable.
I wrote the following code.
r = 1:(2^h)-1;
v = 1:h-1
T = exp(x*h/1000)+sum(exp((x/1000)*(cos(2*pi*r/(2^h))+cos(2*pi*r*(2^v)/(2^h)))));
I can run the code when h=2; however, when h becomes greater than or equal to 3, an error that input must be a scalar and a square matrix shows up.
Could anyone please help me on this error?
3 Comments
Torsten
on 5 Jul 2017
Is "epsilon" in your equation a given function ?
Is "e" in your equation the usual Euler-number ?
A closing round parenthesis is missing in your picture.
What does e{...} mean ? Does it mean exp(...) ?
Please clarify.
Best wishes
Torsten.
Accepted Answer
More Answers (2)
Matthew Taliaferro
on 2 Jul 2017
Edited: Matthew Taliaferro
on 3 Jul 2017
You cannot raise things to a power unless they are scalar or square (like the warning said). If you want to square each element, the notation is a little different.
h = 1:10
h_square = h.^2 % as opposed to h^2, which won't work
You also cannot divide something element by element unless it is a scalar.
r = 1:10; h = 1:10;
r_over_h = r./(h.^2); % as opposed to r/(h^2), which won't do what you think it does
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!