# Why do we need to build a supercell to use the DFPT in Phonopy interfaced with VASP?

The following passage about the merits of density-functional perturbation theory (DFPT) is extracted from this seminal paper: Phonons and related crystal properties from density-functional perturbation theory

One of the greatest advantages of DFPT—as compared to other nonperturbative methods for calculating the vibrational properties of crystalline solids (such as the frozen-phonon or molecular-dynamics spectral analysis methods)—is that within DFPT the responses to perturbations of different wavelengths are decoupled. This feature allows one to calculate phonon frequencies at arbitrary wave vectors $$\vec{q}$$ avoiding the use of supercells and with a workload that is essentially independent of the phonon wavelength.

Phonopy is an open-source package for phonon calculations at harmonic and quasi-harmonic levels. In particular, Phonopy is interfaced with VASP. The following link is the tutorial about how to calculate the phonon band structure of NaCl with VASP+DFPT.

However, the second step of this tutorial to use VASP is the construction of a supercell. Why?

The advantage of using DFPT is that in principle it can be used to calculate a perturbation of finite wave vector $$\mathbf{q}$$ using the primitive cell. This should be contrasted with finite differences, which can only be used to calculate perturbations at the $$\Gamma$$ point. If you want to access a non-$$\Gamma$$ wave vector using finite differences, then you need to map that wave vector to the $$\Gamma$$ point by constructing a commensurate supercell.
I think the problem with the DFPT implementation of VASP is that it can only calculate phonons at $$\Gamma$$. This means that the DFPT implementation of VASP is then no different to a finite differences implementation, in the sense that you also need to build supercells to map the wave vector you are interested in into the $$\Gamma$$ point. In turn, this means that there is no advantage to doing the calculations with DFPT, you may as well use finite differences in this case.