This should be the case when using scatter_, and I guess I had some intermediate results stored in Fint_MAT.
After rerunning I get these results:
tensor([[-0.8591,  0.8688,  1.2835,  0.9208,  0.1976,  1.0741, -1.4244,  0.9609,
          1.0544,  0.2955, -2.0284,  2.2574,  0.2363, -0.5887,  0.4460, -1.2576,
          0.2777, -0.0992, -1.1086, -0.0031, -0.8203,  0.4957, -0.8439, -0.8891,
          0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,
          0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,
          0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000],
        [ 0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,
          0.0000,  0.0000,  0.0000,  0.0000, -0.4912,  0.7667,  1.0390, -0.9783,
         -0.2817,  0.8187,  0.0521,  0.1803,  1.7951,  0.3633,  1.3415, -0.9563,
         -1.0455, -2.2024, -0.4149, -0.0370,  1.4790, -0.5650, -2.1901,  0.3896,
          0.3772,  0.1150,  1.3569,  1.5365,  0.0000,  0.0000,  0.0000,  0.0000,
          0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000],
        [ 0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,
          0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,
          0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,  0.0000,
          0.3428, -1.2165, -0.9348,  2.0201,  0.8961, -0.2702, -0.2217, -1.8465,
          0.0554, -0.3630,  2.3023,  1.0387, -0.0799, -0.9479, -0.9105,  0.4960,
         -0.7692, -0.6591, -1.1607, -2.1668, -0.1858, -0.6057,  0.5822,  0.5612]])

which seem to look as you’ve described them.