2

I took a break from Stack Exchange, jumped in my spacecar and flew the following squiggle:

$$a_x = \cos(10 \ t)$$ $$a_y = \sin(5 \ t)$$ $$a_z = \cos(2 \ t)$$

starting at xyz = [-0.01, 0, -0.05] and v_xyz = [0, -0.2, 0] with a total flight time of $2 \pi$.

When I got home I was told "Oh that was a lovely lissajous squiggle, but how much delta-v did you put on the car?"

I said "Oh, not much" and made a beeline to my computer to get back on Stack Exchange.

Question: How much delta-v DID I use?

  1. If I have an acceleration vector (same as thrust vector; lets assume mass doesn't change) as a function of time $\mathbf{F}(t)$ what is the general integral expression for total delta-v should I use?
  2. If someone looked up my trip in Horizons and got my state vectors $\mathbf{x}(t)$ and $\mathbf{v}(t)$ and had a numerical integrator and interpolator, what is the general integral expression for total delta-v should they use?

"bonus points" for including a Python script in your answer

squiggle trajectory squiggle trajectory

3D plot of position (returns to origin) and plots of velocity components

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from scipy.integrate import odeint as ODEint

def deriv(X, t): x, v = X.reshape(2, -1) ax = np.cos(10t) ay = np.sin(5t) az = np.cos(2* t) return np.hstack((v, [ax, ay, az]))

times = np.linspace(0, 2*np.pi, 1001)

X0 = np.hstack(([-0.01, 0, -0.05], [0, -0.2, 0]))

answer, info = ODEint(deriv, X0, times, full_output=True)

xyz, vxyz = answer.T.reshape(2, 3, -1)

fig = plt.figure() ax = fig.add_subplot(1, 1, 1, projection='3d', proj_type = 'ortho') x, y, z = xyz ax.plot(x, y, z) ax.plot(x[:1], y[:1], z[:1], 'ok') ax.plot(x[-1:], y[-1:], z[-1:], 'or') plt.show()

for thing in vxyz: plt.plot(thing) plt.show()

uhoh
  • 148,791
  • 53
  • 476
  • 1,473
  • 1
    This feels more like code golf than a genuine space question... at best it's a math question about basic calculus. Either way, I don't think it's a good fit here. This is written like a homework assignment. This is Q&A, not Mechanical Turk. – J... Oct 19 '20 at 14:30
  • @J... as far as I know the concept of "delta-v" is specific to spaceflight. If you can show otherwise I would be happy to find out. – uhoh Oct 19 '20 at 14:35
  • That's not the point. – J... Oct 19 '20 at 14:40
  • That's exactly the point. "is written like a homework assignment" just means that it is stylized. After writing over 2001 questions here you have to mix it up a bit to stay fresh :-) – uhoh Oct 19 '20 at 14:43
  • 2
    @J... When a question is too big or complicatged to fit into one SE question post, we break it up into smaller answerable pieces. I'm currently still uncomfortable with this hand-waving answer using an unexplained and unsourced equation, so I first asked this question so that the equation could have a foundation. Next I made this plot In order to start thinking about extracting post-launch delta-v for deep space spacecraft using its state vectors. – uhoh Oct 19 '20 at 14:52
  • @J... Once we establish a basis for doing that, then we have to deal with real world gravity-gradient potentials. This all goes back to this question when I first started trying to differentiate propulsive maneuvers from state vectors. Maybe all together we can finally get an answer to this old question, one of the items on my bucket list, along with everting a sphere. – uhoh Oct 19 '20 at 14:56
  • You're trying to run before you can walk. This question is still off topic. – J... Oct 19 '20 at 15:01
  • Hardly, this steady, methodical approach to problem solving is "examplary" of Gradatim Ferociter, and "How to calculate delta-v?" has always been squarely on-topic in Space Exploration SE and always will be. – uhoh Oct 19 '20 at 15:11

1 Answers1

5

As $\Delta v$ is just change in velocity, we can just integrate the norm of the acceleration function over time:

$$\Delta v = \int|\mathbf{a}(t)| dt$$

You're out of luck getting a closed form of that integral though.

As far as analytical solutions goes, we can note that at $t = \frac{\pi}{2}$, all of $a_x$, $a_y$ and $a_z$ are maxed out, and hence $\Delta v < 2\pi\sqrt{3}$.

Similarly, the acceleration at all times is going to be greater than or equal to one of the components, and since they are trigonometric functions, their integrals are trivial.

$$4 < \Delta v < 2\pi\sqrt{3}$$

I can't see that there's much more to it from here than just putting the acceleration function into a numerical integrator. It's a smooth curve, so they are good at this.

Integral(sqrt(cos(10*x)^2 + sin(5*x)^2 + cos(2*x)^2),0,2*pi)
-> 7.5279

Or, by the definition of acceleration, if what you have is velocity data:

$$\Delta v = \int\left|\frac{d\mathbf{v}}{dt}\right| dt$$

Which if you have tabular data and don't bother with interpolation, is simply:

$$\Delta v =\sum |d\mathbf{v}|$$

Which is just summing up all the velocity differences between the discrete data points.

  • Great answer. The analytic solution of the line integral seems to be an elliptic integral, is that right? – 0xDBFB7 Oct 24 '20 at 14:37