title: Return values from function within a class - list turns into instancemethod
body: <p>I have a model class which is called by a Setup class. The setup class loads some data and the setup data assigns it as evaluation data.</p>
  
  <pre><code>class model(object):
  
  def __init__(self,br):
      self.br = br
      self.observations = self.getObs(self.br)
  
  class setup(object):
  
     def __init__(self):
       br='n1'
       self.model = model(project, br)
  
     def simulation(self,vector):
       self.model._run()
       simulations = list(self.model.results)
       return simulations
  
     def evaluation(self):
       observations = list(self.model.observations)
       print('Type Evaluation:')        
       print(type(observations))
      return observations
  
     def likelihood(self,simulation,evaluation):
       likelihood= -spotpy.likelihoods.rmse(evaluation, simulation)
       return likelihood
  </code></pre>
  
  <p>When I try to call evaluation in the likelihood function, I do get an error, that evulation is an instancemethod and not an array. For some functions some more brackets do the job, but I want to return the observations as a list. Interestingly simulation does want I want it to do.  </p>
  
  <p>Within the function evaluation the observation is a list, but when called from another function data is returned as a instance method. Any ideas?</p>