Prolongation matrix in dolfinx

Hi,

I am working on implementing LOD-methods in python. For these methods I am working two 2d DG function spaces of degree 1 (a coarse and a fine space). The fine mesh is obtained via dfx.mesh.refine. I am now looking to assemble the prolongation matrix between these two spaces. This would be the same prolongation matrix, that is used in geometric multi-grid methods. I have a very naive implementation that iterates over the fine cells to assemble this matrix. I found this to be necessary, since there I did not find a function for the assembly of interpolation matrices for non-matching meshes. However, I find my implementation to be crude and inefficient. It involves comparing the coordinates of dofs and so on. Therefore, my question is: Is there an efficient way to assemble a prolongation matrix like the one used in multi-grid-methods in dolfinx?

Thank you very much!