code: def update(self):
          '''
          Updates the non-primitive objects needed for solution, using primitive
          attributes.  This includes defining a "utility from conformity" function
          conformUtilityFunc, a grid of population punk proportions, and an array
          of future punk proportions (for each value in the grid).  Results are
          stored as attributes of self.
  
          Parameters
          ----------
          none
  
          Returns
          -------
          none
          '''
          self.conformUtilityFunc = lambda x : stats.beta.pdf(x,self.uParamA,self.uParamB)
          self.pGrid = np.linspace(0.0001,0.9999,self.pCount)
          self.updateEvolution(f update(self):
          '''
          Updates the non-primitive objects needed for solution, using primitive
          attributes.  This includes defining a "utility from conformity" function
          conformUtilityFunc, a grid of population punk proportions, and an array
          of future punk proportions (for each value in the grid).  Results are
          stored as attributes of self.
  
          Parameters
          ----------
          none
  
          Returns
          -------
          none
          '''
          self.conformUtilityFunc = lambda x : stats.beta.pdf(x,self.uParamA,self.uParamB)
          self.pGrid = np.linspace(0.0001,0.9999,self.pCount)
          self.updateEvolution()
docs: Updates the non-primitive objects needed for solution, using primitive
          attributes.  This includes defining a "utility from conformity" function
          conformUtilityFunc, a grid of population punk proportions, and an array
          of future punk proportions (for each value in the grid).  Results are
          stored as attributes of self.
  
          Parameters
          ----------
          none
  
          Returns
          -------
          none