A method for multi-input multi-output MIMO communication in a wireless communication network, comprising: receiving, from a device, long-term precoding information for the MIMO communication, the long-term precoding information indicating a first group of beams for a first antenna polarization, and a second group of beams for a second antenna polarization; receiving, from the device, short-term precoding information for the MIMO communication, the short-term precoding information indicating beams selected from the first group of beams and the second group of beams for different antenna polarizations respectively; constructing a precoding matrix for the MIMO communication according to the long-term precoding information and the short-term precoding information, wherein the short-term precoding information indicates a short-term codebook W 2 with one of the following structures: W 2 = 1 MN e k φ q ⊗ γ q ′ ⋅ e l; W 2 = 1 2 MN e k e k ′ φ q ⊗ γ q ′ ⋅ e l − φ q ⊗ γ q ′ ⋅ e l ′; wherein M and N represent the number of antennas of at a transmitter side in the vertical domain and the horizontal domain respectively; e k and e k, denote a vector with 1 at the k -th and the k '-th elements and zeros otherwise respectively for selecting a beam from the first group of beams for the first antenna polarization; e l and e l' denote a vector with the 1 at the l -th and the /'-th elements and zeros otherwise respectively for selecting a beam from the second group of beams for the second antenna polarization; φ q and γ q' denote phase adjustment for the vertical domain and the horizontal domain respectively, wherein q and q' denote an index of a candidate phase adjustment factor; ⊗ denotes Kronecker product operation; "·" denotes a dot product; and transmitting data encoded according to the precoding matrix to the device. receiving, from a device, long-term precoding information for the MIMO communication, the long-term precoding information indicating a first group of beams for a first antenna polarization, and a second group of beams for a second antenna polarization; receiving, from the device, short-term precoding information for the MIMO communication, the short-term precoding information indicating beams selected from the first group of beams and the second group of beams for different antenna polarizations respectively; constructing a precoding matrix for the MIMO communication according to the long-term precoding information and the short-term precoding information, wherein the short-term precoding information indicates a short-term codebook W 2 with one of the following structures: W 2 = 1 MN e k φ q ⊗ γ q ′ ⋅ e l; W 2 = 1 2 MN e k e k ′ φ q ⊗ γ q ′ ⋅ e l − φ q ⊗ γ q ′ ⋅ e l ′; wherein M and N represent the number of antennas of at a transmitter side in the vertical domain and the horizontal domain respectively; e k and e k, denote a vector with 1 at the k -th and the k '-th elements and zeros otherwise respectively for selecting a beam from the first group of beams for the first antenna polarization; e l and e l' denote a vector with the 1 at the l -th and the /'-th elements and zeros otherwise respectively for selecting a beam from the second group of beams for the second antenna polarization; φ q and γ q' denote phase adjustment for the vertical domain and the horizontal domain respectively, wherein q and q' denote an index of a candidate phase adjustment factor; ⊗ denotes Kronecker product operation; "·" denotes a dot product; and transmitting data encoded according to the precoding matrix to the device.