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
9 次查看(过去 30 天)
显示 更早的评论
Here is the equation I'm going to solve.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/165717/image.jpeg)
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 个评论
Torsten
2017-7-5
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.
采纳的回答
更多回答(2 个)
Matthew Taliaferro
2017-7-2
编辑:Matthew Taliaferro
2017-7-3
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
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!