File:Sunspots-gn-yr-total-smoothed-en.svg
Summary
| Description |
English: Group sunspot number v 2.0, 1610-2015 (SILO data):
|
| Date | |
| Source | Own work |
| Author | DeWikiMan |
| Other versions | German version |
Sources:
- Frédéric Clette et al.: Revisiting the Sunspot Number: A 400-year perspective on the solar cycle. In: Space Sciences Series of ISSI - The Solar Activity Cycle. 2015. DOI:10.1007/978-1-4939-2584-1_3 (For details on the new group v2 number)
- NOAA Space Weather Prediction Center: Predicted Sunspot Number and Radioflux. May 9th, 2016. Accessed June 3rd, 2016.
- WDC-SILSO, Royal Observatory of Belgium, Brussels: group number | In: SILSO: Sunspot Index and Long-term Solar Observations. (Version 2.0 (Alternate series), Svalgaard & Schatten 2015: "backbone" yearly mean group number). Accessed June 3rd, 2016.
First, the file GN_y_tot_V2.0.csv (containing the SILO data) has been extended by adding the predicted values for 2016-2020:
2016.5 3.03 0 0
2017.5 2.13 0 0
2018.5 1.12 0 0
2019.5 0.52 0 0
Then create the smoothed data:
# -*- coding: utf-8 -*-
# based on https://commons.wikimedia.org/wiki/File:Temp-sunspot-co2.svg
# by Leland McInnes aus der englischsprachigen Wikipedia ( https://en.wikipedia.org/wiki/User:Leland_McInnes )
# see also http://scipy-cookbook.readthedocs.io/items/SignalSmooth.html
from decimal import *
import numpy as np
# import matplotlib.pylab as plt
def smooth(signal, window_size):
# fold the data at the edges; this will enable plotting a graph up to the edges based upon the assumption
# that the signal behaved / will behave symmetrically prior to / after data was available;
extended_signal = signal[window_size:0:-1] + signal + signal[-1:-window_size:-1]
s = np.array(extended_signal)
# create an array with values for a hamming window; cf. https://en.wikipedia.org/w/index.php?title=Hamming_window
w = np.blackman(window_size)
# smooth the data
y = np.convolve(w/w.sum(), s, mode="same")
return y[window_size:-window_size+1]
sunspot_file = open("GN_y_tot_V2.0.csv")
data_rows = [x.split() for x in sunspot_file if "*" not in x]
sun_years = [float(x[0]) for x in data_rows]
sunspots_norm = [float(x[1])*12.8 for x in data_rows]
# smoothing to remove high-frequency signal of magnetic cycle
smoothed_sunspots = smooth(sunspots_norm, 33)
smoothed_sunspot_file = open("GN_y_tot_V2.0_smoothed.txt","w")
for i in range(smoothed_sunspots.size):
smoothed_sunspot_file.write(str(sun_years[i]) + ' '+ str(sunspots_norm[i]) + ' ' + str(smoothed_sunspots[i]) +'\n')
smoothed_sunspot_file.close()
Plot with Gnuplot 4.4 using the following script:
set terminal svg enhanced size 1000 425 fname "Nimbus Sans L" fsize 14
set output "sunspots-gn-yr-total-smoothed.svg"
set title "Sunspot Observations, 1610 – 2015" font "Nimbus Sans L, 20"
set datafile missing '"#N/A"'
set obj 1 rectangle behind from screen 0,0 to screen 1,1
set obj 1 fillstyle solid 1.0 fillcolor rgbcolor "light-grey"
set obj 2 rectangle behind from graph 0,0 to graph 1,1
set obj 2 fillstyle solid 1.0 fillcolor rgbcolor "white"
set key below vertical maxcols 1 maxrows 1 width -25 nobox font ",10" samplen 1
set grid noxtics y2tics ls 2
unset ytics
set yrange [0:210]
set label "Maunder\nMinimum" at 1675,107 center
set label "Dalton\nMinimum" at 1813,107 center
set label "Modern\nMaximum" at 1955,159 right
set y2tics border out nomirror 0,50,200
set xrange [1610:2015]
set xtics border out nomirror 1600,50,2050
set mxtics 5
set y2label 'Sunspot number'
set style data lines
plot 0 lt rgbcolor "black" lw 0 title "Group sunspot number V2.0 (SILSO Data): ", \
'GN_y_tot_V2.0_smoothed.txt' using 1:2 lt rgbcolor "red" lw 3 title "yearly avg. (* 12.8 normalized)", \
'GN_y_tot_V2.0_smoothed.txt' using 1:3 lt rgbcolor "black" lw 3 title "33 yrs smoothed"
show label
Licensing
I, the copyright holder of this work, hereby publish it under the following licenses:
| Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License. |
This file is licensed under the Creative Commons Attribution-Share Alike 4.0 International, 3.0 Unported, 2.5 Generic, 2.0 Generic and 1.0 Generic license.
- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
You may select the license of your choice.