parameters: (self, start_index=0)
return_statement: return constraints
docstring: Return a list of lambda functions expressing the domain bounds as linear constraints. Used by COBYLA.
  
          Since COBYLA in scipy only optimizes arrays, we flatten out our points while doing multipoint EI optimization.
          But in order for the constraints to access the correct index, the RepeatedDomain class has to signal which index
          the TensorProductDomain should start from, using the start_index optional parameter.
  
          That is, RepeatedDomain deals with N d-dimensional points at once. Thus we need N*d constraints (one per
          dimension, once per repeat). Additionally, instead of receiving points with shape (num_repeats, dim), COBYLA
          requires that the points are flattened: (num_repeats*dim, ). Thus this method must know *where* in the
          flattened-list it is writing to and reading from: signaled via ``start_index``.
  
          :param start_index: the dimension this tensor product domain should start indexing from
          :type start_index: int >= 0
          :return: a list of lambda functions corresponding to constraints
          :rtype: array of lambda functions with shape (dim * 2)
docstring_summary: Return a list of lambda functions expressing the domain bounds as linear constraints. Used by COBYLA.
docstring_tokens: Return a list of lambda functions expressing the domain bounds as linear constraints . Used by COBYLA .
function: def get_constraint_list(self, start_index=0):
          """Return a list of lambda functions expressing the domain bounds as linear constraints. Used by COBYLA.
  
          Since COBYLA in scipy only optimizes arrays, we flatten out our points while doing multipoint EI optimization.
          But in order for the constraints to access the correct index, the RepeatedDomain class has to signal which index
          the TensorProductDomain should start from, using the start_index optional parameter.
  
          That is, RepeatedDomain deals with N d-dimensional points at once. Thus we need N*d constraints (one per
          dimension, once per repeat). Additionally, instead of receiving points with shape (num_repeats, dim), COBYLA
          requires that the points are flattened: (num_repeats*dim, ). Thus this method must know *where* in the
          flattened-list it is writing to and reading from: signaled via ``start_index``.
  
          :param start_index: the dimension this tensor product domain should start indexing from
          :type start_index: int >= 0
          :return: a list of lambda functions corresponding to constraints
          :rtype: array of lambda functions with shape (dim * 2)
  
          """
          constraints = []
          for i, interval in enumerate(self._domain_bounds):
              constraints.append((lambda x: x[i + start_index] - interval.min))
              constraints.append((lambda x: interval.max - x[i + start_index]))
          return constraints
function_tokens: def get_constraint_list ( self , start_index = 0 ) : constraints = [ ] for i , interval in enumerate ( self . _domain_bounds ) : constraints . append ( ( lambda x : x [ i + start_index ] - interval . min ) ) constraints . append ( ( lambda x : interval . max - x [ i + start_index ] ) ) return constraints