def METHOD_NAME(self, var):
    """Add a new variable to this collection
    Minimum requirement for new variables are attributes var_name and
    units.
    Parameters
    ----------
    var : Variable
        new variable definition
    Raises
    ------
    VariableDefinitionError
        if a variable is already defined under that name
    Returns
    -------
    None
    """
    if not isinstance(var.var_name, str):
        raise ValueError("Attr. var_name needs to be assigned to input variable")
    if var.var_name in self.all_vars:
        raise VariableDefinitionError(f"variable with name {var.var_name} is already defined")
    if not isinstance(var, Variable):
        raise ValueError("Can only add instances of Variable class...")
    if not isinstance(var.units, str):
        if not isinstance(var.units, Unit):
            raise ValueError("Please assign a unit to the new input variable")
        var.units = str(var.units)
    self._all_vars.append(var.var_name)
    self._vars_added[var.var_name] = var