class_docstr: Chebyshev polynomial models and functions,
  including specific methods for Tn(z) n=2,4,6,8,16, Equation (27-33) of [2]
  
  NOTE: default is T8(z)
code: def __init__(
      self,
      order=8,
      name="poly",
      metric=lambda x: numpysum(x * x),
      sigma=1.0,
  ):
      Polynomial.__init__(self, name, metric, sigma)
      if order == 2:
          self.coeffs = chebyshev2coeffs
      elif order == 4:
          self.coeffs = chebyshev4coeffs
      elif order == 6:
          self.coeffs = chebyshev6coeffs
      elif order == 8:
          self.coeffs = chebyshev8coeffs
      elif order == 16:
          self.coeffs = chebyshev16coeffs
      else:
          raise NotImplementedError("provide self.coeffs 'by hand'")
      return
  
imports: from .abstract_model import AbstractModel
  from numpy import sum
  from numpy import asarray
  from mystic.math import polyeval, poly1d
  from mystic.models._model_helper import chebyshev2coeffs, chebyshev4coeffs, chebyshev6coeffs, chebyshev8coeffs, chebyshev16coeffs
label_desc: Use image node_id 1 to create a new Chebyshev object from inherited base classes: Polynomial with example: obj = Chebyshev(order, name, metric, sigma)