1module solv_cap
2  integer,       private, save :: Ng1=0, Ng2=0
3contains
4  subroutine FourirG(G)
5    real, intent(in out), dimension(0:,0:) :: G
6    complex, allocatable, dimension(:,:)   :: t
7    allocate( t(0:2*Ng1-1,0:2*Ng2-1) )
8    t(0:Ng1,0:Ng2-1)    = G(:,0:Ng2-1)      ! Fill one quadrant (one extra row)
9    t(0:Ng1,Ng2:2*Ng2-1) = G(:,Ng2:1:-1)    ! This quadrant using symmetry
10  end subroutine FourirG
11end module solv_cap
12