code: public static function GEOMEAN(...$args)
      {
          $aArgs = Functions::flattenArray($args);
  
          $aMean = MathTrig::PRODUCT($aArgs);
          if (is_numeric($aMean) && ($aMean > 0)) {
              $aCount = self::COUNT($aArgs);
              if (self::MIN($aArgs) > 0) {
                  return pow($aMean, (1 / $aCount));
              }
          }
  
          return Functions::NAN();
      }
docs: GEOMEAN.
  
  Returns the geometric mean of an array or range of positive data. For example, you
  can use GEOMEAN to calculate average growth rate given compound interest with
  variable rates.
  
  Excel Function:
  GEOMEAN(value1[,value2[, ...]])
  
  @category Statistical Functions
  
  @param mixed ...$args Data values
  
  @return float