class_docstr: The frequency quadruple side band class.
  
  The elements of the quadruple-side-band type frequency band are the
  central frquency, the relative (main) side band frequency (relative to the
  center - left and right), the sub-side band frequency (relative to the
  offset side-band(s)) and their bandwidths. Optionally a unit (defaults to
  GHz) may be specified. No clever unit conversion is done here, it's just
  used for checking that two ranges are comparable.
  
  Frequency Quadruple Side Band is supposed to describe the special type of
  bands commonly used in temperature sounding from Passive Microwave
  Sensors. When the absorption band being observed is symmetrical it is
  advantageous (giving better NeDT) to sense in a band both right and left of
  the central absorption frequency. But to avoid (CO2) absorption lines
  symmetrically positioned on each side of the main absorption band it is
  common to split the side bands in two 'side-side' bands.
class_docstr_tok: ["The","frequency","quadruple","side","band","class",".","The","elements","of","the","quadruple-side-band","type","frequency","band","are","the","central","frquency",",","the","relative","(","main",")","side","band","frequency","(","relative","to","the","center","-","left","and","right",")",",","the","sub-side","band","frequency","(","relative","to","the","offset","side-band","(","s",")",")","and","their","bandwidths",".","Optionally","a","unit","(","defaults","to","GHz",")","may","be","specified",".","No","clever","unit","conversion","is","done","here",",","it","'s","just","used","for","checking","that","two","ranges","are","comparable",".","Frequency","Quadruple","Side","Band","is","supposed","to","describe","the","special","type","of","bands","commonly","used","in","temperature","sounding","from","Passive","Microwave","Sensors",".","When","the","absorption","band","being","observed","is","symmetrical","it","is","advantageous","(","giving","better","NeDT",")","to","sense","in","a","band","both","right","and","left","of","the","central","absorption","frequency",".","But","to","avoid","(","CO2",")","absorption","lines","symmetrically","positioned","on","each","side","of","the","main","absorption","band","it","is","common","to","split","the","side","bands","in","two","'side-side","'","bands","."]
docstr: Get the distance to the quadruple side band.
  
  Determining the distance in frequency space between two quadruple side
  bands can be quite ambiguous, as such bands are in effect a set of 4
  narrow bands, two on each side of the main absorption band, and on each
  side, one on each side of the secondary absorption lines. To keep it as
  simple as possible we have until further decided to define the distance
  between such two bands to infinity if they are determined to be equal.
  
  If the frequency entered is a single value, the distance will be the
  minimum of the distances to the two outermost sides of the quadruple
  side band.
  
  If the frequency entered is a tuple or list and the two quadruple
  frequency bands are contained in each other (equal) the distance will
  always be zero.
docstr_tok: ["Get","the","distance","to","the","quadruple","side","band",".","Determining","the","distance","in","frequency","space","between","two","quadruple","side","bands","can","be","quite","ambiguous",",","as","such","bands","are","in","effect","a","set","of","4","narrow","bands",",","two","on","each","side","of","the","main","absorption","band",",","and","on","each","side",",","one","on","each","side","of","the","secondary","absorption","lines",".","To","keep","it","as","simple","as","possible","we","have","until","further","decided","to","define","the","distance","between","such","two","bands","to","infinity","if","they","are","determined","to","be","equal",".","If","the","frequency","entered","is","a","single","value",",","the","distance","will","be","the","minimum","of","the","distances","to","the","two","outermost","sides","of","the","quadruple","side","band",".","If","the","frequency","entered","is","a","tuple","or","list","and","the","two","quadruple","frequency","bands","are","contained","in","each","other","(","equal",")","the","distance","will","always","be","zero","."]
code: def distance(self, value):
      """Get the distance to the quadruple side band.
  
      Determining the distance in frequency space between two quadruple side
      bands can be quite ambiguous, as such bands are in effect a set of 4
      narrow bands, two on each side of the main absorption band, and on each
      side, one on each side of the secondary absorption lines. To keep it as
      simple as possible we have until further decided to define the distance
      between such two bands to infinity if they are determined to be equal.
  
      If the frequency entered is a single value, the distance will be the
      minimum of the distances to the two outermost sides of the quadruple
      side band.
  
      If the frequency entered is a tuple or list and the two quadruple
      frequency bands are contained in each other (equal) the distance will
      always be zero.
  
      """
      left_left = self.central - self.side - self.sideside
      right_right = self.central + self.side + self.sideside
  
      if self == value:
          try:
              left_side_dist = abs(
                  value.central
                  - value.side
                  - value.sideside
                  - left_left
              )
              right_side_dist = abs(
                  value.central
                  + value.side
                  + value.sideside
                  - right_right
              )
          except AttributeError:
              left_side_dist = abs(value - left_left)
              right_side_dist = abs(value - right_right)
  
          return min(left_side_dist, right_side_dist)
      else:
          return np.inf
  
imports: import numbers
  from contextlib import suppress
  from typing import NamedTuple
  import numpy
label_desc: Use image node_id 5 for calling the FrequencyQuadrupleSideBand obj's underlying member method code with example usage: obj.distance(value) and returns: min, np