code: def get_mean(self, distribution_function):
          
          name = self.distribution_name
          params = self.random_function_params
          if name == 'normal':
              return params[0]
          if name == 'uniform':
              return (params[0] + params[1]) / 2.
          if name == 'choice':
              return params[0].mean()
          if name == 'triangular':
              return (params[0] + params[1] + params[2]) / 3.
          return distribution_function().mean()
docs: Get the mean value for a distribution.
          If the distribution function is [normal, uniform,choice,triangular] the analytic value is being calculted.
          Else, the distribution is instantiated and then the mean is being calculated.
  
          :param distribution_function:
          :return: the mean as a scalar