Thus, to calculate all the derivatives of the Slater determinant, we only need the derivatives of the single particle wave functions ( \vec\nabla_i \phi_j(\mathbf{r}_i) and \nabla^2_i \phi_j(\mathbf{r}_i) ) and the elements of the corresponding inverse Slater matrix ( \hat{D}^{-1}(\mathbf{r}_i) ). A calculation of a single derivative is by the above result an O(N) operation. Since there are d\cdot N derivatives, the time scaling of the total evaluation becomes O(d\cdot N^2) . With an O(N^2) updating algorithm for the inverse matrix, the total scaling is no worse, which is far better than the brute force approach yielding O(d\cdot N^4) .
Important note: In most cases you end with closed form expressions for the single-particle wave functions. It is then useful to calculate the various derivatives and make separate functions for them.