📄 switchreal_cent.f90
字号:
subroutine switchreal_cent(includelast,n1dfft,max2,n2,lot,n1zt,lzt,zt,zw) implicit real*8 (a-h,o-z) dimension zw(2,lot,n2),zt(2,lzt,n1zt) if(includelast==1)then! Compute symmetric and antisymmetric combinations do j=1,n1dfft zw(1,j,1)=zt(1,1,2*j-1) zw(2,j,1)=zt(1,1,2*j ) enddo do i=2,max2+1 do j=1,n1dfft zw(1,j,i)= zt(1,i,2*j-1)-zt(2,i,2*j) zw(2,j,i)= zt(2,i,2*j-1)+zt(1,i,2*j) zw(1,j,n2+2-i)= zt(1,i,2*j-1)+zt(2,i,2*j) zw(2,j,n2+2-i)=-zt(2,i,2*j-1)+zt(1,i,2*j) enddo enddo if(max2+1<n2-max2)then do i=max2+2,n2-max2 do j=1,n1dfft zw(1,j,i)=0.d0 zw(2,j,i)=0.d0 enddo enddo endif else! Compute symmetric and antisymmetric combinations do j=1,n1dfft-1 zw(1,j,1)=zt(1,1,2*j-1) zw(2,j,1)=zt(1,1,2*j ) enddo zw(1,n1dfft,1)=zt(1,1,2*n1dfft-1) zw(2,n1dfft,1)=0.0d0! endif do i=2,max2+1 do j=1,n1dfft-1 zw(1,j,i)= zt(1,i,2*j-1)-zt(2,i,2*j) zw(2,j,i)= zt(2,i,2*j-1)+zt(1,i,2*j) zw(1,j,n2+2-i)= zt(1,i,2*j-1)+zt(2,i,2*j) zw(2,j,n2+2-i)=-zt(2,i,2*j-1)+zt(1,i,2*j) enddo zw(1,n1dfft,i)= zt(1,i,2*n1dfft-1) zw(2,n1dfft,i)= zt(2,i,2*n1dfft-1) zw(1,n1dfft,n2+2-i)= zt(1,i,2*n1dfft-1) zw(2,n1dfft,n2+2-i)=-zt(2,i,2*n1dfft-1) enddo if(max2+1<n2-max2)then do i=max2+2,n2-max2 do j=1,n1dfft zw(1,j,i)=0.d0 zw(2,j,i)=0.d0 enddo enddo endif endif end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -