Added functions grad and dir_deriv to compute a gradient vector and directional derivative respectively.
Changed all functions such that the variable list is an optional input, and in cases where it is omitted the variable list is taken from the given function.
Added functions grad and dir_deriv to compute a gradient vector and directional derivative respectively.
Changed all functions such that the variable list is an optional input, and in cases where it is omitted the variable list is taken from the given function.
Added many unit tests.