Using an Array as an input

8 次查看(过去 30 天)
James Wilson
James Wilson 2021-4-21
I am trying to compute the energy produced by a solar panel in a 24 hour period using a personally mde function computeEnergy.
function [Energy Total_Energy] = computeEnergy(Pan, t)
Energy = exp(-(((t-12)^2)/(1.5*sqrt(2*pi))));
Total_Energy = Pan*Energy;
end
While using t = [1:24] and Pan = 1 as inputs, I get the errors :
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 '.^'.
Error in computeEnergy (line 8)
Energy = exp(-(((t-12)^2)/(1.5*sqrt(2*pi))));
I don't know where I need to incorporate new code to fix the problem.

回答(1 个)

James Tursa
James Tursa 2021-4-21
编辑:James Tursa 2021-4-21
The error message actually tells you exactly what to do. Use element-wise operator .^ instead of the matrix operator ^
Energy = exp(-(((t-12).^2)/(1.5*sqrt(2*pi))));

类别

Help CenterFile Exchange 中查找有关 Mathematics 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by