!向量卷积(valid模式,去掉补零边缘) !要求m>=n !z的大小 = m-n+1 SUBROUTINE conv_valid(m,x,n,y,z) implicit none integer :: m,n real*8 :: x(m),y(n),z(m-n+1) real*8 :: temp(m+n-1) integer :: i,j !z = 0 !do i=1,m-n+1 ! do j=1,n ! z(i) = z(i)+x(i+j-1)*y(j) ! end do !end do z = 0 temp = 0 do i=1,m do j=1,n temp(i+j-1) = temp(i+j-1)+x(i)*y(j) end do end do z = temp(n:m) end subroutine