def pCOH(self):
        """Partial coherence.

        .. math:: \mathrm{pCOH}_{ij}(f) = \\frac{G_{ij}(f)}
                                                {\sqrt{G_{ii}(f) G_{jj}(f)}}

        References
        ----------
        P. J. Franaszczuk, K. J. Blinowska, M. Kowalczyk. The application of
        parametric multichannel spectral estimates in the study of electrical
        brain activity. Biol. Cybernetics 51(4): 239-247, 1985.
        """
        G = self.G()
        # TODO: can we do that more efficiently?
        return G / np.sqrt(np.einsum('ii..., jj... ->ij...', G, G))
def pCOH ( self ) : G = self . G ( ) return G / np . sqrt ( np . einsum ( 'ii..., jj... ->ij...' , G , G ) )
Partial coherence.

        .. math:: \mathrm{pCOH}_{ij}(f) = \\frac{G_{ij}(f)}
                                                {\sqrt{G_{ii}(f) G_{jj}(f)}}

        References
        ----------
        P. J. Franaszczuk, K. J. Blinowska, M. Kowalczyk. The application of
        parametric multichannel spectral estimates in the study of electrical
        brain activity. Biol. Cybernetics 51(4): 239-247, 1985.