Assigning Field Values

I'm working on a script in which I need to assign field values to a grid. So far I've managed well enough, but something odd has happened.

Here's some sample code:

Declaration of the field and field probe:
my \$path_field = \$current_doc->CreateField(1, ["Name" => "Path Field"]);
my \$path_probe = \$path_field->CreateFieldProbe([ProbeMode => "NearestGridPoint"]);

Setting the field values:
for (my \$i = 0; \$i < \$temp_traj_low->Trajectory->NumFrames; ++\$i){
            \$temp_traj_low->Trajectory->CurrentFrame = \$i + 1;
            
            \$x = \$temp_traj_low->AsymmetricUnit->Centroids("ORIGIN")->FractionalXYZ->X;
            \$y = \$temp_traj_low->AsymmetricUnit->Centroids("ORIGIN")->FractionalXYZ->Y;
            \$z = \$temp_traj_low->AsymmetricUnit->Centroids("ORIGIN")->FractionalXYZ->Z;
            \$path_probe->ProbeFractionalPosition = Point(X => \$x, Y => \$y, Z => \$z);
            \$path_probe->FieldValue = \$temp_traj_low->Trajectory->FrameEnergy;
            }
For some reason field values other than the ones set by the nearest grid point of the probe have become nonzero.
(They generally surround the assigned points).

What exactly is happening here?