# How do I calculate velocity after time t under constant horsepower?

I'm working on a simulation of a steam locomotive hauling a train. The mass of the train is m (including loco and tender), current speed is v, and the horsepower of the loco is p. At any given moment the maximum tractive effort (i.e., thrust) of the locomotive is given by $E={{375p}\over{v}}$ (I'm working in units of lbs, mph, and g, and 375 is a rolled-up conversion factor).

So, instantaneous acceleration must be $$a={{375p\over{vm}}}$$

Those amongst you that know about such locomotives will know that effort is capped by the locomotive design so there is a period from rest to a point where ${375p\over{v}}=E_{max}$ where in theory the acceleration is a constant $a={E_{max}\over{m}}$. I'm not too worried about that part, or some of the other small approximations you may have noticed (such as rolling resistance, which is easily approximated by a reduction in $E_{max}$).

Where I'm stuck is how to transform the formula for acceleration above into a formula for speed after some time $t$, where $t_0$ is the moment that constant acceleration ceases and $v_0$ is the speed at that point.

I assume I need to integrate it in some way but it's 20 years since I did any calculus and I'm completely at a loss as to where to start, which is why this is a maths question (and probably pretty simple) rather than a physics one.

A bonus would be if the result could take in air resistance which I'm currently approximating as $R_{air}=0.0046v^2\times{c}$ where $c$ is mostly based on cross-sectional area and is constant for each locomotive. For static calculations I'm just applying this as a reduction of $E{max}$, the same as rolling resistance. The difficulty being that rolling resistance doesn't vary enough to worry about, but air resistance goes from being zero to very important as high speeds are approached.

But a formula which ignored drag would still be useful for low-speed freight trains.

• Work in SI units and you do not need funny factors. -- Also, there must be some effect to prevent infinite acceleration when $v=0$ – Hagen von Eitzen May 15 '18 at 20:57
• As I said in the question, the locomotive is limited in its maximum tractive effort so at $v=0$ the acceleration is defined by $E_{max}$. I could eliminate the conversion factors even without using SI units but I'd rather have the answer in normal everyday units like mph rather than ft/s or whatever (and the input in horsepower rather than kW). Aside from anything else, the source material is all in Imperial units so it's a lot easier to work in that system. – Nagora May 16 '18 at 6:54

You reach constant velocity when thrust equals drag. The drag variable is non linear and is dependent on the speed of the train so it becomes a differential equation. I assume .0046 is 0.5 Cd rho, (rho in slugs). Its easier to consider acceleration as reducing from the moment the train starts to move. Its going to be insignificant at low velocity. Try something like this:

A function for the rate of change of velocity is: $$dv/dt=\frac{\frac{375p}{v}-(.0046v^2\cdot c)}{m}$$

At v = 0 power is infinite which may cause a problem

With $p, c$ and $m$ as constants, this is separable so:

$$\frac{dv}{\frac{375p}{v}-(.0046v^2\cdot c)} = \frac{1}{m}dt$$

Integrating both side will give you velocity as a function of time.

You may want to insert values for those constants otherwise the integration will be uglier.