Intergrate a array over Tb?

1 visualización (últimos 30 días)
Willim
Willim el 3 de Abr. de 2019
Comentada: Walter Roberson el 5 de Abr. de 2019
If I have x=[0.2 1 0.485 0.13 0.11] , I have Tb=10ms and the fs=16*fb; %Sampling frequency
Ts=1/fs; I would like to integrate the x over Tb. How can I do it without using the integration functions. Using the summing algorithm.
  3 comentarios
Willim
Willim el 5 de Abr. de 2019
integrationBase = 0:1/fs:Tb-1/fs;
for i = 0:(length(v)/(Tb*fs))-1,
y1(i+1)=trapz(integrationBase,v(int32(i*Tb*fs+1):int32((i+1)*Tb*fs)));
end
The summing algoithm I mean "summation of the discrate values on the array v"
Walter Roberson
Walter Roberson el 5 de Abr. de 2019
So you are doing trapz() of the v array at the moment, but you feel it would be more accurate to do plain summation? If so why not just reshape v to have Tb*fs rows and sum along the first dimension ?
What reason do you have to expect plain summation to better represent the area than trapz ?

Iniciar sesión para comentar.

Respuestas (1)

madhan ravi
madhan ravi el 3 de Abr. de 2019
Perhaps you want to use cumtrapz() or trapz().
  1 comentario
Willim
Willim el 4 de Abr. de 2019
I have using it but It give me a wrong answer , and I believe the summing formula is going to be easirer.

Iniciar sesión para comentar.

Categorías

Más información sobre Numerical Integration and Differentiation en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by