4 Decade Global Snowfall Trend

NOTE: THIS POST AND CODE IS DEPRECATED. PLEASE GO HERE FOR UPDATED VERSION.

Is anyone curious to know what the global snowfall trend was in this era of “extreme global warming”?

I was. Luckily NASA covertly provides us with all the necessary data to figure this out.

January 2021

I downloaded all available monthly images from 1980 to 2020 (inclusive), such as the one shown above, then I converted the pixel colors back to data using the provided scale.

The error margin is small and time-persistent and so this is a clever way to extract a rich dataset which I haven’t been able to find anywhere else.

As far as I know, you will not see this anywhere else. All other snowfall or snow-cover datasets are limited by region or date and so researchers reach the wrong conclusion!

Here is the result of my quest:

Global Snowfall
0.2773 -> 0.2854 is +2.90%

Snowfall has increased by nearly 3 percent over the last four decades.

Let’s also see how this breaks down by North and South hemisphere:

North Hemisphere Snowfall
0.2722 -> 0.2468 is -9.35%
South Hemisphere Snowfall
0.6257 -> 0.7057 is +12.77%

That’s it. Enjoy 🙂 -Zoe

NOTE: THIS POST AND CODE IS DEPRECATED. PLEASE GO HERE FOR UPDATED VERSION.

Correction:

The units are in kilograms divided by 100000 (better known as centigrams), not kilograms. I forgot about the original scale and mislabeled the charts. I won’t fix the chart. The purpose was to find the trend.

Update:

You can generate your own charts using data archived here.

Code:

# Zoe Phin, 2021/05/04
# File: snow.sh
# Run: source snow.sh; download; index; plot
# Output: snow.png

require() { sudo apt-get install -y netpbm gmt; }

sets() {
    for y in {1980..2020}; do
        for m in {01..12}; do
            d="$y-$m-01"
            echo "wget -O $d.png 'https://gibs.earthdata.nasa.gov/wms/epsg4326/all/wms.cgi?REQUEST=GetMap&SERVICE=WMS&FORMAT=image/png&VERSION=1.1.1&SRS=epsg:4326&BBOX=-180,-90,180,90&TRANSPARENT=TRUE&WIDTH=360&HEIGHT=180&LAYERS=MERRA2_Snowfall_Monthly&TIME=$d'"
        done
    done > sets.sh
}

download() { 
    sets; bash sets.sh; 
    find . -name \*png -type f -size -10k -exec rm {} \;
}

scale() {
    for m in {01..12}; do
        pngtopnm 2020-$m-01.png | pnmtoplainpnm | sed '1,3d;s/  /\n/g' | awk '{
            printf "%03d %03d %03d\n", $1, $3, $2}' 
    done | sort -r | uniq | awk '{
        printf "s/%s %s %s/%0.2f/\n", $1, $3, $2, (NR-1)/140*7 }' > replace.sed
    echo "s/000 000 000/999/" >> replace.sed
}

onefile() {
    pngtopnm $1 | pnmtoplainpnm | sed '1,3d;s/  /\n/g' | sed -n 1,64800p | awk '{
    printf "%03d %03d %03d\n", $1, $2, $3}' | sed -f replace.sed | sed 's/... ... .../999/' | awk '$1!=999{
        l=sprintf("%d",(NR-1)/360)-89.5
        a=6378.137; e=1-6356.752^2/a^2; r=atan2(0,-1)/180; 
        A=(a*r)^2*(1-e)*cos(r*l)/(1-e*sin(r*l)^2)^2
        SA+=A; S+=$1*A
    } END {
        printf "%.6f\n", S/SA
    }'
}

index() {
    scale
    for f in $(ls -1 [12]*.png); do
        echo -n "${f/.png/} "
        onefile $f
    done | tee .csv
}

linear() {
    cat .csv | sed \$d | awk '{ "date +%Y\\ %j -d "$1 | getline t; print t" "$2 }' | awk '
        {printf "%.4f %s\n", $1+$2/365, $3}' | gmt gmtregress | awk '
        NR>1 { printf "%.6f\n", $3 }' | tee .lin | sed -n '1p;$p' | tr '\n' ' ' | awk '{
        printf "%.4f -> %.4f is %+0.2f%\n", $1, $2, ($2/$1-1)*100 }'
}

plot() { 
    linear; paste -d ' ' .csv .lin > plot.csv
    echo "set term png size 740,560
        set key outside top center horizontal
        set timefmt '%Y-%m-%d'
        set xdata time
        set xtics format '%Y'
        set ytics format '%.2f'
        set xtics 157788864
        set ytics 0.02; set mxtics 5; set mytics 2
        set xrange ['1979-11-01':'2021-03-01']
        set grid xtics mxtics ytics
        plot 'plot.csv' u 1:2 t 'Snowfall (kg/m²/s)' w lines lw 2 lc rgb '#0000CC',\
                     '' u 1:3 t 'Linear Regression'  w lines lw 3 lc rgb '#000055'		
    " | gnuplot > snow.png 
}

Published by Zoe Phin

https://phzoe.com

20 thoughts on “4 Decade Global Snowfall Trend

      1. Thanks, Zoe, but the legend in the top graphic goes from 0.00000 to 0.00007 kg/m2/s. How does that relate to your numbers? If your numbers are a global sum of all snowfall, they’d be in kg/month, no?

        Regards,

        w.

        Like

        1. Oops. Yes it’s in units kg * 1e-5. Thx. I’ll make a note.
          I find a global average for a monthly average grid map. No accumulation.

          Like

  1. If a large number decreases by 9% and a small number increases by 12%, are you sure that an increase of 3% is a truthfull representation of the total? (There are on average 25.000.000km2 of snow in the northern hemisphere, but the covered area in the southern hemisphere is much smaller)

    Like

    1. Water is included. Basically, I’m finding global AVERAGE of kilograms (times 1e-5) of snow per every square meter per second. Then I do that for both hemispheres.

      Like

    2. You can easily find confirmation of the North Hemisphere trend in papers and google images.

      I know I’m completely right about the global trend because you can’t find the global trend ANYWHERE (?), even know though the data is obviously available to NASA (that’s how the images are generated).

      The truth is hard to find. But I try 🙂

      Like

  2. Hi Zoe, anice article once again.

    I’ve got one question, maybe very naive on my part. For snowfall the unit of measurement used is decigram per square meter per s.

    What does “s” denote? -J

    Cheers

    Pierre

    PS: I plan to post on this today.

    Liked by 1 person

  3. You are measuring snow volume. In my discussions with the followers of the climate scam cult I usually get the “Yes, in the places where it is still snowing it is snowing more than previously because there is more water vapor in the air (due to the higher temps). But the area covered by snow has shrunk.” So you might want to accompany your analysis of the volume data with data on snow cover. The linear trend of the snow cover has been almost exactly zero in the past 40 years.

    Liked by 1 person

      1. Well, one way would be to use your own data. Usually computing a volume requires the knowledge of the area. You compute how much snow fell in different areas of the world. So you already know where it has been snowing and you can use that area. Moreover, for the NH you have tons of websites which provide snow cover data. I get that that is not quite as good as global data and that you are trying to expressly make a point about the globe. But the areas where we should see the first big effects on the extent of the snow cover would be in the NH anyway. And as I said: there is no reduction in snow cover even in the NH (in the sense that the linear trend of the weekly data starting in 1981 is almost exactly 0).

        Like

  4. Hi Zoe,

    I came from the ‘electroverse.net’ to your site just for two things:

    1. Spherical area correction => solved — line 36 😉

    2. A confirmation of an observation:
    How is it possible that SH gets about 2.5x higher snowfall intensity than NH (from 40-y-averages) and, while the time flows and areas are about equal, the global snowfall isn’t even close to their “average”?

    E.g. y.2020 Snowfall Intensity [mg m^-2 s^-1]: (sorry, I can’t stand centigrams to hectograms 😉

    NH ~ 2.5 & SH ~ 7.1 => Global Average ~ 4.8 yet the Global is noted as 2,854

    What am I missing?

    Cheers, JaKo

    Like

    1. Uh oh! I found the problem!
      The global average is STILL CORRECT, but the south hemisphere is completely fubar 😦

      Line 34 and Line 32 is completely incompatible for south hemisphere. I forgot to change line 34 for SH.

      What happens is that the grid cell latitude at the equator is -89.5, and at the south pole is -0.5. In other words, it’s upside down. So the Anatarctic gets inflated!

      You get it?

      For hemispheres, I chop half the data off, but forgot to compensate how the data line number corresponds to latitude.

      Global and NH are still perfectly correct.

      Should I change this article or write a new one?

      Notice the code doesn’t do NH and SH. I did it manually at the last minute when I was already writing this post. Haste makes waste. Sigh

      Thanks for noticing and point it out. I alone probably would’ve forgotten it.

      Like

      1. Hi Zoe (again),

        I wouldn’t worry about that electroverse or other Pingbacks, or, you could just point to the updated article…

        Cheers, JaKo

        Like

Leave a Reply to Zoe Phin Cancel reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: