class_docstr: Class used to generate new coordinates based on the distorted
  Cauchy-Lorentz distribution. Depending on the steps within the strategy
  chain, the class implements the strategy for generating new location
  changes.
  
  Parameters
  ----------
  lb : array_like
      A 1-D numpy ndarray containing lower bounds of the generated
      components. Neither NaN or inf are allowed.
  ub : array_like
      A 1-D numpy ndarray containing upper bounds for the generated
      components. Neither NaN or inf are allowed.
  visiting_param : float
      Parameter for visiting distribution. Default value is 2.62.
      Higher values give the visiting distribution a heavier tail, this
      makes the algorithm jump to a more distant region.
      The value range is (0, 3].
  rand_state : RandomState object
      A numpy.random.RandomState object for using the current state of the
      created random generator container.
class_docstr_tok: ["Class","used","to","generate","new","coordinates","based","on","the","distorted","Cauchy-Lorentz","distribution",".","Depending","on","the","steps","within","the","strategy","chain",",","the","class","implements","the","strategy","for","generating","new","location","changes",".","Parameters","--","--","--","--","--","lb",":","array_like","A","1-D","numpy","ndarray","containing","lower","bounds","of","the","generated","components",".","Neither","NaN","or","inf","are","allowed",".","ub",":","array_like","A","1-D","numpy","ndarray","containing","upper","bounds","for","the","generated","components",".","Neither","NaN","or","inf","are","allowed",".","visiting_param",":","float","Parameter","for","visiting","distribution",".","Default","value","is","2.62",".","Higher","values","give","the","visiting","distribution","a","heavier","tail",",","this","makes","the","algorithm","jump","to","a","more","distant","region",".","The","value","range","is","(","0",",","3","]",".","rand_state",":","RandomState","object","A","numpy.random.RandomState","object","for","using","the","current","state","of","the","created","random","generator","container","."]
docstr: Formula Visita from p. 405 of reference [2] 
docstr_tok: ["Formula","Visita","from","p.","405","of","reference","[","2","]"]
code: def visit_fn(self, temperature):
      """Formula Visita from p. 405 of reference [2]"""
      factor1 = np.exp(
          np.log(temperature) / (self.visiting_param - 1.0)
      )
      factor2 = np.exp(
          (4.0 - self.visiting_param)
          * np.log(self.visiting_param - 1.0)
      )
      factor3 = np.exp(
          (2.0 - self.visiting_param)
          * np.log(2.0)
          / (self.visiting_param - 1.0)
      )
      factor4 = (
          np.sqrt(np.pi)
          * factor1
          * factor2
          / (factor3 * (3.0 - self.visiting_param))
      )
      factor5 = 1.0 / (self.visiting_param - 1.0) - 0.5
      d1 = 2.0 - factor5
      factor6 = (
          np.pi
          * (1.0 - factor5)
          / np.sin(np.pi * (1.0 - factor5))
          / np.exp(gammaln(d1))
      )
      sigmax = np.exp(
          -(self.visiting_param - 1.0)
          * np.log(factor6 / factor4)
          / (3.0 - self.visiting_param)
      )
      x = sigmax * self.rand_state.normal()
      y = self.rand_state.normal()
      den = np.exp(
          (self.visiting_param - 1.0)
          * np.log((np.fabs(y)))
          / (3.0 - self.visiting_param)
      )
      return x / den
  
imports: from __future__ import division, print_function, absolute_import
  import numpy
  from scipy.optimize import OptimizeResult
  from scipy.optimize import minimize
  from scipy.special import gammaln
  from scipy._lib._util import check_random_state
label_desc: Use image node_id 3 for calling the VisitingDistribution obj's underlying member method code with example usage: obj.visit_fn(temperature) and returns: unknown