# How quick was the solar wind particle decrease detected by Voyager 1?

In the graph below, does each dot represent the passage of six hours? If so, does that mean the last dramatic decrease in solar wind particles, from ≈24 particles/sec to ≈10 particles/sec occurred over a six hour period. If not, is it possible to determine how quickly that drop occurred?

Source

Plot showing a dramatic decrease in the rate of solar wind particle detection by Voyager 1 (October 2011 through October 2012)

• You can find the underlying data and analysis background here: sd-www.jhuapl.edu/VOYAGER I suspect that will give you finer time resolution, at the cost of quite a bit of noise. Jun 7, 2019 at 19:09
• @BobJacobsen. Thanks. I wish I knew how to read through all of that stuff. Jun 8, 2019 at 3:30
• @BobJacobsen thanks for the link! Feel free to comment or improve on my answer
– uhoh
Jun 8, 2019 at 15:58

Thanks to @BobJacobsen's comment the data and other related information can be found in these links:

I've downloaded the 1 day and 1 hour averaged data as well as the background-subtracted data sets for 2012:

v1_2012_ion_flux_1d.txt
v1_2012_ion_flux_1h.txt
v1_pl0s_1d_2012_bgcor.txt


The data is Voyager 1 LECP: Z>=1 Ion Intensities [ions/(cm^2 sec ster MeV)] and the eight traces represent the eight energy passbands (MeV per nucleon):

0.040 - 0.053
0.053 - 0.085
0.085 - 0.139
0.139 - 0.220
0.220 - 0.550
0.550 - 1.050
1.050 - 2.000
2.000 - 4.000


The 1 hour data (as BobJacobsen points out) is too noisy due to low counting statistics perhaps, but the 1 day data shows a fairly smooth fall-off over a few days. So I don't think there is anything happening that is more abrupt than what you see in the plot in your question.

Python script to read the data files and plot them:

import numpy as np
import matplotlib.pyplot as plt
import glob

fnames = glob.glob('v1_*2012*.txt')

linez, nums = [], []
for n, fname in zip((2, 2, 7), fnames):
with open(fname, 'r') as infile:
print fname, len(lines), len(lines[42].split())
linez.append(lines)
rows = []
for line in lines[n:]:
try:
row = [float(x) for x in line.split()]
if len(row)>18:
rows.append(row)
except:
pass
a = np.array(rows).T.copy()
a[a<0] = np.nan
nums.append(a)

print ([n.shape for n in nums])

if True:
plt.figure(figsize=[9, 6])
for thing in nums[0][4::2]:
plt.plot(nums[0][1], thing)
plt.yscale('log')
plt.title('one day averages', fontsize=18)
plt.xlabel('days in 2012', fontsize=16)
plt.show()

if True:
plt.figure(figsize=[9, 6])
for thing in nums[1][5::2]:
plt.plot(nums[1][4], thing)
plt.yscale('log')
plt.title('one hour averages', fontsize=18)
plt.xlabel('days in 2012', fontsize=16)
plt.show()

if True:
plt.figure(figsize=[9, 6])
for thing in nums[2][3::2]:
plt.plot(nums[2][1], thing)
plt.yscale('log')
plt.title('one day averages, processed', fontsize=18)
plt.xlabel('days in 2012', fontsize=16)
plt.show()