Takes a list of times, values, and an interpolation method
make_forcing_function(times, values, type, output_times)time values for the forcing function
magnitude for each time (same length of time)
string indicating the type of forcing function can be one of the following:
"step" for constant values that switch to new values at the times
"linear" to linearly interpolate between the points
vector of simulation output times
matrix with two columns: first column is a vector of times and the second column is a vector of values