Thursday, November 1, 2018

In Pursuit of Plume Theory - 3

Fig. 1
I. Background

In the previous two posts of this series (In Pursuit of Plume Theory, 2) I scratched the surface of the hypothesis about a type of glacial plume that is independent of melt water that flows out of the grounding line area of a glacier.

That type of melt water, as you know, is known as basal melt water.

Today I am going deeper into the hypothesis, using the graphic at Fig. 1 in order to depict the basic concept that a non-basal melt water plume spontaneously develops along the subsurface face or front of a tidewater glacier, even though no basal melt water stream may exist at that glacier.

Consider a glacier with a face or front that has one thousand meters under water, and is ten kilometers wide.

When only a one meter plume develops, the arithmetic for that plume looks like this: 1 m (average plume size between the ice and ambient seawater) x 1,000 m (portion of glacier under water) x 10,000 m (10 km wide glacier) = 10,000,000 m3 (ten million cubic meters).

Fig. 2 Current Events
Yes, a tiny one meter plume has ten million cubic meters of melt water flowing in it at any given time.

That water is continually replenished when it floats toward the ocean surface (or along the bottom of the ice shelf if an ice shelf exists).

That hypothetical plume is replenished because the buoyancy created by the difference in density (between the fresher melt water of the plume and the salty ambient ocean saltwater) "pushes" the melt water plume upward  out of the way.

Then, the ambient ocean saltwater makes contact with the glacial ice once again (since the plume water has floated upward), and the heat transfer & melt cycle repeats itself.

This dynamic takes place automatically because heat spontaneously flows from a warmer mass (ocean saltwater) into a cooler mass (glacial ice) pursuant to the Second Law of Thermodynamics.

II. The Test Zones

I have generated Appendices A, B, C, D, E, and F (locations shown @ Fig. 2 above) which have graphs that show the changes in buoyancy (ambient saltwater density minus plume melt water density) at various depths in the Southern Ocean around Antarctica.

The data and graphs indicate that the buoyancy factor has increased over time.

The only way buoyancy can show up in the analysis is that the in situ conditions have become conducive to melting the ice.

Increases in buoyancy indicate that melting conditions are becoming more intense.

This indicates IMO that the warming seawater in contact with Antarctic tidewater glaciers has, at some point in time, spontaneously started generating plumes that did not exist prior to the warming.

III. Example Source Code

The following C++ source code calculates buoyancy by comparing the density of the melt water to the density of the ambient saltwater.

This code is an excerpt from the model I am working on:

    /** loop through annual data */
    for (unsigned yrPos = 0; yrPos < maxMainYears; yrPos++)
    {
        /** skip empty years */
        if (wodZone[yrPos].year != 0)
        {
            /** loop through depth data */
            for (unsigned dpos = 0; dpos < maxWoddepths; dpos++)
            {
                /** extract Conservative Temperature & Absolute Salinity */
                double CT = wodZone[yrPos].CT[dpos];
                double SA = wodZone[yrPos].SA[dpos];

                /** use only valid data */
                if (CT != invalidWODvalue &&
                        SA != invalidWODvalue &&
                        testCT_SA(CT,SA,dpos))
                {
                    /** extract pressure, w_Ih, & t_Ih */
                    double P = wodZone[yrPos].P[dpos];
                    double w_Ih = wodZone[yrPos].w_Ih[dpos];
                    double t_Ih = wodZone[yrPos].t_Ih[dpos];
                    /** init plume values (to be calculated) */
                    double sa_final = 0;
                    double ct_final = 0;
                    double w_ih_final = 0;

                    /** calculate plume values with TEOS-10 library function */
                    gsw_melting_ice_into_seawater(SA,CT,P,w_Ih,t_Ih,
                                                  &sa_final,&ct_final,
                                                  &w_ih_final);

                    /** store calculated plume values */
                    wodZone[yrPos].sa_final[dpos] = sa_final;
                    wodZone[yrPos].ct_final[dpos] = ct_final;

                    /*************************************
                      when w_ih_final is 0 the ice melted
                      ------------------------------------
                      "Note that when w_Ih_final = 0, the
                      final seawater [plume] is not at the
                      freezing temperature." - TEOS lib
                    **************************************/
                    wodZone[yrPos].w_ih_final[dpos] = w_ih_final;

                    /*****************************************
                      ct_final and sa_final are plume values
                      when the w_ih_final value equals zero
                    ******************************************/
                    if (w_ih_final == 0.0)
                    {
                        /** isolate the density values (buoyancy) */
                        double plume_density = gsw_rho(sa_final, ct_final, P);
                        double ambient_density = gsw_rho(SA, CT, P);
                        double diff_density = ambient_density - plume_density;

                        /** store the bouyancy factor */
                        if (diff_density > 0.0)
                        {
                            wodZone[yrPos].buoyancy[dpos] = diff_density;
                        }
                    }
                }
            } /** for dpos */
        } /** if year != 0 */
    } /** for yrPos */

This code computes the buoyancy factor data displayed in the graphs in Appendices A, B, C, D, E, and F.

IV. Conclusion

The TEOS-10 library functions indicate that, in any of those Appendices A-F detailing areas of Antarctica, the glacial ice (which the ambient tidewater comes in contact with) spontaneously melts at various speeds at various latitudes and longitudes (if they are deep enough, i.e. underwater enough).

I think this may be a source of tidewater glacier disintegration that has not been noticed.

I am going to continue with the WOD in situ measurements to investigate this possibility in full.

UPDATE: The beat goes on.  I have made adjustments to the graphs in Appendices A-F.  The pelagic depth levels were not appropriate for the tidewater plume concept. The overly deep depth application caused "noise" and imbalance, even though the pelagic depths model works for other purposes.

The buoyancy and enthalpy graphs are calculated on a 0 - 2500m basis. The purpose of these two calculations and graphs is to depict the potential for plumes on tidewater glaciers. They are not actual applications to any specific tidewater glacier. The same goes for the CT and SA of both the Ocean and Plume calculations and graphs.

This is like saying "plants can grow when the conditions are environmentally favorable to their growth." In other words it is a generalization that enhances the possibilities that the hypothesis is viable.

The previous post in this series is here.

1 comment:

  1. I added a section to the post in order to show an excerpt from the buoyancy model.

    It demonstrates the use of TEOS-10 functions.

    ReplyDelete