# MATLAB: ODE solver with variable derivative

function handleodeode45

This question relates to the function handle to determine the derivative vector for use in ODE45.
My 'dx' changes during each iteration of my code (my dx is dependent on applied forces), as such I need a way of updating the force within the function. A simple example is shown below.
``function dx = functionhandle(t,x_current)dx(1) = x_current(1)*F_x end``
and then I would call this function handle in my main script to determine the new statespace
``[t,x_new] = ODE45(@functionhandle,[0 dt/2 dt],x_current)``
where x_new is my updated statespace. My question can be boiled down to this: How do I retreive F_x within the function handle to tabulate dx.

``function dx = forcefunction(t,x_current,Pars4function)% Example with sinusiodaly varying F:A = Pars4function(1);w = Pars4function(2);F_x = A*sin(w*t);dx(1) = x_current(1)*F_x;end``
``x0 = 0.1;   % Initial conditiont0 = 0;     % Start-timetend = 50;  % end-timeA = 2;      % amplitude of force w = 1/2/pi; % angular frequencyt_span = linspace(t0,tend,5001);[t,x_all] = ode45(@(x,t) forcefunction(t,x,[A,w]),t_span,x0);``