an old one
https://community.esri.com/message/434687?commentID=434687#comment-434687
and it isn't done in the field calculator
fc = r"C:\GIS\A_Tools_scripts\aprx_info\aprx_info.gdb\SamplingGrids"
a = arcpy.da.TableToNumPyArray(fc, "Shape_Area")
a = a.view('float')
N = len(a)
loga = np.log10(a)
_sum = np.cumsum(loga)
gm = 10.0**((_sum[-1])/N)
a
array([1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000., 1000000., 1000000., 1000000., 1000000., 1000000.,
1000000., 1000000.])
N
100
gm
1000000.0