Integration limit is an array

syms x
tau=35*10^-15;
f=tau.*exp(-x.^(2));
t=linspace(-300*10^-15,300*10^-15,500);
fun=matlabFunction(f,'Vars',x);
z=integral(fun,-Inf,(t/tau),'ArrayValued',true)
Error using integral
Limits of integration must be double or single scalars.

 Risposta accettata

syms x
tau=35*10^-15;
f=tau.*exp(-x.^(2));
t=linspace(-300*10^-15,300*10^-15,500);
fun=matlabFunction(f,'Vars',x)
fun = function_handle with value:
@(x)exp(-x.^2).*3.5e-14
for k = 1:length(t)
z(k)=integral(fun,-Inf,(t(k)/tau),'ArrayValued',true);
end
z
z = 1×500
1.0e-13 * 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
plot(t,z)

1 Commento

VBBV
VBBV il 22 Dic 2022
As mentioned in error, use scalar inputs to function integral

Accedi per commentare.

Più risposte (0)

Richiesto:

il 22 Dic 2022

Commentato:

il 22 Dic 2022

Community Treasure Hunt

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

Start Hunting!

Translated by