If you model the acceleration of a particle for small changes in speed as
$$ a(v) = A_0 + A_1 v + A_2 v^2 $$
with appropriate constants (like $A_0$ with gravity and $A_2$ with drag) then you can calculate the position $\Delta x$ and velocity change $\Delta v$ from the current speed $v_1$ ( $v \rightarrow v_1 + \Delta v$) as
$$
\Delta t = \int_{v_1}^{v_1+\Delta v} \frac{1}{a(v)}\,{\rm d} v \\
\Delta x = \int_{v_1}^{v_1+\Delta v} \frac{v}{a(v)}\,{\rm d} v
$$
The result is well defined, but quite complex. You can simplify things a bit for simulations by only considering 2nd order terms of $\Delta v$. Simplifications can be made then using the constant $a_1 = a(v_1) = A_0 + A_1 v_1 + A_2 v_2^2$
$$
\Delta t = \frac{v-v_1}{a_1} - \frac{(v-v_1)^2}{2 a_1^2} (A_1 + 2 A_2 v_1) \\
\Delta x = \frac{v^2-v_1^2}{2 a_1} - \frac{v_1 (v-v_1)^2}{2 a_1^2} (A_1 + 2 A_2 v_1)
$$
Example
Initial Conditions:
$$a(v) = 10 - 1 v - \frac{1}{5} v^2 \\
v_1 = 3 \\
a_1 = 10 - 1 3 - \frac{9}{5} = \frac{26}{5} = 5.2
$$
Step $\Delta v = 0.5$, $v = v_1 + \Delta v = 3.5$ with exact solution $\Delta t = 0.10632$, $\Delta x = 0.3430$, and approximate solution
$$ \Delta t = \frac{5 (v-3)}{26} + \frac{55 (v-3)^3}{1352} = 0.10632
\\ \Delta x = \frac{5 (v^2-9)}{52} + \frac{165 (v-3)^3}{1352} = 0.3430 $$
so the simulation (for example) would move from
$$ \begin{Bmatrix} t_1=10 \\ x_1=1 \\ v_1 = 3 \\ a_1 = 5.2 \end{Bmatrix} \rightarrow \begin{Bmatrix} t_2=10.1053 \\ x_2=1.3430 \\ v_2 = 3.5 \\ a_2 = 4.05 \end{Bmatrix}$$
Impulse Calculation
Now you can turn the solution around and state that
$$ \Delta v = \frac{A_0 + A_1 v_1 + A_2 v_1^2}{A_1 + 2 A_2 v_1} \left( 1 - \sqrt{ 1 - 2 (A_1 + 2 A_2 v_1) \Delta t} \right) $$
which is a change is velocity over some time step, with impulse $J = m \Delta v$.