def root_terms
      if terminal?
        [self]
      else
        atom.scale.root_terms.map do |t|
          self.class.new(:atom => t.atom, :exponent => t.exponent * exponent)
        end
      end
    end
def root_terms
      if terminal?
        [self]
      else
        atom.scale.root_terms.map do |t|
          self.class.new(:atom => t.atom, :exponent => t.exponent * exponent)
        end
      end
    end
The base units this term is derived from
 @return [Array] An array of Unitwise::Term
 @api public