Average Solar surface flow

13 Jul 2018 16:09:19 P.A.Semi
updated 10 Jul 2020 19:36:54 P.A.Semi

(as detected from HMI magnetograms)
(A very preliminary version still)

The source of HMI data is the SDO HMI and AIA Joint Science Operations Center (JSOC)
Data processing by P.A.Semi, 2017..2020 ...

Flow direction:

X flow (zonal, red/plus right=faster, blue/minus left=slower):

Y flow (meridional, red/plus down=southward, blue/minus up=northward ):

Scale: (degrees per day)
Actual range: X: -2.71 .. 0.4466 °/d, Y: -0.614 .. 0.4975 °/d
Range of symmetrical average: X: -2.204 .. 0.25 °/d , Y: -0.3836 .. 0.3836 °/d
(Scale of maps: 1 pixel/week horizontal, 1 pixel / 1.5° vertical, range to ± 60°)

Difference from symmetrical global average

(05/2010 - 03/2017)
(Subtracting average from pixels, X,Y red/blue color code amplified, flow-direction code amplified)

Flow direction (difference from symmetrical average):

X flow (zonal, red/plus right, blue/minus left):

Y flow (meridional, red/plus down, blue/minus up):

Average X flow (differential rotation) :

Average Y flow (poleward flow) :

(N-S axis shows latitude with marks by 30°.
Data are available below 60° lat, but already above 45° the data is very noisy.
The other axis is flow speed in degree/day...)

Flow direction color code:

Scale of difference maps:
Actual range: X: -0.4946 .. 0.9285 °/d, Y: -0.342 .. 0.1597 °/d
This was analysed from 69,000 magnetograms, 1 image per hour since 2010.
Each magnetogram is projected onto rectangular projection surface map (2880x1440 from 1024x1024 input images) using perspective projection and two neighbouring maps are compared square by square, in 3° squares in 1.5° spacing, avoiding limb by using only ±60°, producing 81 squares with 2D flow (X,Y), normalized to degree/day units. These are then averaged per week, discarding corners. The process is very noisy, but after averaging >100 images per week, typically 168 images per week, the noise is significantly reduced...

Average flow
(on rectangular projection)
X (average) Y (average) Typical per-week flow      Typical single flow difference

Top row is color-coded direction of flow (both X and Y combined in one picture, with hue encoding direction and lightness+saturation encoding intensity. Red means right/faster flow in X direction, green left/slower down/southward, blue left/slower up/northward -- see "Flow direction color code").
Then X,Y rows with blue minus (left,up) and red plus (right,down).
Images are 1 pixel per week horizontaly, and 3° bin in 1.5° spacing vertically, until ± 60° latitude.

Differential rotation can be viewed as huge flow on equator rightward (faster rotation) and on poles leftward (slower rotation). Further, there is constant flow north up and south down toward poles.

Right column: direction code, X-flow and Y-flow in degree/day within ± 60° latitude. At 60deg there is almost 2 degree / day slower rotation, and 0.38 degree/day poleward flow.

Bottom part (difference from symmetrical average) is interesting.
(Per-latitude average from both hemispheres of either X or Y flow is subtracted from data and color code is amplified.)

There can be seen:

Should it be possible to clear the yearly zebra of incorrect pole rotation, the data could be published or better analysed…

Downloading and quality control of some 60Gb data took few weeks, and single calculation pass takes arround 24 hours on 8 CPUs. (And I repeated it at least 10 times due to various problems.)
It’s problematic to make try-test rotations of North pole, since every such test takes at least 24 hours of computation until results are seen…

Someone asked me, why I want to get rid of that Zebra, since it may be a real phenomenon. But earlier similar calculations, it is visible on SOHO data, it is visible in Stereo data, but in Stereo, looking from different position onto Sun, the flow is different in other parts of year, so it is a problem of view-point and Sun’s pole rotation, not a real phenomenon…

Week of year averages:

(Weekly flow, 2010-2017. Shows systematic error in flow during year.)

It can be seen, that Sun's pole is at different position, that at week 25.8 within year the Sun's north pole is more inclined out from the viewer.
As I calculated previously, the north pole is by 0.12° differently placed than what is specified in both SOHO and SDO fits headers. (precise value may have changed in newer data?)

Fitting SIN() function on weekly chart, the node is at week 25.75, Y range 0.0461 °/day, which yields axis inclination 0.202°, but that makes sinusoidal pattern in X direction, and optimizing both X and Y yields axis inclination 0.12° .
Then there is a problem, how to rotate it right…?

(Previous version of this chart: )

It is interesting, that polar regions (45°-60°) behave opposite than middle latitudes (15°-45°).

Comparing flow on EIT304 channel between SDO and Stereo A shows, that yearly "zebra" pattern is moved in different part of year, as the Sun is viewed from different side.

Sun North pole rotated by 0.12°

(probably not correctly yet?)
Difference from symmetrical average:

X flow (zonal) difference from symmetrical average:

Y flow (meridional) difference from symmetrical average:

Actual range: X: -0.6044 .. 0.5106 °/d, Y: -0.2477 .. 0.1893 °/d

Week of year averages of flow difference from asymmetrical average in Y, northern X and southern X:

Problem with the rotation is, that the source images are somehow rotated (P_Angle) and specify coordinates in Distance, Carrington latitude, Carrington longitude.
Cartesian coordinates of the observatory are not available.

To apply the rotation, I modify P_Angle of the image (rotate image clockwise or counter-clockwise) by cos((FractionalYear-0.74345)*2π) * 0.12°, and I modify Carrington latitude by sin((FractionalYear-0.74345)*2π) * 0.12° . I do not modify Carrington longitude nor Distance.

Again need to say, that it is problematic to make try-test different rotations, since it needs to process 69,000 images to get some result. Flow in each pair of images is _very_ noisy, but averaging 168 frames per week together gives some usable results…
The flow is detected by comparing two images, 3×3 degree boxes, square by square, and seeing, where it best matches when moved, with centi-pixel resolution (0.01 pixel), linear interpolation …

(SOHO and SDO use Carrington pole position from mid 19th century, and getting it wrong only by 0.12° was really good back then, but is somehow harassing now…)

The difference in position of Solar north pole from Carrington parameters is already known and described:

Flow separated by class of pixel, as pole is rotated by 0.12° (which still leaves some yearly zebra-pattern in X charts, while it almost clears yearly zebra-pattern in Y charts) :
Class of pixels
Flow direction (diff)X (diff)Y (diff)

"Cold" - (Weak magnetic field in range +- 10 Gauss)

(Cold spots - southern hemisphere rotates faster)

(Cold spots - southward flow anomaly on north hemisphere at 2010, at southern hemisphere at 2016-2019)

"Hot" - (Strong magnetic field - sunspots and active regions, above/below +- 10 Gauss)

(Hot spots - both hemispheres rotate similar.
Hot spots rotate faster than average with less noise.)

(Hot spots travel less to poles than average)

Surround - (cold pixels arround hot spots, data above +- 5 G is gauss-blurred and places in range +- 10 .. 25 G are used)

In all classes of pixels is visible slower/faster equatorial belt...

(Southward flow anomaly is mostly in "cold" regions, and also little surrounding the "hot" sunspots)

Positive field
Note, that late in cycle near poles (here arround 60°) it may lack enough data. (here at right bottom...)

Negative field

Note, that late in cycle near poles (here arround 60°) it may lack enough data. (here at right top...)

Scale of red/blue maps for "difference from average":

The annoying zebra-pattern in X flow is a residuum of my not-so-perfect rotation of Sun's north pole. With original pole specification, there was such zebra-pattern in Y flow instead...

Magnetic field

(LOS Magnetic field, to +- 60° latitude...)

Average magnetic field: (abs.maximum of pos or neg averages)

Average positive magnetic field:

Average negative magnetic field:

Maximum of extremes per week:

Maximum positive extremes per week:

Maximum negative extremes per week:

Color scale of magnetograms:

Geometric scale of these synoptic maps: 1 pixel per week horizontally, 1 pixel per 1.5 ° vertically, ranging from ± 60° ...
Flow-maps use 3x3 degree boxes on synoptic map (rectangular projection) with 1.5 degree stepping. 1 hour spaced magnetograms (cca 69,000 images), values are scaled into degree/day on synoptic map, differences from carrington rotation rate, as reported in FITS headers.

When converting degree/day to m/s be careful to take care of high-latitude horizontal (zonal) degrees shorter in metres, on rectangular projection map...

The yearly pattern in maximum extremes may be (at least partially) introduced by LoS (Line of Sight), as Earth on orbit sees better north or south hemisphere...?
It is also possible, that it is a real effect...

There is temporarily available animation of synoptic maps of magnetic field for whole SC23 from SOHO (200Mb, AVI format) and for almost whole SC24 from SDO (98Mb, AVI format)
Each map frame shows 1 Month worth of Solar surface, composed from thin vertical stripes at each day (in SDO 4 frames per day) at center below observer (Earth). This is normal (see at JSOC and summary)...
But here it gets by 15° steps from 60° before Earth passage to 60° after Earth passage, thus covering 120° worth of time, while other 240° worth of time on far side and limbs is not available. There is a plan ongoing to compute far side backward from evolved regions, estimating their age and movement, and linearly interpolate between frames...
This way, the synoptic maps evolve in approximatelly daily steps, with 9 days running and 18 days skipped, although on each one image the right side is by 27 days "older" than the left side...
It is essential to watch to understand, how solar surface "flows" from the point of view of Carrington rotation rate.
Also here on sample compare, how maximum of SC23 differs from maximum of SC24...

Magnetic field - SC 23

(Similar technique used on NASA/ESA SOHO MDI magnetograms for previous Solar Cycle 23)
From appearance of high-latitude sunspots with SC-24 polarity, the SC 24 started in middle of year 2008 (possibly Aug 21 2008, more probably Sep 22 2008) shy with a very long minimum of suppressed activity in 2009.
It may be noticed, that magnetic activity was much stronger and lasted longer in all that cycle 23...

Average magnetic field: (abs.maximum of pos or neg averages)

Average positive magnetic field:

Average negative magnetic field:

Maximum of extremes per week:

Maximum positive extremes per week:

Maximum negative extremes per week:

The cca 3-month pattern in high-latitude "maximum extremes" charts since cca 2003 (two vertical stripes per year) is due to SOHO turning upside down, which makes one side more noisy, probably not matching the flat-field mask well ?
The input images are heavily noisy. Noise is removed by FFT windowing with cut-off for single-pixel features, and in case of short-duration exposures (interval=30), three neighbouring images are used, de-rotated to common center and averaged. As possible, long-duration exposures (with interval=300) are used, but on some times there are multiple days without long-exposure (interval=300) magnetogram...

Earth-yearly pattern of high-latitude magnetic fields is also noticeable, although weaker than in SDO/HMI magnetograms of SC 24.

Due to smoothing, SDO/HMI magnetograms are much sharper and so the maximum-of-extremes map seem stronger than in smoothed SOHO/MDI magnetograms...

EIT304 - extreme ultra violet

EIT 304A average:

EIT 304A extremes:

Data from Stereo A (Mar 2007 - Sep 2014, Jul 2015 - now), Stereo B (Mar 2007 - Sep 2014), and from SDO (May 2010 - now), one image per day contributes to weekly pixel column average... With same scale as above charts (1 pixel per week, 1 pixel per 1.5° lat), but here in rectangular projection from pole to pole.

Preceeding magnetogram and flow charts show typical "zebra-like" pattern of 4-pixel 4 weeks synoptic rotation pattern, because they are from single-face sources. We always see only half of Solar surface, and if one half is "hotter" than the other, it blinks once in 28-days of average rotation, as it rolls in and out.
This chart of EIT 304 avoids this single-face problem and uses continuous synoptic map. Prior to year 2011, last state of surface is remembered, until it is seen again. Since year 2011 until summer 2014, due to Stereo A,B and SDO observing whole Solar surface all the time, there is no "far-side" any more, which allows to avoid 28-day false pattern in Solar activity, and so to avoid unnecessary monthly smoothing...
Since summer 2014 and in year 2015, Stereo were in eclipse behind Sun and their signal unavailable. Since middle 2015, only Stereo A is available of those two, so there is short gap between SDO and Stereo A coverage, but again almost whole surface can be seen at once...

Calibration of SDO-304 response:

SDO-304 channel is getting very much darker over time... By comparing SDO and relatively stable Stereo images, the SDO-304 channel is calibrated this way:

As a simplification, I use linear interpolation with different coefficients in specified times:
return 1 / (Item.F1 + (Date-Item.D1) * (Item.F2-Item.F1)/(Item.D2-Item.D1) )
From dateD1F1D2F2
// at 2011-01-28 sharp increase in level and sharper decrease to cca 2011-03-07:
// from cca 2011-03-07 less sharp decrease to 2011-10-01
// from 2011-10-06 step up and holding level to 2012-04-11
2011-10-062011-10-110.646352011-10-31 23:000.64345
// sharp increase in 2012-04-12 00:00 and parabolic increase with top at 2012-12-21
// parabolic decline from top at 2012-12-21 forward
// (at least to 2014-07, no more Stereo data afterwards,
but visually still seems declining in 2015-06...):
// SDO 2017-01-19 15:00 1/5.55 to match histogram of Ahead 2017-01-08 07:06
// 2017 not measured but assuming it is still 1/5.55 = 0.18018 ...
2017-01-192017-01-190.180182018-01-010.18018 = 1/5.55
// compared SDO/Ahead 2018 .. 2020-02
2018-01-012018-01-010.180182018-05-010.16949 = 1/5.9
2018-05-012018-05-010.169492018-06-070.16949 = 1/5.9
2018-06-072018-06-070.169492018-07-070.17857 = 1/5.6
2018-07-072018-07-070.178572019-02-280.17857 = 1/5.6
2019-02-282019-02-280.178572019-04-130.17094 = 1/5.85
2019-04-132019-04-130.170942019-08-100.18348 = 1/5.45
2019-08-102019-08-100.183482019-12-180.18518 = 1/5.4
2019-12-182019-12-180.185182030-12-310.18518 = 1/5.4
This response ratio has been detected by comparing SDO 304 channel with Stereo A,B 304 channels, where they overlap, possibly spaced by few days to roll that region into other's view...

Example synoptic map (2012-08-21 00:00):

EIT304 - extreme ultra violet - SC 23 (SOHO)

EIT 304 A from NASA/ESA SOHO, Years 1997-2006.

This version is converted from daily synoptic maps (with remembering last state until seen again after next rotation), stitched from 1024x1024 JPG source images (with auto-detected solar position).
Each synoptic map (11613 maps used) is descaled in two steps to 1x120 pixel image, which are averaged into weekly columns (using floating-point RGB) into synoptic chart.
Unlike all prior maps, there is no floating point data version, all processing is done on JPG images...
It also uses little different color-map than the EIT-304 above...

EIT 304 - same image, simply re-filled gaps (CCD bakeouts) from neighbour pixels:

Example synoptic map (2002-03-21) :

SC 22

For comparision, I add here data from Mt.Wilson observatory by Roger K. Ulrich covering SC22 and start of SC23, as downloaded in year 2006:

And some newer version of similar data (torsional oscilation - probably a difference in zonal rotation velocity):
Current version including data can probably be accessed here: The Pattern of Rotation Rate Deviation Known as the Torsional Oscillations
Sunspot data since year 1874, as compiled from:

A conjecture: Where there are sunspots, there and then is the faster surface flow...

PDF version of this document...

P.A.Semi 2017-03 .. 2018-06 .. 2020-07