@classmethod
def from_dictionary(cls, args):
    """Construct settings from dictionary containing parameter values.
    
        Construct an instance of RbfoptSettings by looking up the value
        of the parameters from a given dictionary. The dictionary must
        contain only parameter values in the form args['name'] =
        value. Anything else present in the dictionary will raise an
        exception.

        Parameters
        ----------

        args : Dict[string]
            A dictionary containing the values of the parameters in a
            format args['name'] = value. 

        Returns
        -------
        RbfoptSettings
            An instance of the object of the class.

        Raises
        ------
        ValueError
            If the dictionary contains invalid parameters.
        """
    valid_params = vars(cls())
    for param in args.keys():
        if param not in valid_params:
            raise ValueError('Parameter name {:s}'.format(param) +
                'not recognized')
    return cls(**args)
