def localCovMtxs(meanTensor, pCovMtx, tensorVectForm=True):
    """Determines the covariance matrix :math:`\\boldsymbol{\\mathrm{W}_i}` of
    the random variables :math:`\\left(\\mathrm{d}p_{ji},
    \\mathrm{d}p_{ki}\\right)` from the local Cartesian System
    :math:`\\mathrm{d}\\boldsymbol{p}_i` that define the :math:`\\mathscr{P}-`
    plane where each confidence area of the mean tensor's princial direcions
    are drawn by using the equation (27) of
    `Jelínek (1978) <https://doi.org/10.1007/BF01613632>`_.

    Parameters:
        meanTensor (`numpy.ndarray`): mean tensor :math:`\\boldsymbol{k}` of
            the sample either in vector or matrix form.
        pCovMtx (`numpy.ndarray`): :math:`(6 \\times 6)` covariance matrix
            :math:`\\boldsymbol{\\mathrm{V^\\mathrm{P}}}` of
            :math:`\\boldsymbol{k^\\mathrm{P}}`'s elements. It is obtained
            with the ``covMtx2PPlane`` function.
        tensorVectForm (`bool`): Logical variable to indicate if the input
            :math:`\\boldsymbol{k}` is in vector form. ``True`` is the default
            value.

    Returns:
        Three elements are returned; they are described below.

            - **W** (`list`): list of three :math:`(2 \\times 2)` arrayes                with the covariance matrix :math:`\\boldsymbol{\\mathrm{W}_i}`                described above.
            - **eigVal_W** (`list`): list with the three couples of                 :math:`\\boldsymbol{\\mathrm{W}_i}`'s eigenvalues obtained                 with the ``getEigSorted`` function.
            - **eigVec_W** (`list`): list with the three :math:`(2 \\times 2)`                arrayes of :math:`\\boldsymbol{\\mathrm{W}_i}`'s eigevectors                obtained with the ``getEigSorted`` function.

    Examples:
        >>> from numpy import cov
        >>> from jelinekstat.tools import dataFromFile
        >>> from jelinekstat.jelinekstat import meantensor, covMtx2PPlane
        >>> sample, numTensors = dataFromFile('inputDataExample.txt')
        >>> normTensors = normalizeTensors(sample)
        >>> meanTensorVect, meanTensorMtx, numTensors = meantensor(
        >>>     normTensors, normalized=True)
        >>> covMtx = cov(normTensors.T, bias=False)
        >>> pCovMtx = covMtx2PPlane(
        >>>     covMtx, meanTensorVect, numTensors)
        >>> W, eigVal_W, eigVec_W = localCovMtxs(
        >>>     meanTensorVect, pCovMtx)
        >>> W
        [array([[ 0.41635005, -0.00798796],
                [-0.00798796,  0.00679994]]),
         array([[ 0.00739345, -0.02211065],
                [-0.02211065,  0.41635005]]),
        array([[ 0.00679994, -0.00565157],
               [-0.00565157,  0.00739345]])]
        >>> eigVal_W
        [array([ 0.41650579,  0.0066442 ]),
         array([ 0.41754201,  0.00620149]),
         array([ 0.01275605,  0.00143733])]
        >>> eigVec_W
        [array([[ 0.99980999,  0.01949312],
                [-0.01949312,  0.99980999]]),
         array([[ 0.05383071, -0.99855008],
                [-0.99855008, -0.05383071]]),
         array([[ 0.68831829, -0.7254088 ],
                [-0.7254088 , -0.68831829]])]
    """
    import numpy as np
    from jelinekstat.tools import tensorvect2matrixform, getEigSorted
    if tensorVectForm:
        meanTensor = tensorvect2matrixform(meanTensor)
    eigVal_mT, eigVec_mT = getEigSorted(meanTensor)
    t = eigVal_mT
    W = list()
    eigVal_W = list()
    eigVec_W = list()
    for l, r, s in [(0, 1, 2), (1, 2, 0), (2, 0, 1)]:
        Wl = np.array([[pCovMtx[3 + l, 3 + l] / (t[l] - t[r]) ** 2, pCovMtx
            [3 + l, 3 + s] / ((t[l] - t[r]) * (t[l] - t[s]))], [pCovMtx[3 +
            l, 3 + s] / ((t[l] - t[r]) * (t[l] - t[s])), pCovMtx[3 + s, 3 +
            s] / (t[l] - t[s]) ** 2]])
        W.append(Wl)
        eigVal, eigVec = getEigSorted(Wl)
        eigVal_W.append(eigVal)
        eigVec_W.append(eigVec)
    return W, eigVal_W, eigVec_W
