Definte Integration of a Received Sequence

2 次查看(过去 30 天)
Hello all,
I have the sequence v of length K-by-1. I want to do integration of v over nn*nsamp to (nn+1)*nsamp for nn=0, ..., N-1 and K=nsamp*N. I did this in MATLAB as following:
y=zeros(N,1);
for nn=0:N-1
y(nn)=sum(v(nn*nsamp:(n+1)*nsamp))
end
Is this right?
  2 个评论
Mahdi
Mahdi 2014-6-4
Unlike some other programming languages, the index for the first element in a matrix/vector is 1 in MATLAB. So for example, if A=[5 6 7], then A(1) gives 5. While A(0) gives an error. So in your case, you want to define nn from 1 to N-1:
for nn=0:N-1
You might also want to look into the trapz built-in function to integrate. What is the range of x-values you're integrating over?
S. David
S. David 2014-6-4
编辑:S. David 2014-6-4
Yes you are right, I should have written
...
y(nn+1)=sum(v(nn*nsamp+1:(n+1)*nsamp))
...
Actually, v corresponds to the continuous time signal v(t) where
t=0:Ta:(K-1)*Ta
I want to do the integration:
yn=int_{n*Ts}^{(nn+1)*Ts} v(t) dt % n=0,...,N-1
where Ta=Ts/nsamp.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Numerical Integration and Differentiation 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by