def METHOD_NAME(self, name, data, attr, datatype=None):
    """
    Add the given unknown to this equation system.
    name: Name of the unknown.
    data: Data for the unknown (raw, as a dict from the output file).
    attr: List of attributes set to this unknown in the output file.
    """
    if datatype is not None:
        o = datatype(name=name, data=data, attr=attr, grid=self.grid, output=self.output)
    elif name in self.SPECIAL_TREATMENT:
        o = self.SPECIAL_TREATMENT[name](name=name, data=data, attr=attr, grid=self.grid, output=self.output)
    else:
        o = UnknownQuantity(name=name, data=data, attr=attr, grid=self.grid, output=self.output)
    setattr(self, name, o)
    self.unknowns[name] = o