SUB_WAVELET/Fortran/SUB_detcoef.f90
2025-04-17 17:31:56 +08:00

27 lines
570 B
Fortran

SUBROUTINE detcoef(m,coefs,n,longs,levels,num,d)
implicit none
integer :: m,n,levels,num
integer :: longs(n)
real*8 :: coefs(m),d(1000)
integer :: nmax,tfirst(n),first(n-2),longs2(n-2),last(n-2),i
d = 0
nmax = n-2
call cumsum(n,longs,tfirst)
tfirst = tfirst+1
do i=n-2,1,-1
first(n-i-1) = tfirst(i)
longs2(n-i-1) = longs(i+1)
end do
last = first+longs2-1
num = last(levels)-first(levels)+1
d(1:num) = coefs(first(levels):last(levels))
end subroutine