class_docstr: AbstractEnsembleSolver base class for mystic optimizers that are called within
  a parallel map.  This allows pseudo-global coverage of parameter space using
  non-global optimizers.
      
class_docstr_tok: ["AbstractEnsembleSolver","base","class","for","mystic","optimizers","that","are","called","within","a","parallel","map",".","This","allows","pseudo-global","coverage","of","parameter","space","using","non-global","optimizers","."]
docstr: update solver state from _bestSolver
docstr_tok: ["update","solver","state","from","_bestSolver"]
code: def __update_state(self):
      """update solver state from _bestSolver"""
      (
          bestpath,
          besteval,
      ) = self._AbstractEnsembleSolver__update_bestSolver()
      if bestpath is besteval is None:
          return
  
      # return results to internals
      self.population = (
          self._bestSolver.population
      )  # XXX: pointer? copy?
      self.popEnergy = self._bestSolver.popEnergy  # XXX: pointer? copy?
      self.bestSolution = (
          self._bestSolver.bestSolution
      )  # XXX: pointer? copy?
      self.bestEnergy = self._bestSolver.bestEnergy
      self.trialSolution = (
          self._bestSolver.trialSolution
      )  # XXX: pointer? copy?
      self._fcalls = self._bestSolver._fcalls  # XXX: pointer? copy?
      self._maxiter = self._bestSolver._maxiter
      self._maxfun = self._bestSolver._maxfun
      # write state relevant for collapse
      self._constraints = self._bestSolver._constraints
      self._termination = self._bestSolver._termination
  
      # write 'bests' to monitors  #XXX: non-best monitors may be useful too
      self._stepmon = bestpath  # XXX: pointer? copy?
      self._evalmon = besteval  # XXX: pointer? copy?
      self.energy_history = None
      self.solution_history = None
      return
  
imports: from mystic.monitors import Null
  from mystic.abstract_map_solver import AbstractMapSolver
  from mystic.tools import wrap_function
  from functools import reduce
label_desc: Use image node_id 22 for calling the AbstractEnsembleSolver obj's underlying member method code with example usage: obj.__update_state() without return types