I want to contract to tensors $A_{ij}$ and $B_{ijkl}$ to tensor $C_{kl}$, like
$$
A_{ij} \otimes B_{ijkl} \rightarrow C_{kl}.
$$
However, this did not work and gave a segmentation fault.
I am using the C interface and am trying to write haskell bindings. The error can also be reproduced in a refactored version of C++ example 5.
Compiled with OpenMPI v5.0.6 and G++ v14.3.0
sorting contraction indices
compatibility of (1|2): Not compatible
compatibility of (34|21): Transposed
No redistribution of (34|21)
Redistribution of (1|2) compatible with (34|21)
==== backtrace (tid:1457695) ====
0 0x00000000000419c0 __GI___sigaction() ???:0
1 0x00000000002f8c0e __dbcsr_tensor_reshape_MOD_dbcsr_t_reshape() ???:0
2 0x00000000002bed3b __dbcsr_tensor_MOD_dbcsr_t_copy_expert() ???:0
3 0x00000000002c3a6a __dbcsr_tensor_MOD_dbcsr_t_remap.constprop.0() ???:0
4 0x00000000002d6c24 __dbcsr_tensor_MOD_reshape_mm_compatible.constprop.0() ???:0
5 0x00000000002e1431 __dbcsr_tensor_MOD_dbcsr_t_contract_expert.constprop.0() ???:0
6 0x00000000002e8106 __dbcsr_tensor_MOD_dbcsr_t_contract() ???:0
7 0x000000000004ef25 c_dbcsr_t_contract_r_dp() ???:0
8 0x0000000000403fc0 main() ???:0
9 0x000000000002a4d8 __libc_start_call_main() ???:0
10 0x000000000002a59b __libc_start_main_alias_2() ???:0
11 0x00000000004044a5 _start() ???:0
=================================
[1] 1457695 segmentation fault (core dumped) ./result/bin/dbcsr_tensor_example_test
Is this wanted behavior for Tensor 2 contracted with Tensor 4 -> Tensor 2, or should this work?
If, it should work, how would that be?
I want to contract to tensors$A_{ij}$ and $B_{ijkl}$ to tensor $C_{kl}$ , like
However, this did not work and gave a segmentation fault.
I am using the C interface and am trying to write haskell bindings. The error can also be reproduced in a refactored version of C++ example 5.
Compiled with OpenMPI v5.0.6 and G++ v14.3.0
Is this wanted behavior for Tensor 2 contracted with Tensor 4 -> Tensor 2, or should this work?
If, it should work, how would that be?