<commit_before>"""
Module containing manifolds of n-dimensional rotations
"""

from __future__ import division

import numpy as np
import numpy.linalg as la
import numpy.random as rnd
from scipy.misc import comb
from scipy.linalg import expm, logm

from pymanopt.tools.multi import multiprod, multitransp, multisym, multiskew
from pymanopt.manifolds.manifold import Manifold


class Rotations(Manifold):
    """
    Returns a manifold structure to optimize over rotation matrices.

    manifold = Rotations(n)
    manifold = Rotations(n, k)

    Special orthogonal group (the manifold of rotations): deals with matrices<commit_msg>Fix compatibility with SciPy 1.3.0<commit_after>"""
Module containing manifolds of n-dimensional rotations
"""

from __future__ import division

import numpy as np
import numpy.linalg as la
import numpy.random as rnd
from scipy.linalg import expm, logm
from scipy.special import comb

from pymanopt.tools.multi import multiprod, multitransp, multisym, multiskew
from pymanopt.manifolds.manifold import Manifold


class Rotations(Manifold):
    """
    Returns a manifold structure to optimize over rotation matrices.

    manifold = Rotations(n)
    manifold = Rotations(n, k)

    Special orthogonal group (the manifold of rotations): deals with matrices
{'fraction_non_alphanumeric': 0.06220839813374806, 'fraction_numerical': 0.0023328149300155523, 'mean_word_length': 4.72, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7565803', 'n_tokens_mistral': 386, 'n_tokens_neox': 353, 'n_words': 141}