code: def type(self):
          
          if self.xc in self.defined_aliases: return self.defined_aliases[self.xc].type
          xc = (self.x, self.c)
          if xc in self.defined_aliases: return self.defined_aliases[xc].type
  
          # If self is not in defined_aliases, use LibxcFunc family
          if self.xc is not None: return self.xc.family
          return "+".join([self.x.family, self.c.family])
docs: The type of the functional.