logical, save :: fft_initialised = .false.
if (j.gt.(ny/2+1)) cw1(i,j,k)=-cw1(i,j,k)   ! why should be axisymmetry!
if ((tmp1.lt.epsilon).or.(tmp2.lt.epsilon)) then   !epsilon?  what does it mean?
call decomp_2d_fft_3d(cw1,rhs)    !  from complex  to real!
!!!!!  so rhs is in the z pencil ,no there are not z pencil at all!
! why should do the transpose!!!!!!!!!!!!!!
! why in the poisson_000 is not needed!???????????????
!!!!!!!!!!!!!!!!!!!!!!!!!! equation. OK,then you start next!
rw1b(2*i-1,j,k)=rw1(i,j,k)   ! the odd terms is setted!
ny = ny_global - 1  ! (010)  so have fewer1 ny!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!so if (11*)  you need to ?what pencil??????
! NEED TO BE IN Y PENCILS!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!No  we should be the z pencil!
!!!!!!!!!!!!!!!!!!!there is something wrong in the source code!!!!!!!!!
!!!!!!!!!!!!!!!why the default the pencil is  x pencil rather than z pencil!!!
!!!!!!!!!!!!!! generate the x direction coeficiency!!!!!!!!!!!
xkx(:)=0. ; xk2(:)=0. ; yky(:)=0. ; yk2(:)=0.