Private method to calculate CMDS embedding
    :param dimensions: (int)
    :return: coordinate matrix (np.array)

def _embedding_classical_mds(matrix, dimensions=3, additive_correct=False):
    """
    Private method to calculate CMDS embedding
    :param dimensions: (int)
    :return: coordinate matrix (np.array)
    """
    if additive_correct:
        dbc = double_centre(_additive_correct(matrix))
    else:
        dbc = double_centre(matrix)
    decomp = eigen(dbc)
    lambda_ = np.diag(np.sqrt(np.abs(decomp.vals[:dimensions])))
    evecs = decomp.vecs[:, :dimensions]
    coords = evecs.dot(lambda_)
    return coords