Multiple Anonym Function return wrong values
1 view (last 30 days)
Show older comments
Hello, I have a function that return 3 same values, but they must be different
C = [4622 5480 18923]*1e-12;
U = [454e3 454e3-20e3 20e3].*sqrt(2);
function W = Energy(C,U)
f = 50;
T = 1/f;
t = [0:0.00001:T/4];
fun = @(t) (U.^2/(2*1./(2*3.14*f*C)) * sin(2*2*3.14*f*t));
fun2 = @(C, U) (integral(fun, t(1), t(end)));
for i = 1 : 3
W(i) = fun2(C(i), U(i)) ;
end
end
returned values are
w =
952.7728 952.7728 952.7728
What could be wrong in my code?
0 Comments
Accepted Answer
Alan Stevens
on 20 Jan 2022
Here's one solution:
C = [4622 5480 18923]*1e-12;
U = [454e3 454e3-20e3 20e3].*sqrt(2);
W = Energy(C,U);
disp(W)
function W = Energy(C,U)
f = 50;
T = 1/f;
for i = 1 : 3
fun = @(t) (U(i).^2/(2*1./(2*3.14*f*C(i))) * sin(2*2*3.14*f*t));
fun2 = @(C, U) (integral(fun, 0, T/4));
W(i) = fun2(C(i), U(i)) ;
end
end
0 Comments
More Answers (0)
See Also
Categories
Find more on Lighting, Transparency, and Shading 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!