What do you mean by “unless I set the bc to be empty”?
For setting periodic bcs with dolfinx_mpc, you need to give Dirichlet bcs as an input, as it removes these DOFs from the multipoint constraint.
If you do not set Dirichlet bcs to you problem, then you still need to provide empty bcs (at least for python).
I think the issue here is that you have not vectorized the input to the mapping functions. It expects a (3, num_points) array (flattened as a span in C++), not an array of len (3)
Do you refer to the periodic_relation term? I have also suspicious about this variable, I went to the source code and found that the function is designed as follows:
I suppose that I should create a function who receivs a span and returns to a vector, but I can not find any errors in my code, since this function is not that complicated. Do you know how to fix it, or is there any related demos? Thanks!