Get contacted elements?

Hi, for each element, I am trying to get its contacted elements. I used Geometry.DoesIntersected node to detect the contacted elements. But for some, it failed to detect the contacted elements, while for some others, it detected the elements that are not contacted actually.
For example, these two columns failed to detected the contacted slab and some beams.


Some beams also failed to detect some contacted columns and walls.

Some walls also failed to detect some contacted elements.

While some walls detected the uncontacted slab.

Are there some nodes or ways to do a better detection? Thanks!
Here are the dynamo and model files.

dynamo.dyn (31.1 KB)