(order, a_is_fcontig, b_is_fcontig)
| 1124 | |
| 1125 | @functools.lru_cache(maxsize=64) |
| 1126 | def _parse_output_order(order, a_is_fcontig, b_is_fcontig): |
| 1127 | order = order.upper() |
| 1128 | if order == "K": |
| 1129 | return None |
| 1130 | elif order in "CF": |
| 1131 | return order |
| 1132 | elif order == "A": |
| 1133 | if a_is_fcontig and b_is_fcontig: |
| 1134 | return "F" |
| 1135 | else: |
| 1136 | return "C" |
| 1137 | else: |
| 1138 | raise ValueError( |
| 1139 | "ValueError: order must be one of " |
| 1140 | f"'C', 'F', 'A', or 'K' (got '{order}')" |
| 1141 | ) |
| 1142 | |
| 1143 | |
| 1144 | def bmm_einsum(eq, a, b, out=None, **kwargs): |
no test coverage detected
searching dependent graphs…