# Probe Software Users Forum

## Software => Probe for EPMA => Topic started by: John Donovan on October 24, 2013, 12:21:40 PM

Title: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on October 24, 2013, 12:21:40 PM
In order that the measured intensities get properly corrected for matrix effects we need to know the composition of the sample (and the standard).

For standards this is easy because of course we already know the composition of the standard (or it wouldn't be a standard!). So based on the "published" standard composition from the Standard.mdb database we calculate the physics relative to the theoretical pure element. This is called the standard k-factor and is calculated as seen here for each element.

(http://probesoftware.com/smf/oldpics/i40.tinypic.com/314qxjp.jpg)

If the standard is a pure element, then the concentration is 1.0 and the matrix correction is 1.0 and therefore the std k-factor is 1.0. In any case the std k-factor is included in the calculation of the unknown concentration by iteratively determining the unknown composition starting with the "1st approximation" where the ratio of intensities (Iunk/Istd) is assumed to be equal to the ratio of the concentrations (Cunk/Cstd) and calculated as seen here:

(http://probesoftware.com/smf/oldpics/i42.tinypic.com/24qnv3s.jpg)

What does all this mean?  It means that we need to know the correct composition of the unknown in order to correctly calculate the concentration of each measured element. Therefore, if some elements are *not* measured, for example, geologists often (but not always) assumed formula stoichiometry for including oxygen in the matrix correction. Obviously in the case of variable oxidation states, e.g., FeO vs. Fe2O3, replacement of stoichiometric oxygen by halogens, and glasses containing significant H2O, there is some ambiguity in the matrix chemistry which can significantly affect the matrix correction for measured elements as seen in these posts:

http://probesoftware.com/smf/index.php?topic=62.msg235#msg235

http://probesoftware.com/smf/index.php?topic=81.msg292#msg292

In practice we can sometimes "get away" with a simplification of the matrix assumption, for a quite amazing example we might try measuring only U, Th, Pb (and Y and La for the interference correction on Pb Ma) and assuming CePO4 by difference in the matrix correction of the mineral monazite. Surprisingly this assumption works to an extent that is quite impressive, though obviously  one cannot assume that this simplification of the matrix composition is accurate enough without careful testing both ways.

However, it is not uncommon that if the element in question does not cause an interference and is not especially critical in the matrix correction (run a model in CalcZAF and check the absorption correction!), we can simply specify the element as an "unanalyzed" element. In CalcZAF and Probe for EPMA this means that the element does not have an x-ray line specified as shown here in the Elements/Cations dialog from the Analyze! or Acquire! windows:

(http://probesoftware.com/smf/oldpics/i43.tinypic.com/zwcf4h.jpg)

Once the element is entered as an "unanalyzed" element, we can use the Specified Concentrations (or Calculation Options) dialog from the Analyze! window to enter element concentrations by "specification" as seen here:

(http://probesoftware.com/smf/oldpics/i41.tinypic.com/11m4a5z.jpg)

This dialog, seen below, has many options for entering elements that are unanalyzed, or even measured by another technique:

(http://probesoftware.com/smf/oldpics/i42.tinypic.com/2yplov9.jpg)

The simplest method is to click on a row in the element grid containing a specified (or unanalyzed) element and enter the specified concentration in elemental or oxide weight percent.  One can also specify by formula, by standard composition (useful when analyzing a standard as an unknown), by text file input (see User's Reference manual for details), or by the (one time) analysis of another sample or by the analysis of a sample just prior to the analysis of the currently selected sample. Whew!

Other options for matrix specification are available in the Calculation Options dialog from the Analyze! window which we turn to next.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on October 24, 2013, 12:29:18 PM
From the Analyze! window we can also select the Calculation Options dialog and then we see this:

(http://probesoftware.com/smf/oldpics/i43.tinypic.com/2ii72at.jpg)

Note that in this example we have selected calculate oxygen by formula stoichiometry (the oxygen stoichiometry can be changed in the Elements/Cations dialog), element by difference is Ce and calculate P by stoichiometry to the stoichiometrc oxygen.

This allows us to specify the formula CePO4 by difference from the measured elements expressed as oxides without measuring Ce or P or O.

There are many variations on this method, for example in carbonates we might specify oxygen by stoichiometry and carbon by stoichiometry (0.333 to 1) to the stoichiometric (calculated) oxygen to obtain CO3 by stoichiometry to the measured cations (usually Ca, Mg, Fe, Mn, etc).
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on December 16, 2013, 12:52:50 PM
Here's an example of a monazite calculation that I've done where Ce2O3 was calculated by difference and P2O5 was calculated by stoichiometry to the calculated (stoichiometric) oxygen using the settings in the Calculation Options dialog shown in the previous post:

Un    8 Allaz-3
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 50.0  Beam Size =    5
(Magnification (analytical) =  40000),        Beam Mode = Analog  Spot
(Magnification (default) =      400, Magnification (imaging) =    800)
Image Shift (X,Y):                                          .00,   .00
Number of Data Lines:   9             Number of 'Good' Data Lines:   9
First/Last Date-Time: 10/30/2013 12:04:35 PM to 10/30/2013 01:02:35 PM
WARNING- Using Exponential Off-Peak correction for th ma

Average Total Oxygen:       27.194     Average Total Weight%:  100.000
Average Calculated Oxygen:  27.194     Average Atomic Number:   39.773
Average Excess Oxygen:        .000     Average Atomic Weight:   39.299
Average ZAF Iteration:       11.00     Average Quant Iterate:     3.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element Ce is Calculated by Difference from 100%
Element P is Calculated  .25 Atoms Relative To 1.0 Atom of Oxygen

Un    8 Allaz-3, Results in Elemental Weight Percents

ELEM:        U      Th      Pb       Y      La      Ce       P       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    DIFF    STOI    CALC
BGDS:      LIN     EXP     LIN     LIN     LIN
TIME:   200.00  200.00  200.00  120.00  120.00
BEAM:    49.82   49.82   49.82   49.82   49.82

ELEM:        U      Th      Pb       Y      La      Ce       P       O   SUM
219    .472   3.341    .567   1.826   9.508  43.870  13.179  27.237 100.000
220    .446   3.334    .524   1.638   9.721  43.952  13.169  27.216 100.000
221    .237   3.150    .424   1.054   9.937  44.893  13.142  27.162 100.000
222    .510   3.582    .581   1.695   9.716  43.555  13.161  27.200 100.000
223    .445   3.923    .599   1.587   9.413  43.725  13.144  27.165 100.000
224    .512   3.290    .558   1.789   9.884  43.557  13.177  27.234 100.000
225    .515   3.329    .573   1.865   9.354  43.944  13.180  27.240 100.000
226    .125   4.790    .400   1.349   8.802  44.278  13.126  27.129 100.000
227    .446   3.816    .595   1.555   9.514  43.764  13.145  27.167 100.000

AVER:     .412   3.617    .536   1.595   9.539  43.949  13.158  27.194 100.000
SDEV:     .137    .509    .074    .257    .342    .418    .019    .040    .000
SERR:     .046    .170    .025    .086    .114    .139    .006    .013
%RSD:    33.28   14.08   13.75   16.13    3.59     .95     .15     .15
STDS:       15      18     386    1016     836       0       0       0

STKF:    .8725   .8707   .6861   .4480   .6591   .0000   .0000   .0000
STCT:   137.33   44.30  140.31   38.76   33.08     .00     .00     .00

UNKF:    .0035   .0302   .0041   .0116   .0829   .0000   .0000   .0000
UNCT:      .55    1.54     .84    1.00    4.16     .00     .00     .00
UNBG:      .77     .26     .54     .13     .19     .00     .00     .00

ZCOR:   1.1794  1.1961  1.3069  1.3748  1.1510   .0000   .0000   .0000
KRAW:    .0040   .0347   .0060   .0259   .1257   .0000   .0000   .0000
PKBG:     1.71    6.87    2.56    8.82   23.27     .00     .00     .00
INT%:   -14.77    ----   -2.38    ----    ----    ----    ----    ----

Un    8 Allaz-3, Results in Oxide Weight Percents

ELEM:      UO2    ThO2     PbO    Y2O3   La2O3   Ce2O3    P2O5       O   SUM
219    .536   3.802    .611   2.319  11.151  51.384  30.198    .000 100.000
220    .506   3.794    .564   2.080  11.401  51.480  30.175    .000 100.000
221    .268   3.585    .457   1.339  11.654  52.582  30.115    .000 100.000
222    .578   4.076    .626   2.153  11.395  51.015  30.157    .000 100.000
223    .504   4.464    .645   2.015  11.040  51.214  30.118    .000 100.000
224    .580   3.744    .601   2.272  11.591  51.018  30.194    .000 100.000
225    .584   3.788    .617   2.368  10.970  51.471  30.201    .000 100.000
226    .142   5.451    .431   1.713  10.323  51.863  30.078    .000 100.000
227    .505   4.342    .641   1.974  11.157  51.260  30.120    .000 100.000

AVER:     .467   4.116    .577   2.026  11.187  51.476  30.151    .000 100.000
SDEV:     .156    .580    .079    .327    .401    .490    .045    .000    .000
SERR:     .052    .193    .026    .109    .134    .163    .015    .000
%RSD:    33.28   14.08   13.75   16.13    3.59     .95     .15  375.00
STDS:       15      18     386    1016     836       0       0       0

Un    8 Allaz-3, Results in Millions of Years Ago, EPMA Age (from U, Th, Pb)

U WT%  Th WT%  Pb WT%   U PPM  Th PPM  Pb PPM Age[My] Calc Pb %Pb(Th)  %Pb(U)
219 .472289 3.34109 .567045 4722.89 33410.9 5670.45 2323.00 5670.27 64.3415 35.6635
220 .446398 3.33429 .523589 4463.98 33342.9 5235.90 2208.20 5236.10 65.9074 34.0874
221 .236642 3.15039 .424494 2366.42 31503.9 4244.94 2226.00 4245.02 77.4650 22.5299
222 .509558 3.58221 .581436 5095.58 35822.1 5814.36 2231.20 5814.52 64.4655 35.5293
223 .444676 3.92270 .598909 4446.76 39227.0 5989.09 2258.10 5989.38 69.4054 30.5896
224 .511685 3.28988 .557768 5116.85 32898.8 5577.68 2252.20 5577.78 62.3314 37.6634
225 .515049 3.32893 .572963 5150.49 33289.3 5729.63 2285.30 5729.68 62.3537 37.6412
226 .124814 4.79049 .399875 1248.14 47904.9 3998.75 1650.30 3998.89 91.3724 8.62120
227 .445556 3.81612 .594983 4455.56 38161.2 5949.83 2281.40 5949.84 68.7099 31.2850

AVER:  .411852 3.61734 .535674 4118.52 36173.4 5356.74 2190.63 5356.83 69.5947 30.4012
SDEV:  .137073 .509306 .073673 1370.73 5093.06 736.728 205.618 736.721 9.41884 9.41990

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on December 16, 2013, 01:04:34 PM
Here's another one: turquoise, which has the ideal formula CuAl6(PO4)4(OH)8 4(H2O).  The Calculation Options dialog looks like this:

(http://probesoftware.com/smf/oldpics/i39.tinypic.com/s480ma.jpg)

Since the ratio of H to Al is 16 to 6, that is 2.666 and this gives the following results

Un    5 Turquoise matrix3
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =   20
(Magnification (analytical) =  40000),        Beam Mode = Analog  Spot
(Magnification (default) =      400, Magnification (imaging) =   2797)
Image Shift (X,Y):                                          .00,   .00
Number of Data Lines:   9             Number of 'Good' Data Lines:   6
First/Last Date-Time: 11/20/2013 03:51:02 PM to 11/20/2013 04:22:23 PM
WARNING- Using Exponential Off-Peak correction for p ka
WARNING- Using Slope-Lo Off-Peak correction for ba la
WARNING- Using Exponential Off-Peak correction for si ka
WARNING- Using Time Dependent Intensity (TDI) Element Correction

Average Total Oxygen:       55.067     Average Total Weight%:   99.890
Average Calculated Oxygen:  55.067     Average Atomic Number:   11.402
Average Excess Oxygen:        .000     Average Atomic Weight:   14.468
Average Charge Balance:       .005     Fe+ Atomic Charge:        2.000
Average ZAF Iteration:        3.00     Average Quant Iterate:     3.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element H is Calculated  2.666 Atoms Relative To 1.0 Atom of Al

Un    5 Turquoise matrix3, Results in Elemental Weight Percents

ELEM:       Na       P      Ca      Al       K      Fe      Cu       S      Ba      Si       H       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    RELA    CALC
BGDS:      LIN     EXP     LIN     LIN     LIN     LIN     LIN     LIN    S-Lo     EXP
TIME:    60.00   60.00   60.00   60.00   60.00   60.00   60.00   60.00   60.00   60.00
BEAM:    30.02   30.02   30.02   30.02   30.02   30.02   30.02   30.02   30.02   30.02

ELEM:       Na       P      Ca      Al       K      Fe      Cu       S      Ba      Si       H       O   SUM
137    .007  13.984    .007  21.165    .061    .259   6.374    .240    .084    .015   2.108  54.469  98.775
140   -.005  14.102    .008  21.078    .067    .289   6.501    .241    .066    .016   2.099  54.612  99.074
141    .004  14.246    .006  21.467    .061    .271   6.770    .234    .062    .019   2.138  55.355 100.633
142   -.001  14.404    .005  21.356    .081    .238   6.673    .216    .039    .013   2.127  55.515 100.664
143   -.009  14.583    .003  21.192    .065    .268   6.559    .221    .053    .018   2.111  55.700 100.764
144    .001  14.177    .012  21.088    .069    .301   6.644    .227    .042    .019   2.100  54.749  99.429

AVER:    -.001  14.250    .007  21.224    .067    .271   6.587    .230    .058    .017   2.114  55.067  99.890
SDEV:     .006    .216    .003    .155    .007    .022    .140    .010    .017    .002    .015    .520    .898
SERR:     .002    .088    .001    .063    .003    .009    .057    .004    .007    .001    .006    .212
%RSD:  -834.06    1.51   44.38     .73   10.91    8.26    2.12    4.53   29.36   14.98     .73     .94
STDS:      336     285     285     336     336     395    1124     327     835     336       0       0

STKF:    .0735   .1599   .3596   .1331   .0409   .6779   .2439   .2207   .7430   .1500   .0000   .0000
STCT:    72.02  276.07  585.58  256.36   29.05  479.39  154.24  192.18  272.78  259.24     .00     .00

UNKF:    .0000   .1087   .0001   .1545   .0006   .0023   .0517   .0018   .0004   .0001   .0000   .0000
UNCT:      .00  187.63     .10  297.46     .41    1.62   32.68    1.56     .15     .20     .00     .00
UNBG:      .33    1.28     .88     .82     .36     .67    1.22     .18     .87     .83     .00     .00

ZCOR:   2.0716  1.3112  1.1184  1.3741  1.1633  1.1845  1.2744  1.2824  1.3769  1.4007   .0000   .0000
KRAW:    .0000   .6797   .0002  1.1603   .0141   .0034   .2119   .0081   .0006   .0008   .0000   .0000
PKBG:      .99  147.55    1.12  366.70    2.15    3.42   27.70    9.80    1.18    1.25     .00     .00
INT%:     -.43    ----    ----     .00    ----    ----    ----    ----  -51.65    ----    ----    ----

TDI%:    -.916  -1.846    .068    ----   2.184  -5.326    ----    ----    ----    ----    ----    ----
DEV%:      5.1      .4     3.9    ----     3.9     2.6    ----    ----    ----    ----    ----    ----
TDIF:   LINEAR  QUADRA  LINEAR    ----  LINEAR  LINEAR    ----    ----    ----    ----    ----    ----
TDIT:    75.00   76.17   75.33    ----   77.00   75.83    ----    ----    ----    ----    ----    ----
TDII:     .332    188.    .974    ----    .778    2.24    ----    ----    ----    ----    ----    ----

Un    5 Turquoise matrix3, Results in Oxide Weight Percents

ELEM:       Na     PO4      Ca      Al       K      Fe      Cu     SO4      Ba      Si    H4O3       O   SUM
137    .007  42.880    .007  21.165    .061    .259   6.374    .718    .084    .015  27.203    .000  98.775
140   -.005  43.241    .008  21.078    .067    .289   6.501    .722    .066    .016  27.091    .000  99.074
141    .004  43.682    .006  21.467    .061    .271   6.770    .701    .062    .019  27.591    .000 100.633
142   -.001  44.168    .005  21.356    .081    .238   6.673    .646    .039    .013  27.448    .000 100.664
143   -.009  44.716    .003  21.192    .065    .268   6.559    .661    .053    .018  27.237    .000 100.764
144    .001  43.471    .012  21.088    .069    .301   6.644    .679    .042    .019  27.104    .000  99.429

AVER:    -.001  43.693    .007  21.224    .067    .271   6.587    .688    .058    .017  27.279    .000  99.890
SDEV:     .006    .661    .003    .155    .007    .022    .140    .031    .017    .002    .200    .000    .898
SERR:     .002    .270    .001    .063    .003    .009    .057    .013    .007    .001    .081    .000
%RSD:  -834.06    1.51   44.38     .73   10.91    8.26    2.12    4.53   29.36   14.98     .73  451.66
STDS:      336     285     285     336     336     395    1124     327     835     336       0       0

Un    5 Turquoise matrix3, Results Based on 6 Atoms of al

ELEM:       Na       P      Ca      Al       K      Fe      Cu       S      Ba      Si       H       O   SUM
137    .002   3.453    .001   6.000    .012    .035    .767    .057    .005    .004  15.996  26.039  52.373
140   -.002   3.497    .002   6.000    .013    .040    .786    .058    .004    .004  15.996  26.215  52.613
141    .001   3.469    .001   6.000    .012    .037    .803    .055    .003    .005  15.996  26.091  52.474
142    .000   3.525    .001   6.000    .016    .032    .796    .051    .002    .003  15.996  26.302  52.725
143   -.003   3.597    .001   6.000    .013    .037    .788    .053    .003    .005  15.996  26.595  53.083
144    .000   3.514    .002   6.000    .013    .041    .803    .054    .002    .005  15.996  26.269  52.701

AVER:     .000   3.509    .001   6.000    .013    .037    .791    .055    .003    .005  15.996  26.252  52.661
SDEV:     .002    .051    .001    .000    .001    .003    .014    .003    .001    .001    .000    .196    .247
SERR:     .001    .021    .000    .000    .001    .001    .006    .001    .000    .000    .000    .080
%RSD:  -823.52    1.45   44.83     .00   10.82    8.72    1.71    4.80   29.50   14.99     .00     .75

I have no idea if it is correct, but the total looks good! :D
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on December 16, 2013, 01:17:34 PM
In the previous turquoise sample, the Time Dependent Intensity (TDI) acquisition was very important as seen here for phosphorus:

(http://probesoftware.com/smf/oldpics/i42.tinypic.com/14we48.jpg)

See additional info on TDI here:

http://probesoftware.com/smf/index.php?topic=116.0
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on December 16, 2013, 01:32:13 PM
Here's an example of a carbonate calculated by measuring only the cations. Oxygen is calculated by stoichiometry and carbon is calculated by stoichiometry to the calculated (stoichiometric) oxygen:

(http://probesoftware.com/smf/oldpics/i41.tinypic.com/xnrv9k.jpg)

St  135 Set   1 Calcite (analyzed)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2
(Magnification (analytical) =   4000),        Beam Mode = Analog  Spot
(Magnification (default) =     3200, Magnification (imaging) =    100)
Image Shift (X,Y):                                          .00,   .00
Pre Acquire String :                                            PB OFF
Post Acquire String :                                            PB ON

Locality: unknown
XRF (UCB), ICP-MS (Washington Univ, D. Kremser)
Element    XRF-EDS    ICP-MS (ppm)
Sr            150       165
Mn            130       166
Fe            n.d.        4
Mg            n.d.       21
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:14:18 AM to 06/15/2008 10:16:05 AM

Average Total Oxygen:       47.916     Average Total Weight%:  100.001
Average Calculated Oxygen:  47.918     Average Atomic Number:   12.575
Average Excess Oxygen:       -.002     Average Atomic Weight:   20.031
Average ZAF Iteration:        7.00     Average Quant Iterate:     2.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .333 Atoms Relative To 1.0 Atom of Oxygen

St  135 Set   1 Calcite (analyzed), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    STOI    CALC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00
BEAM:    30.00   30.00   30.00   30.00   30.00

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
1  40.363   -.007   -.046    .000   -.011  11.959  47.943 100.202
2  40.049    .003    .038   -.002    .014  11.978  47.926 100.007
3  40.167   -.006    .016   -.021    .029  11.973  47.959 100.118
4  39.837    .046    .011   -.031   -.015  11.995  47.834  99.676

AVER:   40.104    .009    .005   -.013    .004  11.976  47.916 100.001
SDEV:     .220    .025    .036    .015    .021    .015    .056    .231
SERR:     .110    .012    .018    .007    .011    .007    .028
%RSD:      .55  271.48  732.18 -109.50  492.43     .12     .12

PUBL:   40.031    n.a.    n.a.    n.a.    n.a.  12.000  47.952  99.983
%VAR:      .18     ---     ---     ---     ---    -.20    -.08
DIFF:     .073     ---     ---     ---     ---   -.024   -.036
STDS:      138     140     145     139     285       0       0

STKF:    .3789   .3969   .4258   .1957   .1599   .0000   .0000
STCT:   3769.3  3961.2  4241.7  1936.5  1599.3      .0      .0

UNKF:    .3796   .0001   .0000  -.0001   .0000   .0000   .0000
UNCT:   3775.8      .7      .4     -.8      .4      .0      .0
UNBG:     37.5    30.7    38.3    15.3    21.4      .0      .0

ZCOR:   1.0566  1.2363  1.2120  1.6542  1.1569   .0000   .0000
KRAW:   1.0017   .0002   .0001  -.0004   .0002   .0000   .0000
PKBG:   101.97    1.03    1.01     .95    1.02     .00     .00

St  135 Set   1 Calcite (analyzed), Results Based on Sum of 2 Cations

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
1   1.006    .000   -.001    .000    .000    .995   2.994   4.994
2   1.000    .000    .001    .000    .000    .998   2.999   4.999
3   1.003    .000    .000   -.001    .001    .997   2.998   4.998
4    .998    .001    .000   -.001    .000   1.003   3.002   5.002

AVER:    1.002    .000    .000   -.001    .000    .998   2.998   4.998
SDEV:     .004    .000    .001    .001    .001    .003    .003    .003
SERR:     .002    .000    .000    .000    .000    .002    .002
%RSD:      .35  271.04  727.41 -109.60  493.78     .33     .10
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on December 16, 2013, 01:43:05 PM
You can also specify an element by stoichiometry to a measured element (1 C to 1 Ca), oxygen by stoichiometric calculation and an element by stoichiometry to calculated oxygen (.333 C to 1 O) as seen here:

(http://probesoftware.com/smf/oldpics/i43.tinypic.com/2dvo7tl.jpg)

St  138 Set   1 Calcite (Harvard #97189)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2
(Magnification (analytical) =   4000),        Beam Mode = Analog  Spot
(Magnification (default) =     3200, Magnification (imaging) =    100)
Image Shift (X,Y):                                          .00,   .00
Pre Acquire String :                                            PB OFF
Post Acquire String :                                            PB ON

Specimen from Harvard Mineralogical Museum (Carl Francis)
Locality: Oberdorf, Austria
EPMA (UCB): MnO=0.01, FeO=0.00, MgO=0.00
See Garrels, et al., 1980 AJS 258, 402-418
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:16:54 AM to 06/15/2008 10:18:38 AM

Average Total Oxygen:       47.949     Average Total Weight%:   99.995
Average Calculated Oxygen:  47.951     Average Atomic Number:   12.568
Average Excess Oxygen:       -.002     Average Atomic Weight:   20.021
Average ZAF Iteration:        2.00     Average Quant Iterate:     2.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .333 Atoms Relative To 1.0 Atom of Oxygen
Element C is Calculated  1 Atoms Relative To 1.0 Atom of Ca

St  138 Set   1 Calcite (Harvard #97189), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    STOI    CALC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00
BEAM:    30.00   30.00   30.00   30.00   30.00

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
5  39.853    .062   -.005   -.019    .010  11.943  47.742  99.584
6  40.366    .010   -.005   -.035    .044  12.097  48.375 100.852
7  39.844   -.034    .034   -.035   -.026  11.940  47.658  99.380
8  40.085    .043   -.012    .018   -.003  12.013  48.021 100.165

AVER:   40.037    .020    .003   -.018    .006  11.998  47.949  99.995
SDEV:     .246    .042    .021    .025    .029    .074    .324    .661
SERR:     .123    .021    .010    .012    .015    .037    .162
%RSD:      .61  209.49  721.04 -138.86  473.91     .61     .68

PUBL:   40.038    .008    .000    .000    n.a.  12.000  47.954 100.000
%VAR:    (.00)  150.10     .00     .00     ---    -.02    -.01
DIFF:    (.00)    .012    .000    .000     ---   -.002   -.005
STDS:      138     140     145     139     285       0       0

STKF:    .3789   .3969   .4258   .1957   .1599   .0000   .0000
STCT:   3769.3  3961.2  4241.7  1936.5  1599.3      .0      .0

UNKF:    .3789   .0002   .0000  -.0001   .0001   .0000   .0000
UNCT:   3769.3     1.6      .2    -1.1      .5      .0      .0
UNBG:     40.0    31.0    38.8    16.1    22.2      .0      .0

ZCOR:   1.0566  1.2363  1.2120  1.6542  1.1570   .0000   .0000
KRAW:   1.0000   .0004   .0001  -.0005   .0003   .0000   .0000
PKBG:    95.31    1.06    1.01     .94    1.03     .00     .00

St  138 Set   1 Calcite (Harvard #97189), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
5   1.000    .001    .000   -.001    .000   1.000   3.001   5.001
6   1.000    .000    .000   -.001    .001   1.000   3.002   5.002
7   1.000   -.001    .001   -.001   -.001   1.000   2.996   4.994
8   1.000    .001    .000    .001    .000   1.000   3.001   5.002

AVER:    1.000    .000    .000   -.001    .000   1.000   3.000   5.000
SDEV:     .000    .001    .000    .001    .001    .000    .003    .004
SERR:     .000    .000    .000    .001    .000    .000    .001
%RSD:      .00  210.32  711.86 -138.67  480.74     .00     .09

So let's calculate oxygen by stoichiometry and do carbon 0.333 C to calculated O. So on a complex carbonate it looks like this:

St  143 Set   1 Kutnahorite (Harvard #85670)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2
(Magnification (analytical) =   4000),        Beam Mode = Analog  Spot
(Magnification (default) =     3200, Magnification (imaging) =    100)
Image Shift (X,Y):                                          .00,   .00
Pre Acquire String :                                            PB OFF
Post Acquire String :                                            PB ON

Specimen from Harvard Mineralogical Museum (Carl Francis)
Locality: Franklin, NJ
See Garrels, et al., 1980 AJS 258, 402-418
Also J. V. Smith, Am. Jour. Sci. 1960
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:27:04 AM to 06/15/2008 10:28:50 AM

Average Total Oxygen:       45.509     Average Total Weight%:  100.231
Average Calculated Oxygen:  45.512     Average Atomic Number:   13.971
Average Excess Oxygen:       -.003     Average Atomic Weight:   21.131
Average ZAF Iteration:        7.00     Average Quant Iterate:     2.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .333 Atoms Relative To 1.0 Atom of Oxygen

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    STOI    CALC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00
BEAM:    30.00   30.00   30.00   30.00   30.00

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
21  19.734  22.026    .382   1.385    .021  11.333  45.532 100.412
22  19.850  21.699    .401   1.377    .016  11.354  45.532 100.229
23  19.615  21.856    .321   1.278   -.008  11.366  45.396  99.824
24  19.767  21.962    .363   1.423    .032  11.338  45.574 100.460

AVER:   19.741  21.886    .367   1.365    .015  11.348  45.509 100.231
SDEV:     .097    .143    .034    .062    .017    .015    .077    .289
SERR:     .049    .071    .017    .031    .009    .007    .039
%RSD:      .49     .65    9.30    4.53  112.08     .13     .17

PUBL:   19.612  21.925    .389   1.333    .000  11.408  45.594 100.261
%VAR:      .66    -.18   -5.70    2.43     .00    -.53    -.19
DIFF:     .129   -.039   -.022    .032    .000   -.060   -.085
STDS:      138     140     145     139     285       0       0

STKF:    .3789   .3969   .4258   .1957   .1599   .0000   .0000
STCT:   3769.3  3961.2  4241.7  1936.5  1599.3      .0      .0

UNKF:    .1930   .1843   .0031   .0077   .0001   .0000   .0000
UNCT:   1919.6  1839.4    31.3    75.8     1.3      .0      .0
UNBG:     31.1    43.3    42.8    14.2    22.8      .0      .0

ZCOR:   1.0230  1.1875  1.1669  1.7823  1.1895   .0000   .0000
KRAW:    .5093   .4644   .0074   .0392   .0008   .0000   .0000
PKBG:    62.65   43.58    1.74    6.38    1.06     .00     .00

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Oxide Weight Percents

ELEM:      CaO     MnO     FeO     MgO    P2O5     CO2       O   SUM
21  27.611  28.440    .492   2.297    .048  41.527   -.003 100.412
22  27.774  28.019    .516   2.283    .038  41.603   -.003 100.229
23  27.446  28.221    .413   2.119   -.019  41.647   -.003  99.824
24  27.658  28.359    .467   2.359    .073  41.546   -.003 100.460

AVER:   27.622  28.260    .472   2.264    .035  41.581   -.003 100.231
SDEV:     .136    .184    .044    .103    .039    .055    .000    .289
SERR:     .068    .092    .022    .051    .020    .027    .000
%RSD:      .49     .65    9.30    4.53  112.08     .13    -.06

PUBL:   27.441  28.310    .500   2.211    .000  41.801   -.003 100.261
%VAR:      .66    -.18   -5.70    2.43     .00    -.53    -.03
DIFF:     .181   -.051   -.029    .054    .000   -.221    .000
STDS:      138     140     145     139     285       0       0

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
21    .522    .425    .007    .060    .001   1.000   3.016   5.031
22    .524    .418    .008    .060    .001   1.000   3.010   5.020
23    .517    .420    .006    .056    .000   1.000   2.998   4.997
24    .522    .423    .007    .062    .001   1.000   3.017   5.033

AVER:     .521    .422    .007    .059    .001   1.000   3.011   5.020
SDEV:     .003    .003    .001    .003    .001    .000    .009    .016
SERR:     .001    .002    .000    .001    .000    .000    .004
%RSD:      .56     .75    9.36    4.64  112.00     .00     .29

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: BenH on February 04, 2015, 01:59:53 PM
Is there any way that I can calculate more than one element as an atomic ratio to another element?
I know the composition of my base glass quite well and I know that the molar ratios stay the same.  Since this stuff is loaded with alkali I would like not to have to do more than one element per spectrometer.  Even “fixing” and element as a constant would due because the elements in question are in low abundances and are light elements.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on February 04, 2015, 02:26:52 PM
Is there any way that I can calculate more than one element as an atomic ratio to another element?
I know the composition of my base glass quite well and I know that the molar ratios stay the same.  Since this stuff is loaded with alkali I would like not to have to do more than one element per spectrometer.  Even “fixing” and element as a constant would due because the elements in question are in low abundances and are light elements.

Not specifically.  But once the atomic ratios are calculated every element has a stoichiometry to every other element.

Also, the previous post shows how to do oxygen by stoichiometry plus another element relative to another.

I'm probably missing what you are really asking. Can you provide an example?
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Gseward on February 04, 2015, 04:44:46 PM
John,

Ideally I would like to be able to  'add a compound by difference'. In this case Li2B4O7
Initially I thought I could do this for simple compounds by doing this:

(http://probesoftware.com/smf/oldpics/i58.tinypic.com/10emow1.jpg)

However, in this situation it seems the element is added by difference, but the element by stoichiometry to it, is not added. It seems this could be possible if you checked for 'elements stoichiometric to element by difference' before adding both (or perhaps more?) to the matrix???
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on February 04, 2015, 05:09:09 PM
Ideally I would like to be able to  'add a compound by difference'. In this case Li2B4O7
Initially I thought I could do this for simple compounds by doing this:

[snip]

However, in this situation it seems the element is added by difference, but the element by stoichiometry to it, is not added. It seems this could be possible if you checked for 'elements stoichiometric to element by difference' before adding both (or perhaps more?) to the matrix???

It is a good suggestion, but difficult to implement in code and keep all the other existing specification method working.  It gets complicated... A lot of it has to do with the order that things are calculated (as you correctly point out!).

But I did get something to kinda of work along the lines you need, here using this specification:

(http://probesoftware.com/smf/oldpics/i60.tinypic.com/21jdvk5.jpg)

Here is the output:

ELEM:       Ti      Fe      Al      Mn      Mg      Si      Ca       O      Li       B
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    SPEC    SPEC    CALC    STOI    RELA
BGDS:      EXP     LIN     AVG     LIN     LIN
TIME:  1200.00 1200.00 1200.00 1200.00 1200.00
BEAM:   100.09  100.09  100.09  100.09  100.09

ELEM:       Ti      Fe      Al      Mn      Mg      Si      Ca       O      Li       B   SUM
142  .00152  .01969  .00020  .01182  .03467  .00000  .00000 64.8992 8.03761 25.0453 98.0500
143  .00117  .02084  .00070  .01177  .03541  .00000  .00000 64.8992 8.03748 25.0449 98.0515
144  .00151  .02067  .00028  .01170  .03578  .00000  .00000 64.8993 8.03748 25.0449 98.0515

AVER:   .00140  .02040  .00039  .01176  .03529    .000    .000  64.899   8.038  25.045 98.0510
SDEV:   .00020  .00062  .00027  .00006  .00056    .000    .000    .000    .000    .000  .00088
SERR:   .00012  .00036  .00015  .00004  .00032  .00000  .00000  .00001  .00004  .00013
%RSD:  14.4836 3.03898 68.0015  .53620 1.59054  .00000  .00000  .00003  .00088  .00087
STDS:       22     395     336     140      12       0       0       0       0       0

STKF:    .5616   .6862   .1159   .4052   .4215   .0000   .0000   .0000   .0000   .0000
STCT:  1894.84 1019.49  330.27  164.35  978.80     .00     .00     .00     .00     .00

UNKF:    .0000   .0002   .0000   .0001   .0002   .0000   .0000   .0000   .0000   .0000
UNCT:      .04     .26     .01     .04     .46     .00     .00     .00     .00     .00
UNBG:     3.08    1.43    1.28     .31     .70     .00     .00     .00     .00     .00

ZCOR:   1.1405  1.1652  1.4834  1.1816  1.8006   .0000   .0000   .0000   .0000   .0000
KRAW:   .00002  .00026  .00002  .00025  .00046  .00000  .00000  .00000  .00000  .00000
PKBG:  1.01348 1.18203 1.00592 1.12886 1.64704  .00000  .00000  .00000  .00000  .00000
BLNK#:    ----    ----    ----    ----    ----    ----    ----    ----    ----    ----
BLNKL:    ----    ----    ----    ----    ----    ----    ----    ----    ----    ----
BLNKV:    ----    ----    ----    ----    ----    ----    ----    ----    ----    ----

Un    3, Results in Atomic Percents

ELEM:       Ti      Fe      Al      Mn      Mg      Si      Ca       O      Li       B   SUM
142  .00042  .00468  .00010  .00286  .01894  .00000  .00000 53.8443 15.3762 30.7525 100.000
143  .00032  .00495  .00035  .00284  .01934  .00000  .00000 53.8443 15.3760 30.7520 100.000
144  .00042  .00491  .00014  .00283  .01954  .00000  .00000 53.8442 15.3760 30.7520 100.000

AVER:   .00039  .00485  .00019  .00284  .01927    .000    .000  53.844  15.376  30.752 100.000
SDEV:   .00006  .00015  .00013  .00002  .00031    .000    .000    .000    .000    .000  .00000
SERR:   .00003  .00009  .00008  .00001  .00018  .00000  .00000  .00002  .00009  .00017
%RSD:  14.4836 3.03890 68.0015  .53628 1.59046  .00000  .00000  .00006  .00096  .00096

Yes, the unnormalized total is a little low, but probably good enough for the matrix correction!

Maybe this would work for Ben's situation also?

Of course one can also just simply specify the concentrations explicitly from the Specified Concentrations button in Analyze!
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Gseward on February 04, 2015, 05:50:11 PM
John,

Thanks for the reply. I think in a situation where the measured elements are in low concentration, your suggestion would work. But as you say, in the situation where the measured elements are only trace, one can simply add the matrix from the Specified Concentrations menu.
When the measured elements are a more significant contribution (and thus they have stoich O also), adding the Li relative to the calculated oxygen might become problematic. For my situation I can add approximately the correct amount of Li2B4O7 as a specified concentration, and probably get close enough, but obviously the specified concentration is not involved in any iterations.

Cheers,

Gareth
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: BenH on February 05, 2015, 08:48:40 AM
I have glasses that we are ion exchanging.  That means that the glass is immersed in a molten salt bath and alkalis exchange at the surface one for one.  The base glass composition is well known.  I don’t really need to analyze the 3 minor elements in the sample.  So I do 2 light minor elements by mole ratio to a measured element.  I do Li by difference.

I need a way to do more than one element by mole ratio to a measured major element.  Is there a way to do that?  If not, is that something that can be modified without burning the building down?

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on February 05, 2015, 09:54:23 AM
I have glasses that we are ion exchanging.  That means that the glass is immersed in a molten salt bath and alkalis exchange at the surface one for one.  The base glass composition is well known.  I don’t really need to analyze the 3 minor elements in the sample.  So I do 2 light minor elements by mole ratio to a measured element.  I do Li by difference.

I need a way to do more than one element by mole ratio to a measured major element.  Is there a way to do that?  If not, is that something that can be modified without burning the building down?

I think I should add a formula by difference option to the Calculation Options which would take care of this situation nicely. I'll do that ASAP and let you know when it is ready to download...

In the meantime you can specify fixed concentrations as a formula in the Specified Concentrations dialog as seen here:

(http://probesoftware.com/smf/oldpics/i60.tinypic.com/suvdpi.jpg)

The totals may not be perfect if your measured minor elements are significant, but it might be good enough for the matrix correction of the minor elements.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 17, 2015, 04:47:42 PM
Ok, the requested formula by difference feature has been added to both the ZAF, Phi-rho-z and alpha factor methods (not yet for the multi-standard calibration curve method), as described here:

http://probesoftware.com/smf/index.php?topic=42.msg2568#msg2568
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Gseward on June 18, 2015, 09:39:59 AM
Many thanks John. I think this will be a useful feature.

Gareth
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 18, 2015, 09:49:52 AM
The formula by difference feature is nice because the software will automatically add the elements in the formula that you aren't analyzing for. However, for the element by difference, by stoichiometry, etc., I will admit that it is not entirely obvious how to add these unanalyzed elements to the element drop down lists as seen here.

(http://probesoftware.com/smf/oldpics/i60.tinypic.com/2sbu5i0.jpg)

The secret tip is that one should add all elements (WDS, EDS, and unanalyzed elements) from the Elements/Cations dialog, by simply clicking on an empty element row as seen here:

(http://probesoftware.com/smf/oldpics/i61.tinypic.com/2mh6hd4.jpg)

and then adding the desired unanalyzed elements *without* an x-ray line as seen here:

(http://probesoftware.com/smf/oldpics/i62.tinypic.com/11hs7f7.jpg)
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on June 25, 2015, 10:16:40 AM
There is something in the way PfE calculates C in carbonates that I do not understand.

From the 2013 example of kutnohorite at: http://probesoftware.com/smf/index.php?topic=92.msg523#msg523
and ignoring the P content (as its abundance is very low):

Wt% element (from PfE):
Ca    Mn    Fe    Mg     C     O     SUM
#21   19.734   22.026   0.382   1.385   11.333   45.532   100.392
#22   19.850   21.699   0.401   1.377   11.354   45.532   100.213
#23   19.615   21.856   0.321   1.278   11.366   45.396   99.832
#24   19.767   21.962   0.363   1.423   11.338   45.574   100.427

I calculate the molar proportions using the atomic weights from Wieser and Berglund (2009) Pure Appl. Chem. 81, 2131-2156. For the general formula MCO3, the stoichiometric proportion of C should exactly equal the sum of the divalent cations. Similarly, oxygen should be present at exactly three times the proportion of C (or M).

Molar proportions from above data         Calculated values
Ca    Mn    Fe    Mg     C     O       C = sum M2+   O = 3*(sum M2+)
0.4924   0.4009   0.0068   0.0570   0.9436   2.8459      0.9571      2.8714
0.4953   0.3950   0.0072   0.0567   0.9453   2.8459      0.9541      2.8623
0.4894   0.3978   0.0057   0.0526   0.9463   2.8374      0.9456      2.8367
0.4932   0.3998   0.0065   0.0585   0.9440   2.8485      0.9580      2.8741

The molar proportions that I calculate by stoichiometry on the basis of the divalent cations do not match those reported by PfE in the example reported. Consequently, the weight proportions of C and O, and sums, that I calculate are:

Calculated by stoichiometry for the formula MCO3:
wt% C   wt% O   new sum
11.50   45.94   100.96
11.46   45.79   100.58
11.36   45.39   99.81
11.51   45.98   101.00

Calculated formula proportions:
Ca    Mn    Fe    Mg     C     O    sum
#21   0.514   0.419   0.007   0.060   1.000   3.000   5.000
#22   0.519   0.414   0.008   0.059   1.000   3.000   5.000
#23   0.518   0.421   0.006   0.056   1.000   3.000   5.000
#24   0.515   0.417   0.007   0.061   1.000   3.000   5.000

It is not clear to me what the PfE software is doing, and why the molar proportions that it reports do not exactly match the formula MCO3. From PfE:
Ca    Mn    Fe    Mg     C     O     SUM
#21   0.522   0.425   0.007   0.060   1.000   3.016   5.030
#22   0.524   0.418   0.008   0.060   1.000   3.010   5.020
#23   0.517   0.420   0.006   0.056   1.000   2.998   4.997
#24   0.522   0.423   0.007   0.062   1.000   3.017   5.031

I have a few hundred carbonate analyses acquired with PfE - except where the analytical total is exceedingly close to 100.00, the CO2 contents reported by PfE do not match stoichiometric values. PfE appears to systematically overestimate the proportion of CO2 for analyses that have low totals, and to underestimate in the case of high totals, in comparison to stoichiometric calculations. A graph of these data follows as a PDF attachment.

Edit by John: Link to post fixed
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 25, 2015, 10:49:34 AM
From the 2013 example of kutnohorite at: http://probesoftware.com/smf/index.php?topic=92.msg523#msg523
and ignoring the P content (as its abundance is very low):

Wt% element (from PfE):
Ca    Mn    Fe    Mg     C     O     SUM
#21   19.734   22.026   0.382   1.385   11.333   45.532   100.392
#22   19.850   21.699   0.401   1.377   11.354   45.532   100.213
#23   19.615   21.856   0.321   1.278   11.366   45.396   99.832
#24   19.767   21.962   0.363   1.423   11.338   45.574   100.427

Hi Andrew,
Interesting, it will be fun to figure this out!  I can't find the original Kutnahorite data anyway, so let's start with another Kutnahorite example that I can find the data for!

The first thing I might note is that you have to be aware of the various ways to calculate elemnts by stoichiometry. For example in the calcite example posted previously I specified carbon by ratio to Ca 1 : 1, and that makes sense for calcite since the other cations are traces.

But for Kutnahorite and any other mixed cation carbonate, we'll instead want to specify carbon relative something else. In these non-pure calcite samples we'll want to specify carbon by stoichiometry to calculated oxygen, for example 0.333 C to 1 O (because that is CO3) as seen here.

St  143 Set   1 Kutnahorite (Harvard #85670)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2

Specimen from Harvard Mineralogical Museum (Carl Francis)
Locality: Franklin, NJ
See Garrels, et al., 1980 AJS 258, 402-418
Also J. V. Smith, Am. Jour. Sci. 1960
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:27:04 AM to 06/15/2008 10:28:50 AM

Average Total Oxygen:         .000     Average Total Weight%:  100.343
Average Calculated Oxygen:    .000     Average Atomic Number:   13.960
Average Excess Oxygen:        .000     Average Atomic Weight:   21.115
Average ZAF Iteration:        3.00     Average Quant Iterate:     2.00

Element C is Calculated  .333 Atoms Relative To 1.0 Atom of O

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9  19.709  22.027    .382   1.385    .021  11.398  45.594 100.515
10  19.825  21.700    .401   1.376    .016  11.398  45.594 100.310
11  19.592  21.858    .321   1.278   -.008  11.398  45.594 100.032
12  19.742  21.963    .363   1.422    .032  11.398  45.594 100.514

AVER:   19.717  21.887    .367   1.365    .015  11.398  45.594 100.343
SDEV:     .096    .143    .034    .062    .017    .000    .000    .228
SERR:     .048    .071    .017    .031    .009    .000    .000
%RSD:      .49     .65    9.30    4.52  112.08     .00     .00

PUBL:   19.612  21.925    .389   1.333    n.a.  11.408  45.594 100.261
%VAR:      .53    -.17   -5.69    2.41     ---    -.09     .00
DIFF:     .105   -.038   -.022    .032     ---   -.010    .000
STDS:      138     140     145     139     285     ---     ---

STKF:    .3789   .3969   .4258   .1957   .1601     ---     ---
STCT:   125.64  132.04  141.39   64.55   53.31     ---     ---

UNKF:    .1930   .1843   .0031   .0077   .0001     ---     ---
UNCT:    63.99   61.31    1.04    2.53     .04     ---     ---
UNBG:     1.04    1.44    1.43     .47     .76     ---     ---

ZCOR:   1.0217  1.1875  1.1671  1.7819  1.1889     ---     ---
KRAW:    .5093   .4644   .0074   .0392   .0008     ---     ---
PKBG:    62.65   43.58    1.74    6.38    1.06     ---     ---

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .518    .423    .007    .060    .001   1.000   3.003   5.012
10    .521    .416    .008    .060    .001   1.000   3.003   5.008
11    .515    .419    .006    .055    .000   1.000   3.003   4.999
12    .519    .421    .007    .062    .001   1.000   3.003   5.013

AVER:     .518    .420    .007    .059    .001   1.000   3.003   5.008
SDEV:     .003    .003    .001    .003    .001    .000    .000    .007
SERR:     .001    .001    .000    .001    .000    .000    .000
%RSD:      .49     .65    9.30    4.52  112.08     .00     .00

I'll admit that 1.000 to 3.003 isn't *exactly* 3, but it's very much within the iteration tolerance. Yes, it is a 0.1% relative error but the carbon and oxygen concentrations are just there for the matrix correction and this level of error will have almost no effect on the matrix correction calculation.  I suspect the reason for this is just the matrix iteration which is adjusting the concentrations as the matrix iteration proceeds.

I'm not quite sure why you think there is a problem if you are calculating carbon relative to calculated oxygen, but here is the code I'm using to calculate things:

' Add in elements calculated relative to stoichiometric element (in0%)
For i% = 1 To zaf.in1%
If zaf.il%(i%) = 9 Then
zaf.krat!(i%) = (zaf.krat!(zaf.in0%) / zaf.atwts!(zaf.in0%)) * sample(1).StoichiometryRatio! * zaf.atwts!(i%)
zaf.krat!(zaf.in0%) = zaf.krat!(zaf.in0%) + zaf.krat!(i%) * zaf.p1!(i%)
zaf.ksum! = zaf.ksum! + zaf.krat!(i%) + zaf.krat!(i%) * zaf.p1!(i%)
End If
Next i%
End If

Where zaf.in0% is the stoichiometric oxygen channel and .p1 is calculated as seen here:

' Calculate oxide-elemental conversion factors
For i% = 1 To zaf.in1%
If zaf.atwts!(i%) = 0# Then GoTo ZAFSetZAFBadAtomicWeight
zaf.p1(i%) = p2!(i%) * AllAtomicWts!(8) / zaf.atwts!(i%)
Next i%

And .p2 is calculated as seen here:

p2!(i%) = 0#
If sample(1).OxideOrElemental% = 1 Or sample(1).numoxd%(i%) <> 0 Then
If sample(1).numcat%(i%) < 1 Then GoTo ZAFSetZAFNoCations
p2!(i%) = CSng(sample(1).numoxd%(i%)) / CSng(sample(1).numcat%(i%))
End If

I have a few hundred carbonate analyses acquired with PfE - except where the analytical total is exceedingly close to 100.00, the CO2 contents reported by PfE do not match stoichiometric values. PfE appears to systematically overestimate the proportion of CO2 for analyses that have low totals, and to underestimate in the case of high totals, in comparison to stoichiometric calculations. A graph of these data follows as a PDF attachment.

Ok, that is interesting.  So I took the above analyses and edited the raw intensities to force a low total on the first data point, but the carbon-oxygen ratio is still 1 to 3 or very close to that as seen here:

St  143 Set   1 Kutnahorite (Harvard #85670)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2
(Magnification (analytical) =   4000),        Beam Mode = Analog  Spot
(Magnification (default) =     3200, Magnification (imaging) =    100)
Image Shift (X,Y):                                        -2.00,  3.00
Pre Acquire String :                                            PB OFF
Post Acquire String :                                            PB ON

Specimen from Harvard Mineralogical Museum (Carl Francis)
Locality: Franklin, NJ
See Garrels, et al., 1980 AJS 258, 402-418
Also J. V. Smith, Am. Jour. Sci. 1960
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:27:04 AM to 06/15/2008 10:28:50 AM

Average Total Oxygen:         .000     Average Total Weight%:   97.017
Average Calculated Oxygen:    .000     Average Atomic Number:   13.729
Average Excess Oxygen:        .000     Average Atomic Weight:   20.759
Average ZAF Iteration:        3.00     Average Quant Iterate:     2.00

Element C is Calculated  .333 Atoms Relative To 1.0 Atom of O

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    RELA    SPEC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00     ---     ---
BEAM:    30.00   30.00   30.00   30.00   30.00     ---     ---

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9   6.442  21.973    .382   1.404    .021  11.398  45.594  87.213
10  19.825  21.700    .401   1.376    .016  11.398  45.594 100.310
11  19.592  21.858    .321   1.278   -.008  11.398  45.594 100.032
12  19.742  21.963    .363   1.422    .032  11.398  45.594 100.514

AVER:   16.400  21.873    .367   1.370    .015  11.398  45.594  97.017
SDEV:    6.640    .127    .034    .064    .017    .000    .000   6.539
SERR:    3.320    .063    .017    .032    .009    .000    .000
%RSD:    40.49     .58    9.30    4.71  111.79     .00     .00

PUBL:   19.612  21.925    .389   1.333    n.a.  11.408  45.594 100.261
%VAR:   -16.38    -.23   -5.69    2.77     ---    -.09     .00
DIFF:   -3.212   -.052   -.022    .037     ---   -.010    .000
STDS:      138     140     145     139     285     ---     ---

STKF:    .3789   .3969   .4258   .1957   .1601     ---     ---
STCT:   125.64  132.04  141.39   64.55   53.31     ---     ---

UNKF:    .1605   .1843   .0031   .0077   .0001     ---     ---
UNCT:    53.23   61.31    1.04    2.53     .04     ---     ---
UNBG:     1.04    1.44    1.43     .47     .76     ---     ---

ZCOR:   1.0213  1.1867  1.1670  1.7881  1.1926     ---     ---
KRAW:    .4237   .4644   .0074   .0392   .0008     ---     ---
PKBG:    52.46   43.58    1.74    6.38    1.06     ---     ---

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .169    .421    .007    .061    .001   1.000   3.003   4.663
10    .521    .416    .008    .060    .001   1.000   3.003   5.008
11    .515    .419    .006    .055    .000   1.000   3.003   4.999
12    .519    .421    .007    .062    .001   1.000   3.003   5.013

AVER:     .431    .420    .007    .059    .001   1.000   3.003   4.921
SDEV:     .175    .002    .001    .003    .001    .000    .000    .172
SERR:     .087    .001    .000    .001    .000    .000    .000
%RSD:    40.49     .58    9.30    4.71  111.79     .00     .00

I attached the data file I used to get these results below.

What am I missing?
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on June 25, 2015, 12:51:57 PM
Hi John,
I had a quick look at the new data in your post.

Why are the elemental weight percents of carbon and oxygen identical for all four analyses?

In the case of a low total, for which the stoichiometric formula MCO3 is maintained, the C and oxygen values should be similarly low.
It puzzles me that the C and O wt% for the low analysis have the same mass fractions as for the other analyses.

Quote
ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9   6.442  21.973    .382   1.404    .021  11.398  45.594  87.213

By my calculation (again ignoring phosphorus), for the following mass fractions:
Ca       Mn       Fe       Mg
6.442  21.973  0.382  1.404

the mass fractions of C and O for the formula MCO3 should be:
wt% C   wt% O   new sum
7.51     30.01     67.72

This will yield the formula Ca 0.257; Mn 0.640; Fe 0.011; Mg 0.092; C 1.000; O 3.000; Sum 5.000; which is charge balanced.

In contrast, the formula listed for this low analysis has a charge imbalance of about -0.67 pfu:
Quote
143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .169    .421    .007    .061    .001   1.000   3.003   4.663

I have attached the Excel file of analyses to which my previous post referred. This includes all 267 analytical points, rather than just the best 226 shown in the graph attached to the previous post.

Thanks for looking into this - I am certainly missing something.

Cheers,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 25, 2015, 01:52:03 PM
Why are the elemental weight percents of carbon and oxygen identical for all four analyses?

Ooops!  It's because I forgot to specify that the program calculate oxygen by stoichiometry for this kutnahorite sample!  The default method for specifying unanalyzed elements for standards is to just load the missing specified elements from the standard database!

Ok, so if I now properly specify calculate oxygen by stoichiometry (as opposed to just loading it from the standard database) I now get this result:

St  143 Set   1 Kutnahorite (Harvard #85670)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2

Specimen from Harvard Mineralogical Museum (Carl Francis)
Locality: Franklin, NJ
See Garrels, et al., 1980 AJS 258, 402-418
Also J. V. Smith, Am. Jour. Sci. 1960
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:27:04 AM to 06/15/2008 10:28:50 AM

Average Total Oxygen:       45.503     Average Total Weight%:  100.200
Average Calculated Oxygen:  45.506     Average Atomic Number:   13.969
Average Excess Oxygen:       -.003     Average Atomic Weight:   21.128
Average ZAF Iteration:        7.00     Average Quant Iterate:     2.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .333 Atoms Relative To 1.0 Atom of Oxygen

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9  19.706  22.024    .382   1.385    .021  11.335  45.527 100.381
10  19.823  21.698    .401   1.377    .016  11.356  45.527 100.198
11  19.588  21.855    .321   1.278   -.008  11.368  45.391  99.793
12  19.740  21.961    .363   1.423    .032  11.341  45.569 100.428

AVER:   19.714  21.884    .367   1.365    .015  11.350  45.503 100.200
SDEV:     .097    .143    .034    .062    .017    .015    .077    .289
SERR:     .049    .071    .017    .031    .009    .007    .039
%RSD:      .49     .65    9.30    4.53  112.08     .13     .17

PUBL:   19.612  21.925    .389   1.333    n.a.  11.408  45.594 100.261
%VAR:      .52    -.18   -5.70    2.43     ---    -.51    -.20
DIFF:     .102   -.041   -.022    .032     ---   -.058   -.091
STDS:      138     140     145     139     285     ---     ---

STKF:    .3789   .3969   .4258   .1957   .1601     ---     ---
STCT:   125.64  132.04  141.39   64.55   53.31     ---     ---

UNKF:    .1930   .1843   .0031   .0077   .0001     ---     ---
UNCT:    63.99   61.31    1.04    2.53     .04     ---     ---
UNBG:     1.04    1.44    1.43     .47     .76     ---     ---

ZCOR:   1.0216  1.1873  1.1669  1.7822  1.1889     ---     ---
KRAW:    .5093   .4644   .0074   .0392   .0008     ---     ---
PKBG:    62.65   43.58    1.74    6.38    1.06     ---     ---

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .521    .425    .007    .060    .001   1.000   3.015   5.029
10    .523    .418    .008    .060    .001   1.000   3.010   5.018
11    .516    .420    .006    .056    .000   1.000   2.997   4.995
12    .522    .423    .007    .062    .001   1.000   3.016   5.031

AVER:     .521    .422    .007    .059    .001   1.000   3.010   5.019
SDEV:     .003    .003    .001    .003    .001    .000    .009    .016
SERR:     .001    .002    .000    .001    .000    .000    .004
%RSD:      .56     .75    9.36    4.64  112.00     .00     .29

Ok, now let's try forcing a bad total on the first line again as seen here:

St  143 Set   1 Kutnahorite (Harvard #85670)
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    2

Specimen from Harvard Mineralogical Museum (Carl Francis)
Locality: Franklin, NJ
See Garrels, et al., 1980 AJS 258, 402-418
Also J. V. Smith, Am. Jour. Sci. 1960
Number of Data Lines:   4             Number of 'Good' Data Lines:   4
First/Last Date-Time: 06/15/2008 10:27:04 AM to 06/15/2008 10:28:50 AM

Average Total Oxygen:       45.029     Average Total Weight%:   96.717
Average Calculated Oxygen:  45.032     Average Atomic Number:   13.740
Average Excess Oxygen:       -.003     Average Atomic Weight:   20.750
Average ZAF Iteration:        7.00     Average Quant Iterate:     2.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .333 Atoms Relative To 1.0 Atom of Oxygen

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9   6.438  21.969    .382   1.399    .021  12.613  43.628  86.451
10  19.823  21.698    .401   1.377    .016  11.356  45.527 100.198
11  19.588  21.855    .321   1.278   -.008  11.368  45.391  99.793
12  19.740  21.961    .363   1.423    .032  11.341  45.569 100.428

AVER:   16.397  21.871    .367   1.369    .015  11.670  45.029  96.717
SDEV:    6.640    .127    .034    .064    .017    .629    .937   6.849
SERR:    3.320    .063    .017    .032    .009    .315    .468
%RSD:    40.50     .58    9.30    4.65  111.82    5.39    2.08

PUBL:   19.612  21.925    .389   1.333    n.a.  11.408  45.594 100.261
%VAR:   -16.39    -.25   -5.70    2.70     ---    2.29   -1.24
DIFF:   -3.215   -.054   -.022    .036     ---    .262   -.565
STDS:      138     140     145     139     285     ---     ---

STKF:    .3789   .3969   .4258   .1957   .1601     ---     ---
STCT:   125.64  132.04  141.39   64.55   53.31     ---     ---

UNKF:    .1605   .1843   .0031   .0077   .0001     ---     ---
UNCT:    53.23   61.31    1.04    2.53     .04     ---     ---
UNBG:     1.04    1.44    1.43     .47     .76     ---     ---

ZCOR:   1.0211  1.1866  1.1669  1.7868  1.1922     ---     ---
KRAW:    .4237   .4644   .0074   .0392   .0008     ---     ---
PKBG:    52.46   43.58    1.74    6.38    1.06     ---     ---

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .153    .381    .007    .055    .001   1.000   2.597   4.192
10    .523    .418    .008    .060    .001   1.000   3.010   5.018
11    .516    .420    .006    .056    .000   1.000   2.997   4.995
12    .522    .423    .007    .062    .001   1.000   3.016   5.031

AVER:     .429    .411    .007    .058    .001   1.000   2.905   4.809
SDEV:     .184    .020    .001    .003    .001    .000    .206    .412
SERR:     .092    .010    .000    .002    .000    .000    .103
%RSD:    42.88    4.86    9.50    5.94  114.34     .00    7.08

Now that makes more sense, the total (and calculated oxygen) is low because of the missing Ca.  Remember, this calculation for matrix effects of unanalyzed elements is *not* an attempt to perform a charge balance of anything- it is just based on the measured concentrations.  If the measured concentrations are "off", the calculation of elements by stoichiometry will also be "off".

Does this help?
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on June 25, 2015, 03:01:22 PM
I would have thought that in the case of a bad (low) total, the oxygen calculated by stoichiometric proportion to the divalent cations would be low.
The carbon, calculated by proportion to that oxygen, should therefore also be low, not high, as in your example.

Quote
St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9   6.438  21.969    .382   1.399    .021  12.613  43.628  86.451
10  19.823  21.698    .401   1.377    .016  11.356  45.527 100.198
11  19.588  21.855    .321   1.278   -.008  11.368  45.391  99.793
12  19.740  21.961    .363   1.423    .032  11.341  45.569 100.428

I do agree that including some proportion of C in the correction procedure should improve the results.
However, at present, PfE is generating totals based on CO2 contents that are not in actual exact stoichiometric proportion to the divalent cations.
These analytical totals can therefore be misleading as they are, in fact, erroneous.

As the actual total deviates from 100.00 wt%, PfE is either overestimating C (for low totals), or underestimating C (for high totals).
Such deviations could therefore mask the true character of the analysis.

In the case of carbonates, the user must recalculate the correct stoichiometric CO2 contents based on the divalent metal cations.
I cannot see publishing analyses where C and O were not measured but rather determined by stoichiometric constraints, but that still do not charge balance....

Why does the C content deviate from stoichiometry as a function of total?

Thanks,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 25, 2015, 03:31:48 PM
I would have thought that in the case of a bad (low) total, the oxygen calculated by stoichiometric proportion to the divalent cations would be low.
The carbon, calculated by proportion to that oxygen, should therefore also be low, not high, as in your example.

Quote
St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9   6.438  21.969    .382   1.399    .021  12.613  43.628  86.451
10  19.823  21.698    .401   1.377    .016  11.356  45.527 100.198
11  19.588  21.855    .321   1.278   -.008  11.368  45.391  99.793
12  19.740  21.961    .363   1.423    .032  11.341  45.569 100.428

Hi Andrew,
The carbon is not based on the total, it is based on the calculated oxygen which in turn (with this particular calculation option) is based on the cation concentrations.

And in the line above with a bad total, the calculated oxygen concentration *is* low as expected, because some Ca intensity is missing (I edited it to a lower intensity!).

But because the relative ratio of carbon to oxygen is based on the atomic stochiometry, not the concentration stoichiometry, the relative carbon to oxygen has to be different for concentrations compared to atoms.

As seen here, in the formula atoms, the number of oxygen atoms *is* low compared to the carbon as we would expect:

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .153    .381    .007    .055    .001   1.000   2.597   4.192
10    .523    .418    .008    .060    .001   1.000   3.010   5.018
11    .516    .420    .006    .056    .000   1.000   2.997   4.995
12    .522    .423    .007    .062    .001   1.000   3.016   5.031

AVER:     .429    .411    .007    .058    .001   1.000   2.905   4.809
SDEV:     .184    .020    .001    .003    .001    .000    .206    .412
SERR:     .092    .010    .000    .002    .000    .000    .103
%RSD:    42.88    4.86    9.50    5.94  114.34     .00    7.08

This all makes sense to me.

In the case of carbonates, the user must recalculate the correct stoichiometric CO2 contents based on the divalent metal cations.

I cannot see publishing analyses where C and O were not measured but rather determined by stoichiometric constraints, but that still do not charge balance....

Why does the C content deviate from stoichiometry as a function of total?

Again, the C content deviates from stoichiometry *not* as a function of the total but as a function of the total cations.

When the formula proportions are calculated from the concentrations, everything is normalized to the sum of the atoms as it should be. You cannot get charge balance if the analysis is wrong!

It seems you are asking for an exact C to O of 1 to 3, but that is impossible if the carbon is based on the calculated oxygen and the calculated oxygen is wrong because the analysis is bad.

I'm not a geologist so maybe there's some mineralogical thing you are concerned about, but one can't expect the right stoichiometries if the concentrations are wrong, correct?

Maybe you should just do the formula by difference option and specify CO3 as your formula...?
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: JohnF on June 25, 2015, 04:30:25 PM
I just got back from travel and  don’t have time and energy now to read the whole thread. But I do have a comment which perhaps doesn't deal with the exact question, but for me, PfE does carbonates as good as can be done by EPMA.

I have never had a problem with the way PfE does carbonates, BECAUSE a correct analysis is self consistent if and only if
(0) All the existent cations are measured,
(1) the analytical total after all the smoke and mirrors is 99.5 - 100.5 (which it is almost always when things done properly)
AND
(2) The cations sum to 1 (.995-1.005), the Carbon is very close if not dead on 1 and the Oxygen is 3 or very close.

In lieu of doing x-ray diffraction to prove it truly is a carbonate, this seems to me to be as close as one can get to an EPMA analysis of a carbonate mineral without measuring O and C (and I’ve tried it, and it aint easy, and you do not get good numbers).
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on June 25, 2015, 04:43:01 PM
Hi John,
I don't mean to be obtuse, but the essence of your argument is not clear to me.

Whether or not an analysis has a good total is independent of the nature of the formula wherein a large portion is calculated by stoichiometry, and not measured.

For ideal calcite, Ca = 40.04 wt%, and the C and O calculated by stoichiometry (for the formula CaCO3) are necessarily: C = 12.00 wt%, O = 47.96 wt%, and sum = 100.00 wt%. The formula is CaCO3.

For a "bad analysis" of calcite, where Ca = 38.41 wt%, the stoichiometric ratio 1 Ca = 1 C = 3 O yields: C = 11.51 wt%, O = 46.00 wt%, and sum 95.92 wt%. The formula is still(!) CaCO3 - after all, Ca  is the only thing that we have measured.

If oxygen is calculated by stoichiometry to Ca, and C is calculated by stoichiometry to oxygen, how could it be otherwise?

In PfE, in the "Calculation Options" window, the 2 checked options that I am using are: "Calculate with Stoichiometric Oxygen", and "Stoichiometry To Calculated Oxygen: 0.333 Atoms Of C To 1 Oxygen" (as per screen capture in the attached Word document).

I don't understand the distinction that you make:
Quote
But because the relative ratio of carbon to oxygen is based on the atomic stochiometry, not the concentration stoichiometry, the relative carbon to oxygen has to be different for concentrations compared to atoms.

The C to O atomic ratio is fixed: 0.333 C to 1 O. The O to Ca ratio is also fixed: 1 to 1.

I appreciate your assistance in helping with my (mis)understanding of what PfE is doing.

Thanks,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 25, 2015, 05:09:02 PM
I appreciate your assistance in helping with my (mis)understanding of what PfE is doing.

Hi Andrew,
I'm sorry. Likewise I don't understand your point.

It seems clear to me that if total is low due to a missing cation, the normalization to the total atoms will not maintain the 1:3 ratio of carbon to oxygen, because concentrations are not atoms. It will only be perfect if the analysis is perfect.

I'd be happy to continue the conversation, but maybe you should just use the formula by difference option and specify CO3 by difference. I promise you will get the 1 to 3 carbon to oxygen ratio you seem to require.

I think part of the confusion is that I'm calculating these elements by stoichiometry in weight percent and then normalizing these concentrations to formula atoms...

I have some mineralogical calculations for amphiboles and biotite, but not for other minerals, sorry to say.  But if you could write some charge balancing code for carbonates, I'd be pleased to incorporate that into PFE.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Julien on June 26, 2015, 07:18:58 AM
Hi Andrew & co,

I *might* agree that this can be confusing. Let's take back the example of good and bad analysis you give (I converted the Ca content in CaO):

Wt-% (O norm.), CaO, CO2, Total
Analysis 1, 56.0238, 43.9673, 99.9911
Analysis 2, 53.7431, 42.1774, 95.9205

Norm., Ca, C, Total cation, O
Analysis 1, 1.00000, 1.00000, 2.00000, 3.00000
Analysis 2, 1.00000, 1.00000, 2.00000, 3.00000

Effectively in both case you still have 1 C for 3 O. With this "simple" case of one cation, you will ALWAYS get 1 cation of Ca, 1 of C and one of O. This is because of the normalization process, which specify (in normal situation) a fixed amount of oxygen per cation to balance the charge. Now, if we consider carbonate, we can assume it must have one oxygen atom for each atom of calcium, and add to this one molecule of CO2, but the more logical way to see this problem is NOT to consider just C, or just CO2, but effectively CO3. Of course, at the end, the recalculation effectively reports results as elemental C wt-% or CO2 wt-%. Key is that, through the mineral formula recalculation, the “game” is always to balance the positive charges (= what is measured) with anions that are NOT measured. In most case, we simply compensate all positive charges with O2-, and the amount of O is defined by the fixed oxidation state for each cation. In the case of carbonate, the negative charge is effectively (CO3)2-, which makes even more sense when we look at the crystalline structure of carbonate; they are effectively made of CO3 triangles and not isolate CO2 molecule ;). Hence a ratio of 1/3 carbon for 1 oxygen (or 1 C for 3 O). Of course, one could state that we have one CO2 and one atom of O, but to me it makes more sense to simply consider CO3 “as a single anionic molecule”.

The problem of hydrogen is the same! Hydrogen is a cation (that we cannot measure by EMP), but you balance the charges with anion of (OH)-, and you do not consider simply H+, or H2O; again the crystalline structure show H as being OH anion group, not H2O molecule or isolate H cation… For hydrous mineral, you can consider the total positive charges and the total oxygen WITH oxygen from hydroxide group, but you need to “correct” the total amount of oxygen used to balanced the measured cation (i.e., all cations WITHOUT hydrogen). For instance:

Epidote = (Ca2)(Al2Fe3+)(Si2O7)(SiO4)O(OH)

=> 13 oxygens TOTAL = 26 negative charges

……BUT…… There is ONE hydrogen atom (1 positive charge) that is calculated by stoichiometry and charge balance (or by difference - wrong idea here!).

=> actually there are 12.5 oxygen (a number often refer as being ideal for epidote normalization - without taking into account of Fe2+/Fe3+ issue), as the “half-oxygen” is used to balance the charge of the calculated 1 hydrogen atom. However, to my opinion this is wrong to state this, and we should rather consider 13 oxygens INCLUDING one O associated to one H (and correct for this through the normalization process).

BTW, take a look at my website, I have implemented a form to calculate mineral formula, and it does do the trick (well, kind of a black box for user without access to my code) to calculate any H2O or CO2 content based on user input. To make it more “geologically meaningful”, I speak about H2O or CO2 groups, but the calculation does include what I describe above...

http://cub.geoloweb.ch/index.php?page=mineral_formula (http://cub.geoloweb.ch/index.php?page=mineral_formula)

Just my \$0.02, but I believe, John, you are doing things 200% correctly, although I can understand Karsten's comment about the "user-friendliness" of the input. Maybe I can work with you to implement a solution similar to what I have on my website.

Julien

Edit by John: I'd be pleased to implement any mineral recalculation code in PFE that anyone makes available... it's good to have geologist friends!
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Karsten Goemann on June 27, 2015, 07:49:10 PM
All,

I think the point Andrew is trying to make is that, no matter what the the actual cation concentrations are (e.g. in case of a bad measurement or even just some minor variations due to counting statistics), he would expect the ratios always to be 1 total cations : 1 carbon : 3 oxygen ratio, no matter what the actual analytical total is, as C and O are calculated from the cations by stoichiometry. (C indirectly via O.)

If you have a look at the Excel spreadsheet with the data Andrew posted, there are some measurements with somewhat low cation totals which start to deviate from this assumption, but at the most extreme he's got some analyses in there which basically show zero cations (< 1wt% cation totals), probably just resin measurements, but have calculated carbon of 18 wt% and O of 48 wt%. Independent of those obviously being bad measurements which can't be used, what is the exact reason why C and O are so much higher than what would be their values calculated by stoichiometry?

I admit I don't know too much about the inner mathematical workings of matrix corrections myself, but I assume that the low cation totals make the carbon and oxygen concentrations "go wild" in the iteration (e.g. because of reduced absorption) towards much higher values than what would be stoichiometric. I assume there is a good reason why C and O can't be "pinned" to the cation values within the matrix correction?

Cheers,
Karsten
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 27, 2015, 07:54:50 PM
I think the point Andrew is trying to make is that, no matter what the the actual cation concentrations are (e.g. in case of a bad measurement or even just some minor variations due to counting statistics), he would expect the ratios always to be 1 total cations : 1 carbon : 3 oxygen ratio, no matter what the actual analytical total is, as C and O are calculated from the cations by stoichiometry. (C indirectly via O.)

If you have a look at the Excel spreadsheet with the data Andrew posted, there are some measurements with somewhat low cation totals which start to deviate from this assumption, but at the most extreme he's got some analyses in there which basically show zero cations (< 1wt% cation totals), probably just resin measurements, but have calculated carbon of 18 wt% and O of 48 wt%. Independent of those obviously being bad measurements which can't be used, what is the exact reason why C and O are so much higher than what would be their values calculated by stoichiometry?

I admit I don't know too much about the inner mathematical workings of matrix corrections myself, but I assume that the low cation totals make the carbon and oxygen concentrations "go wild" in the iteration (e.g. because of reduced absorption) towards much higher values than what would be stoichiometric. I assume there is a good reason why C and O can't be "pinned" to the cation values within the matrix correction?

Hi Karsten,
I have to admit I pretty confused about all this too. But the relative C:O ratio can be "pinned" if the formula (CO3) difference option is specified.

As I said previously, if the amount of carbon is dependent on the amount of calculated oxygen and the calculated oxygen is wrong because the total/analysis is bad, etc, then that C:O ratio will be wrong...  it just depends on the calculation option selected.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Julien on June 27, 2015, 10:09:29 PM
This thread becomes really interesting. And thanks to Karsten, I think to now understand the problem, but I don't have the solution. I maintain that the idea of a 1:3 ratio C to O is required. And effectively, probably all of us do agree with that. Normally, with this assumption, you should get the right CO2 wt-% value with this, AND you should effectively get the amount of C (atoms) equal to the amount of 2+ cation (atoms).

It is *possible* there is an error in Probe for EPMA (John?). I realized this by re-doing all the calculations both by hand and through my website. The complete XL sheet is attached to this thread. Let me know if you find an error in my logic (the spreadsheet contain all the formula employed)...

Let's start with the output from Probe for EPMA mentioned by Andrew:

Ca      Mn      Fe      Mg      C      O      SUM
#21   19.734   22.026   0.382   1.385   11.333   45.532   100.392
#22   19.85   21.699   0.401   1.377   11.354   45.532   100.213
#23   19.615   21.856   0.321   1.278   11.366   45.396   99.832
#24   19.767   21.962   0.363   1.423   11.338   45.574   100.427

I recalculated this in oxide, as I personally prefer to deal with oxide when it comes to oxide / carbonate:

CaO      MnO      FeO      MgO      CO2
#21   27.612   28.440   0.491   2.297   41.525
#22   27.774   28.018   0.516   2.283   41.602
#23   27.445   28.221   0.413   2.119   41.646
#24   27.658   28.358   0.467   2.360   41.543

Now... Here is the output that Andrew mention regarding atom per formula unit:

Fe2+      Mg      Mn      Ca      C      Total cation      O
#21   0.0072   0.0601   0.4229   0.5194   0.9952   2.0048   3.0000
#22   0.0076   0.0597   0.4165   0.5223   0.9969   2.0031   3.0000
#23   0.0061   0.0556   0.4205   0.5173   1.0003   1.9997   3.0000
#24   0.0069   0.0617   0.4214   0.5199   0.9951   2.0049   3.0000

(I did recalculated this through my online tool for mineral formula recalculation forcing a total of 3 oxygens). This is similar to the results from Probe for EPMA. Notice that effectively, the total number of 2+ cation do NOT match the total number of C!!! I believe this is because somehow the wt-% C calculated by Probe for EPMA is slightly wrong (well, hypothesis)!

Here is now the results of oxide wt-% recalculated based on the assumption that the sum of 2+ cations is equal to the number of atom of carbon - or, since we are dealing only with 2+ cation, we can rather state that the sum of the cations is balanced by an equal amount of (CO3)2- molecule.

FeO      MgO      MnO      CaO      CO2      Total
#21   0.4910   2.2970   28.4400   27.6120   42.1227   100.9627
#22   0.5160   2.2830   28.0180   27.7740   41.9881   100.5791
#23   0.4130   2.1190   28.2210   27.4450   41.6137   99.8117
#24   0.4670   2.3600   28.3580   27.6580   42.1621   101.0051

Notice the CO2 is now higher, between 41.61 and 42.16% (versus 41.52 and 41.65% from PfE). What I do NOT understand, is that this difference is not consistent! For instance, analysis #24 yield the highest CO2 content through my calculation, whereas analysis #23 yield the highest content with Probe for EPMA. Once the difference in calculated CO2 wt-% is +0.032% (analysis #23), sometime it is strongly negative (PfE underestimate CO2 content by -0.39% [analysis #22] to -0.62% [analysis #24]).

And as a check, here is now the NEW mineral formula recalculation based on this new CO2 wt-% recalculation. Notice that now both the total of 2+ cations do match the number of C-atom:

Fe2+      Mg      Mn      Ca      C      O         Sum M
#21   0.014   0.119   0.838   1.029   2.000   6.000      2.000
#22   0.015   0.119   0.828   1.038   2.000   6.000      2.000
#23   0.012   0.111   0.841   1.035   2.000   6.000      2.000
#24   0.014   0.122   0.835   1.030   2.000   6.000      2.000

Question to John: HOW do you recalculate the CO2 in weight-%? I guess, you run the C (or CO2) wt-% content through the matrix correction, right? But you also need to perform a conversion in atomic proportion to recalculate the C (or CO2) content, right? Maybe posting (or sending to me by email) your VB code might help me understanding where the error could be... Otherwise, you can also look at my spreadsheet to assess how this should be done?

Julien
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 27, 2015, 10:46:26 PM
Hi Julien,
Thanks for looking at this. This thread is getting way long, but my calculation code is in this post:

http://probesoftware.com/smf/index.php?topic=92.msg2950#msg2950

I'm pleased to fix anything that isn't right but I don't see anything wrong with the existing calculation for carbon by stoichiometry to calculated oxygen.  As I said previously, the CO3 by difference option is probably what you guys are looking for if you need to maintain an exact C:O ratio regardless of the analysis quality.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Gseward on June 28, 2015, 08:41:21 AM
CO3 by difference does not maintain stoichiometry with cations. This is also desired.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 28, 2015, 09:52:36 AM
CO3 by difference does not maintain stoichiometry with cations. This is also desired.

Hi Gareth,
Yes, it is not a perfect world!

I am about to post something that I hope helps everyone.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 28, 2015, 11:29:58 AM
Question to John: HOW do you recalculate the CO2 in weight-%? I guess, you run the C (or CO2) wt-% content through the matrix correction, right? But you also need to perform a conversion in atomic proportion to recalculate the C (or CO2) content, right? Maybe posting (or sending to me by email) your VB code might help me understanding where the error could be... Otherwise, you can also look at my spreadsheet to assess how this should be done?

Hi Julien,

1. The oxygen calculated by stoichiometry to the measured cations is added to the matrix correction as a concentration. Likewise, the carbon calculated by stoichiometry to oxygen is also added to the matrix correction as the code above shows as a concentration also.

2. This calculation is iterated because as the concentrations of the cations change, due to the (relatively minor) matrix effect of adding oxygen and carbon, the oxygen and carbon by calculation also are changed as they should.

3. Note that all concentrations are normalized to 100% during the matrix iteration to assist in the matrix correction calculation.  If this was not done, some measurements would never converge!

4. Once the matrix iteration converges, the concentration are de-normalized to the actual concentration total and the program then hands off the concentrations to the output routines which convert the concentrations to oxides, formula atoms, etc., if specified by the user.

But please realize the original title of this topic. It is about including unanalyzed elements in the matrix correction so the matrix correction is properly calculated!  The code we are discussing is *not* an effort to determine the actual oxygen and carbon concentrations, it is merely to aid in the calculation of the matrix physics!

For example, here is the calculation with the oxygen and carbon specified by calculation as we have been discussing (oxygen by cation stoichiometry and carbon calculated by stocihiometry to calculated oxygen):

St  143 Set   1 Kutnahorite (Harvard #85670), Results in Elemental Weight Percents

ELEM:       Ca      Mn      Fe      Mg       P       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    STOI    CALC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00     ---     ---
BEAM:    30.00   30.00   30.00   30.00   30.00     ---     ---

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9  19.706  22.024    .382   1.385    .021  11.335  45.527 100.381
10  19.823  21.698    .401   1.377    .016  11.356  45.527 100.198
11  19.588  21.855    .321   1.278   -.008  11.368  45.391  99.793
12  19.740  21.961    .363   1.423    .032  11.341  45.569 100.428

AVER:   19.714  21.884    .367   1.365    .015  11.350  45.503 100.200
SDEV:     .097    .143    .034    .062    .017    .015    .077    .289
SERR:     .049    .071    .017    .031    .009    .007    .039
%RSD:      .49     .65    9.30    4.53  112.08     .13     .17

PUBL:   19.612  21.925    .389   1.333    n.a.  11.408  45.594 100.261
%VAR:      .52    -.18   -5.70    2.43     ---    -.51    -.20
DIFF:     .102   -.041   -.022    .032     ---   -.058   -.091
STDS:      138     140     145     139     285     ---     ---

STKF:    .3789   .3969   .4258   .1957   .1601     ---     ---
STCT:   125.64  132.04  141.39   64.55   53.31     ---     ---

UNKF:    .1930   .1843   .0031   .0077   .0001     ---     ---
UNCT:    63.99   61.31    1.04    2.53     .04     ---     ---
UNBG:     1.04    1.44    1.43     .47     .76     ---     ---

ZCOR:   1.0216  1.1873  1.1669  1.7822  1.1889     ---     ---
KRAW:    .5093   .4644   .0074   .0392   .0008     ---     ---
PKBG:    62.65   43.58    1.74    6.38    1.06     ---     ---

St  143 Set   1 Kutnahorite (Harvard #85670), Results Based on 1 Atoms of c

ELEM:       Ca      Mn      Fe      Mg       P       C       O   SUM
9    .521    .425    .007    .060    .001   1.000   3.015   5.029
10    .523    .418    .008    .060    .001   1.000   3.010   5.018
11    .516    .420    .006    .056    .000   1.000   2.997   4.995
12    .522    .423    .007    .062    .001   1.000   3.016   5.031

AVER:     .521    .422    .007    .059    .001   1.000   3.010   5.019
SDEV:     .003    .003    .001    .003    .001    .000    .009    .016
SERR:     .001    .002    .000    .001    .000    .000    .004
%RSD:      .56     .75    9.36    4.64  112.00     .00     .29

Yes, I agree the carbon to oxygen ratio is off by around 0.3 % as Andrew points out and this *is* as he says because the total is not exactly 100%. But we are only including carbon and oxygen to help with the matrix correction accuracy! For example:

Here is the same kutnahorite analysis average exported to CalcZAF (you will see in a moment why I do this, but CalcZAF uses exactly the same code as PFE) as we have been doing, that is oxygen by stocihiometry and carbon by stoichiometry to calculated oxygen and again the C:O ratio is off by 0.3% as we saw in PFE:

ELEMENT   K-RAW K-VALUE ELEMWT% OXIDWT% ATOMIC% FORMULA KILOVOL
Ca ka  .50929  .19297  19.714  27.584  10.372    .521   15.00
Mn ka  .46436  .18432  21.885  28.258   8.400    .422   15.00
Fe ka  .00738  .00314    .367    .472    .139    .007   15.00
Mg ka  .03916  .00766   1.365   2.264   1.185    .059   15.00
P  ka  .00080  .00013    .015    .035    .010    .001   15.00
C                      11.350  41.587  19.925   1.000
O                        .000    .000    .000    .000
O                      45.505   -----  59.970   3.010
TOTAL:                100.201 100.201 100.000   5.019

Now, because I will be removing the carbon and oxygen from the matrix correction in the calculations below, I will normalize to Ca instead of carbon as seen here:

ELEMENT  ABSCOR  FLUCOR  ZEDCOR  ZAFCOR STP-POW BKS-COR   F(x)u      Ec   Eo/Ec    MACs
Ca ka  1.0023   .9832  1.0366  1.0216  1.0812   .9588   .9607  4.0390  3.7138 153.893
Mn ka  1.0071   .9999  1.1791  1.1873  1.2431   .9486   .9757  6.5390  2.2939 108.543
Fe ka  1.0039  1.0000  1.1624  1.1669  1.2251   .9488   .9808  7.1120  2.1091 89.0408
Mg ka  1.7946   .9992   .9939  1.7822   .9848  1.0092   .4828  1.3050 11.4943 2855.99
P  ka  1.1561   .9933  1.0353  1.1889  1.0493   .9867   .7943  2.1460  6.9897 834.429

ELEMENT   K-RAW K-VALUE ELEMWT% OXIDWT% ATOMIC% FORMULA KILOVOL
Ca ka  .50929  .19297  19.714  27.584  10.372   1.000   15.00
Mn ka  .46436  .18432  21.885  28.258   8.400    .810   15.00
Fe ka  .00738  .00314    .367    .472    .139    .013   15.00
Mg ka  .03916  .00766   1.365   2.264   1.185    .114   15.00
P  ka  .00080  .00013    .015    .035    .010    .001   15.00
C                      11.350  41.587  19.925   1.921
O                        .000    .000    .000    .000
O                      45.505   -----  59.970   5.782
TOTAL:                100.201 100.201 100.000   9.642

Now what if we *did not* include the oxygen and carbon by calculation in the matrix correction physics?  Here is what we would get:

ELEMENT  ABSCOR  FLUCOR  ZEDCOR  ZAFCOR STP-POW BKS-COR   F(x)u      Ec   Eo/Ec    MACs
Ca ka  1.0195   .9767   .9474   .9434   .9345  1.0138   .9445  4.0390  3.7138 87.6428
Mn ka  1.0326   .9998  1.0646  1.0992  1.0791   .9866   .9516  6.5390  2.2939 87.4901
Fe ka  1.0242  1.0000  1.0468  1.0721  1.0645   .9834   .9613  7.1120  2.1091 72.0165
Mg ka  2.0852   .9985   .9141  1.9032   .8450  1.0817   .4155  1.3050 11.4943 1453.98
P  ka  1.2480   .9882   .9539  1.1763   .9028  1.0565   .7358  2.1460  6.9897 454.843

ELEMENT   K-RAW K-VALUE ELEMWT% OXIDWT% ATOMIC% FORMULA KILOVOL
Ca ka  .50929  .19297  18.204   -----  51.063   1.000   15.00
Mn ka  .46436  .18432  20.260   -----  41.459    .812   15.00
Fe ka  .00738  .00314    .337   -----    .678    .013   15.00
Mg ka  .03916  .00766   1.458   -----   6.744    .132   15.00
P  ka  .00080  .00013    .015   -----    .055    .001   15.00
C                        .000   -----    .000    .000
O                        .000   -----    .000    .000
TOTAL:                 40.275   ----- 100.000   1.958

First note that the matrix corrections are different (see Ca in red). That is to say *wrong* because we did not have carbon and oxygen in the matrix for calculating the proper physics.  That is after all the entire point of this topic.  Yes, it's small difference for Mn, but it's worth doing.

In the case of Mg, the difference is *not* so small, because this is a low energy element and more affected by the matrix physics. So, the additional of carbon and oxygen to the calculation makes a significant improvement to accuracy of the measured elements, which is the whole point.

So we are adding the oxygen and carbon by stoichiometry to the analysis to improve the matrix correction and it is doing that as expected. Now the C:O ratio gets slightly distorted because of the subsequent formula atom renomalization (carbon and oxygen have different atomic weights) when the total is not exactly 100%.

But since we are only adding oxygen and carbon to correct the physics, that is the nature of this beast! My best advice is, if you want the C:O ratio exactly 3, then you should utilize the CO3 formula by difference option.  In either case the difference to the matrix correction physics is negligible.

I have to run off for the day, but I will return later and add some additional thoughts.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on June 28, 2015, 03:42:41 PM
Hi John,

Let me emphasize that I agree with John Fournelle that PfE generates the best carbonate analyses. And also, that I agree with you: C and O should be included in the matrix corrections to improve the accuracy of the measured elements.

However, the results that I am obtaining are not in actual stoichiometric proportion; they are just close to it. This is a problem for me (as I like to make a quick judgement of the quality of an analysis by its total), and for my users (relying on the reported CO2 concentrations, or C and O concentrations).

I ran some analyses of a calcite from an unknown locality using the Smithsonian calcite standard (which is published to have 56.10 wt% CaO = 40.09 wt% Ca), at 15 kV, 10 nA, 5 micron beam diameter, with count times of 30 s on peak, 15 s on each background, JEOL 8900R. The mdb file is attached for your interest.

Probe for EPMA has several calculation options. It is instructive to compare them for a given analytical point (my #24):

Calculate as Elemental: gives Ca 37.44, C 0, O 0, total 37.44 wt%.

Calculate with Stoichiometric Oxygen: gives Ca 38.39, C0, O 15.33, total 53.72 wt%.
(Note that Ca and O are in a perfect stoichiometric ratio of 1:1, specifically 0.9579 mol Ca and 0.9579 mol O).

Calculate with Stoichiometric Oxygen; Stoichiometry to Calculated Oxygen 0.3333333 C to 1 O: gives Ca 39.57, C 12.04, O 47.87, total 99.48 wt%. (Note that the elements are not in the stoichiometric proportion of 1:1:3, rather the molar proportions here are 0.9873 Ca, 1.0024 C, and 2.9921 O).

It appears that including O-by-stoichiometry improves the result for Ca, and is reported in stoichiometric proportion. Including both C and O further improves the result for Ca, but is not reported in stoichiometric proportion. It is not clear to me why stoichiometry is maintained in the first case, but not the second.

Perhaps, after the matrix corrections are completed, PfE should recalculate the mass fractions of C and O to be in stoichiometric agreement with the analyzed elements?

I should point out two problems that I observed in analyzing calcite with PfE and using the Stoichiometry to Calculated Oxygen option. Firstly, the C concentration reported by PfE is negatively correlated with the Ca concentration. A series of replicate calcite analyses yields a linear correlation (R^2=1), where low Ca gives high C, and high Ca gives low C. In the worst case, if I radically defocus the sample, and obtain a poor result of Ca 15.42 wt%, the program reports C 15.11 wt% - considerably in excess of what is chemically possible.

Secondly, if I enable the “Use All Matrix Corrections” for analyses calculated with the Stoichiometry to Calculated Oxygen option, all of the results for a given point are reported as virtually identical (differing only in the second decimal point; RSD for Ca circa 0.002%). In contrast, using the Calculate with Stoichiometric Oxygen gives a wide range of results among the different matrix corrections with an RSD for Ca of 2.0%). I cannot see how including C in the matrix corrections should improve their relative agreement by a factor of 1000.

Thanks, Andrew.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 28, 2015, 04:50:40 PM
Firstly, the C concentration reported by PfE is negatively correlated with the Ca concentration. A series of replicate calcite analyses yields a linear correlation (R^2=1), where low Ca gives high C, and high Ca gives low C. In the worst case, if I radically defocus the sample, and obtain a poor result of Ca 15.42 wt%, the program reports C 15.11 wt% - considerably in excess of what is chemically possible.

Hi Andrew,
No worries, there's always room for improvement, I just don't see how to get "there" from "here".     :-[

I've attached the CalcZAF/PFE matrix correction calculation code below and if you would be willing to look at it, maybe you can see where I'm going "wrong", but I pretty sure it's not a case of right or wrong, just different ways of getting "there".

As I've said already, because (with this particular method of calculating unanalyzed elements) I'm calculating relative concentrations from atom stoichiometries in the matrix correction code, and if subsequently the concentrations are then normalized to formula atoms, *and* if the total is isn't exactly 100%, then the relative atoms of the two elements by stoichiometry will be slightly different when they are normalized.  This is inherent in the fact that carbon and oxygen have different atomic weights!

You mentioned that if the beam is defocused and the analysis total is very bad, then the calculated C:O ratio will be very bad also.  I am not surprised. In fact I do not see how the C:O could not be be very bad if the total is very bad, at least for this particular method of calculating by C:O by stoichiometry.  Not to be flip, but that's just: garbage in/garbage out!

Now, everyone (except Gareth) seems to be ignoring my repeated mentioning of the alternative method for calculating C:O ratios and that is formula by difference. This insures that the C:O ratio stays exactly as specified the same no matter what the cation concentrations are. Why? Because the total is always exactly 100%.

Here is the kutnahorite example I've been using, with the CO3 formula by difference specified for the unanalyzed elements:

ELEMENT   K-RAW K-VALUE ELEMWT% OXIDWT% ATOMIC% FORMULA KILOVOL
Ca ka  .50929  .19297  19.713   -----  10.399    .521   15.00
Mn ka  .46436  .18432  21.883   -----   8.422    .422   15.00
Fe ka  .00738  .00314    .367   -----    .139    .007   15.00
Mg ka  .03916  .00766   1.365   -----   1.188    .060   15.00
P  ka  .00080  .00013    .015   -----    .010    .001   15.00
C                      11.340   -----  19.961   1.000
O                      45.317   -----  59.882   3.000
TOTAL:                100.000   ----- 100.000   5.010

1.000 to 3.000 so what's not to like?

Now, if you really want to re-nomalize the results to account for charge balancing (which it sounds like you do), then please send me a carbonate mineral charge balancing code and I will happily implement it in PFE.  This software, in case you didn't already know,  is a community effort to improve the state of microanalysis!   Hence this forum, and hence this protracted discussion...

In the meantime please feel free to examine the matrix correction code I've attached below.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Julien on June 28, 2015, 09:32:25 PM
John, the idea of getting CO2 by difference won't resolve anything and it is NOT good. I doubt you will get the desired 1:1:3 ratio all the time when calculating CO2 by difference. Calculating the CO2 by stoichiometry also permits to check if the analysis is good (i.e., totals close to 100%). We don't ignore this comment, I guess we just don't like the idea ;)

I agree with Andrew: the best way to do it would be to re-normalize and re-calculate the CO2 wt-% (or C and O wt-%) AFTER the last matrix iteration, when results converged. This is not ideal, as, in normal situation, you would need to re-run the matrix correction with the new value for C and O, but, as you mentioned, this minor change would not affect too strongly the other measured cation wt-%. Again, the whole idea is just to get a perfect ratio of one total measured divalent cation, one carbon atom, and three oxygen (1:1:3).

Of course, the other solution (which I personally apply anyway) is to simply perform a mineral formula recalculation separately using a "home-made" XL spreadsheet. You can't imaging how complicated this normalization can be, with some time special conditions (e.g., fill one site with X amount of atom, another site with Y amount, and sometime a same element can be split in two different "sites" and need additional conditions). I'm not sure if you realize how complicated this can be, and so far there is no universal way to normalize all minerals, and there are often numerous ways to perform this type of calculation. For carbonate it is relatively easy, but deal once with amphibole (including F, Cl and unanalyzed OH or O2-) or allanite (REE-epidote, also with OH), and you will loose all your hairs!

Still, if you want to incorporate a carbonate normalization process AND "proper" recalculation of CO2 wt-% by stoichiometry, please, see my previous post and the attached XL sheet.

http://probesoftware.com/smf/index.php?topic=92.msg2967#msg2967 (http://probesoftware.com/smf/index.php?topic=92.msg2967#msg2967)

It does contain the math behind calculating CO2 wt-%. Maybe Andrew can double check my normalization and confirm this is the way to go. Note that I do force the normalization to yield a perfect total of one total divalent cation - if you don't want this option, simply set the "norm. factor" in the spreadsheet to 1.0000.

I can adjust it to calculate C wt-% if you want, or I can even try to translate it in VB. Note that this "simple" example is only considering 2+ cations, and it would need to be adjusted with some cation factor if the analysis include non-divalent cations (to take into account the fact that, for instance, TWO 3+ cation will be balanced by THREE (CO3)2- anion).

J.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 28, 2015, 10:03:35 PM
Of course, the other solution (which I personally apply anyway) is to simply perform a mineral formula recalculation separately using a "home-made" XL spreadsheet. You can't imaging how complicated this normalization can be, with some time special conditions (e.g., fill one site with X amount of atom, another site with Y amount, and sometime a same element can be split in two different "sites" and need additional conditions). I'm not sure if you realize how complicated this can be, and so far there is no universal way to normalize all minerals, and there are often numerous ways to perform this type of calculation. For carbonate it is relatively easy, but deal once with amphibole (including F, Cl and unanalyzed OH or O2-) or allanite (REE-epidote, also with OH), and you will loose all your hairs!

Hi Julien,
Yes, exactly. We need some sort of carbonate charge balance code that I can incorporate into PFE for mineral processing.

Any such code needs to be written by a geologist/mineralogist. I am not qualified.  I will check your Excel code, thanks!

john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 29, 2015, 10:30:49 AM
John, the idea of getting CO2 by difference won't resolve anything and it is NOT good. I doubt you will get the desired 1:1:3 ratio all the time when calculating CO2 by difference. Calculating the CO2 by stoichiometry also permits to check if the analysis is good (i.e., totals close to 100%). We don't ignore this comment, I guess we just don't like the idea ;)

Hi Julien,
First of all it is CO3 by difference, not CO2.  The reason being that the cations must be calculated elementally if CO3 is specified by difference.

Second, I can understand that you would like to see a *real* total that reflects the quality of carbonate measurement- and that is exactly what the carbon by stoichiometry to stoichiometric oxygen calculation method is for!  But since you all are insisting on perfect C:O stoichiometry for an imperfect analysis...  you *should* use the formula by difference option!  Whether you like it or not!   ::)

And third, you *can* still look at the "total" to ascertain the carbonate measurement quality, just not the wt% total!   :o

Note that the total formula atoms below for the CO3 formula by difference calculation is 5.011.  Since we have fixed C:O to 1:3, we simply subtract the 4 CO3 atoms from the total atoms to get the sum of cations, and yes, just as was the case for the stoichiometric carbon to oxygen calculation we have a high total (5.011 - 4 = 1.011), this time for the sum of cations!!!

ELEMENT   K-RAW K-VALUE ELEMWT% OXIDWT% ATOMIC% FORMULA KILOVOL
Ca ka  .50929  .19297  19.741   -----  10.416    .522   15.00
Mn ka  .46436  .18430  21.884   -----   8.424    .422   15.00
Fe ka  .00738  .00314    .367   -----    .139    .007   15.00
Mg ka  .03916  .00766   1.365   -----   1.188    .060   15.00
P  ka  .00080  .00013    .015   -----    .010    .001   15.00
C                      11.334   -----  19.956   1.000
O                      45.294   -----  59.867   3.000
TOTAL:                100.000   ----- 100.000   5.011

Even a simple mind like mine can do that subtraction in my head!

But send or post me your VBA code, that is, the Excel .xlsm file with the carbonate charge balance calculation macro, and I will implement it into PFE ASAP as a mineral calculation option for carbonates!
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on June 29, 2015, 11:00:46 AM
Secondly, if I enable the “Use All Matrix Corrections” for analyses calculated with the Stoichiometry to Calculated Oxygen option, all of the results for a given point are reported as virtually identical (differing only in the second decimal point; RSD for Ca circa 0.002%). In contrast, using the Calculate with Stoichiometric Oxygen gives a wide range of results among the different matrix corrections with an RSD for Ca of 2.0%). I cannot see how including C in the matrix corrections should improve their relative agreement by a factor of 1000.

Hi Andrew,
As I have said already, when using the carbon by stoichiometry to stoichiometric oxygen calculation method, the ability to maintain a perfect C:O ratio through the atom normalization depends on totals being close to 100%. This is simply due to the atom normalization math.

I'll try again: the magnitude of the C:O ratio discrepancy when the concentrations are normalized to atoms, depends on the relative ratio of the atomic weights of carbon and oxygen *and* the degree to which the analytical total varies from 100%.  This is what all your "discrepancy" vs. (total - 100) plots show.

And if I have to type the word "stoichiometric" again, I don't know what I'm going to do...    :'(

Seriously, please read this post to Julien and see if this explanation helps:

http://probesoftware.com/smf/index.php?topic=92.msg2979#msg2979
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on June 29, 2015, 04:09:30 PM
Hi John,
I will go through your code over he next week or so. As you will appreciate, it is not short(!).

Some points to ponder:
1) If we analyze just Mg in magnesium oxide, and calculate oxygen by stoichiometry, the ratio of Mg to O is 1:1 in PfE, regardless of analytical total. Why?

2) Stoichiometry for the simple carbonate minerals means the ratio of the sum of the divalent cations (Mg+Ca+Sr+Ba+Mn+Fe+Zn etc.) to C to O is 1:1:3, without exception.

3) The widely differing matrix corrections should give different values for any given analysis, regardless of the options selected in PfE.

Question:
My understanding of ZAF corrections is that they are an interative loop.
Is it possible during the ZAF corrections to match the concentration of C to the corresponding correct proportion of O (or more properly divalent cations) for each iteration?
As you mention:
Quote
1. The oxygen calculated by stoichiometry to the measured cations is added to the matrix correction as a concentration. Likewise, the carbon calculated by stoichiometry to oxygen is also added to the matrix correction as the code above shows as a concentration also.

2. This calculation is iterated because as the concentrations of the cations change, due to the (relatively minor) matrix effect of adding oxygen and carbon, the oxygen and carbon by calculation also are changed as they should.
Why not change the C and O concentrations accordingly with each iteration of the ZAF corrections?

Thanks for encouraging me to post these queries in the forum, and of course, for your patience as well as the excellent program.

All the best,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 29, 2015, 04:55:47 PM
Some points to ponder:
1) If we analyze just Mg in magnesium oxide, and calculate oxygen by stoichiometry, the ratio of Mg to O is 1:1 in PfE, regardless of analytical total. Why?

Yes, this makes sense because in this situation there is only one element by stoichiometry.  Oh god, I had to type that word- again...    :'(

2) Stoichiometry for the simple carbonate minerals means the ratio of the sum of the divalent cations (Mg+Ca+Sr+Ba+Mn+Fe+Zn etc.) to C to O is 1:1:3, without exception.

Yup. And if you want to force your measurement to fit this constraint we will need a charge balancing code for carbonate minerals.  Hopefully Julien's code will provide this once I implement it in PFE

3) The widely differing matrix corrections should give different values for any given analysis, regardless of the options selected in PfE.

Not sure what your point here is.  Everything changes everything.

Question: My understanding of ZAF corrections is that they are an interative loop.

Is it possible during the ZAF corrections to match the concentration of C to the corresponding correct proportion of O (or more properly divalent cations) for each iteration?
As you mention:
Quote
1. The oxygen calculated by stoichiometry to the measured cations is added to the matrix correction as a concentration. Likewise, the carbon calculated by stoichiometry to oxygen is also added to the matrix correction as the code above shows as a concentration also.

2. This calculation is iterated because as the concentrations of the cations change, due to the (relatively minor) matrix effect of adding oxygen and carbon, the oxygen and carbon by calculation also are changed as they should.
Why not change the C and O concentrations accordingly with each iteration of the ZAF corrections?

Well I do that already, but as concentrations that preserve an actual analytical total.  Now having said that maybe the next generation of matrix corrections will not be based on concentrations, and that would (I think) solve your problem. I have to agree that when I got into this business I could not understand why everything was in mass concentrations. After all, the microprobe is *not* a balance and it certainly cannot distinguish isotopes!  It really doesn't measure mass, just numbers of atoms! But like mineral names, this may be here to stay although no one can think of a good reason for it.

Thanks for encouraging me to post these queries in the forum, and of course, for your patience as well as the excellent program.

Of course, and thank-you for participating in the forum. It is awesome to have smart people involved with this project.  And I need all the help I can get! The truth is I can't change something unless I understand it, and so if I seem pedantic it's just because I really am trying to understand it.

In addition to the code snippets here:

http://probesoftware.com/smf/index.php?topic=92.msg2950#msg2950

and the ZAF matrix correction code I attached to this post here:

http://probesoftware.com/smf/index.php?topic=92.msg2975#msg2975

I'm also posting my code for atom normalization here:

' Calculate formulas
If mode% = 4 Then
If sample(1).FormulaElement\$ <> vbNullString Then     ' normal formula calculation
ip% = IPOS1(sample(1).LastChan%, sample(1).FormulaElement\$, sample(1).Elsyms\$())
If ip% = 0 Then GoTo ConvertWeightInvalidFormulaElement

' Check for insufficient formula basis element
If atoms!(ip%) < 0.01 Then
tmsg\$ = "There is an insufficient concentration of the formula basis element " & sample(1).Elsyup\$(ip%) & " (usually caused by a very low intensity of the x-ray), to calculate a formula for sample " & tmsg\$ & ". "
tmsg\$ = tmsg\$ & "Please delete the data point (line " & Format\$(sample(1).Linenumber&(row%)) & ") or change the formula basis element." & vbCrLf & vbCrLf
If datarow% = 0 Then
tmsg\$ = tmsg\$ & "This message will be displayed for 30 seconds, following that the point will be flagged and ignored and the remaining data will be analyzed as usual."
MiscMsgBoxTim FormMSGBOXTIM, "ConvertWeight", tmsg\$, 30#
If ierror Then Exit Sub
sample(1).LineStatus(row%) = False     ' flag temporarily
sample(1).GoodDataRows% = sample(1).GoodDataRows% - 1
If sample(1).GoodDataRows% < 0 Then sample(1).GoodDataRows% = 0
Else
Call IOWriteLogRichText(tmsg\$, vbNullString, Int(LogWindowFontSize%), vbMagenta, Int(FONT_REGULAR%), Int(0))
End If
GoTo 1000:
End If

temp! = sample(1).FormulaRatio! / atoms!(ip%)
For chan% = 1 To sample(1).LastChan%
weights!(chan%) = atoms!(chan%) * temp!
Next chan%

' Calculate sum of cations (normalize sum of cations to formula atoms)
Else
TotalCations! = 0#
For chan% = 1 To sample(1).LastChan%
If sample(1).AtomicCharges!(chan%) > 0# Then TotalCations! = TotalCations! + atoms!(chan%)
Next chan%

If TotalCations! < 0.01 Then
tmsg\$ = "There is an insufficient concentration of the cation sum (usually caused by a very low total), to calculate a formula for sample " & tmsg\$ & ". "
tmsg\$ = tmsg\$ & "Please delete the data point (line " & Format\$(sample(1).Linenumber&(row%)) & ") or change the formula assignment." & vbCrLf & vbCrLf
If datarow% = 0 Then
tmsg\$ = tmsg\$ & "This message will be displayed for 30 seconds, following that the point will be flagged and ignored and the remaining data will be analyzed as usual."
MiscMsgBoxTim FormMSGBOXTIM, "ConvertWeight", tmsg\$, 30#
If ierror Then Exit Sub
sample(1).LineStatus(row%) = False     ' flag temporarily
sample(1).GoodDataRows% = sample(1).GoodDataRows% - 1
If sample(1).GoodDataRows% < 0 Then sample(1).GoodDataRows% = 0
Else
Call IOWriteLogRichText(tmsg\$, vbNullString, Int(LogWindowFontSize%), vbMagenta, Int(FONT_REGULAR%), Int(0))
End If
GoTo 1000:
End If

' Normalize to total number of cations
temp! = sample(1).FormulaRatio! / TotalCations!
For chan% = 1 To sample(1).LastChan%
weights!(chan%) = atoms!(chan%) * temp!
Next chan%
End If

End If
End If

But if you think that ZAFSmp code is not short, you ain't seen nothing yet. You would just die if you saw the entire code. There is a lot of it to wade through!
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 06, 2015, 01:33:32 PM
Hi John,
I am looking forward to going though your code for this particular issue.

In the interim, I found some readings with reference to the mass dependency of ZAF corrections, as you mention:
Quote
Now having said that maybe the next generation of matrix corrections will not be based on concentrations, and that would (I think) solve your problem. I have to agree that when I got into this business I could not understand why everything was in mass concentrations. After all, the microprobe is *not* a balance and it certainly cannot distinguish isotopes!  It really doesn't measure mass, just numbers of atoms! But like mineral names, this may be here to stay although no one can think of a good reason for it.
--------------------------------
From Goldstein et al. (2003):
Scanning Electron Microscopy and X-ray Microanalysis, Third Edition, 2003 by Goldstein, J., Newbury, D.E., Joy, D.C., Lyman, C.E., Echlin, P., Lifshin, E., Sawyer, L., and Michael, J.R.

9.4. The Approach to X-Ray Quantitation: The Need for Matrix Corrections (p. 402).
“As was first noted by Castaing (1951), the primary generated intensities are roughly proportional to the respective mass fractions of the emitting element. If other contributions to x-ray generation are very small, the measured intensity ratios between specimen and standard are roughly equal to the ratios of the mass or weight fractions of the emitting element. ”

And from Reed (1993):
Electron Microprobe Analysis, Second Edition, 1993 by Reed, S.J.B.

1.9 Relationship between X-ray intensity and elemental concentration (pp. 10-11).
“The reason that characteristic X-ray intensities are, to a first approximation, proportional to mass concentration (whereas atomic concentration might appear more reasonable) is related to the fact that incident electrons penetrate an approximately constant mass in materials of different composition. This is because these electrons lose their kinetic energy mainly through interactions with orbital electrons of the target atoms, the number of which is approximately proportional to atomic mass.

The consequences of this can be demonstrated as follows. Consider two elements, A and B, the latter being 'heavier' than the former. To determine the concentration of A in a sample containing a mixture of A and B, one compares the intensity of ‘A’ radiation emitted by the sample with that from pure A. For the sake of simplicity we assume that the sample contains equal numbers of A and B atoms. Fig. 1.7 shows diagrammatically the volumes excited in pure A (a) and the A-B compound (b), given that the masses excited are equal, as noted above. The number of atoms excited in pure A is greater than in the compound because of the presence of heavy B atoms in the latter. Consequently the ratio of the numbers of excited A atoms in sample and standard, and hence the X-ray intensity ratio, is less than 0.5 (the atomic concentration of A in the compound).

The following argument shows that this ratio is, in fact, equal to the mass concentration (given the assumptions stated above). If the atomic concentration of A is nA, then the mass concentration is given by CA = nAAA/[nAAA + (l-nA)AB] where AA and AB are the atomic weights of A and B respectively. The number of atoms excited in the pure A standard is equal to Nm/AA, where N is Avogadro's number and m the mass penetrated by the incident electrons. In the case of the compound, the number of A atoms in the excited volume is nANm /[nAAA + (l-nA)AB]. The X-ray intensity ratio (which is proportional to the ratio of the numbers of excited atoms) is given by this expression divided by Nm/AA, which is equal to the expression given above for CA. In reality the intensity ratio is not exactly equal to the mass concentration, firstly because Z /A is not constant and secondly because the 'stopping power' of all bound electrons is not the same. This, together with other factors which affect the measured intensities, gives rise to the need for matrix corrections, as described below.”

-------------------------------------------------------------------------------------------------
I found this explanation to be useful, and have attached the 2 pages from Reed's book as a PDF (which shows the diagram).
Thanks,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 06, 2015, 02:12:12 PM
In the interim, I found some readings with reference to the mass dependency of ZAF corrections, as you mention:
Quote
Now having said that maybe the next generation of matrix corrections will not be based on concentrations, and that would (I think) solve your problem. I have to agree that when I got into this business I could not understand why everything was in mass concentrations. After all, the microprobe is *not* a balance and it certainly cannot distinguish isotopes!  It really doesn't measure mass, just numbers of atoms! But like mineral names, this may be here to stay although no one can think of a good reason for it.

Hi Andrew,
Well we've come full circle now(!)... actually I am very well aware of these weight vs. atom issues and have published several papers on it (see below). I was mostly just making a funny in the above post!

But since you bring it up, a more physical model for some matrix correction parameters (besides those which are already normalized to mass concentrations, e.g., mass absorption coefficients- hence the term!), is the so called "electron fraction" model as published in our papers. See attached below.

Basically it is a historical accident that chemists started with weight fraction before atomic fraction. This is because atomic weight was discovered before atomic number!  Mendeleev's first periodic tables were ordered by atomic weight, *not* atomic number- because atomic number had not been discovered yet.  Which was why he got a few things wrong- like the periodic order of Te and I!  That is one of the three places in the periodic table where atomic number goes up but atomic weight goes down!

In fact uranium carbide behaves much more like uranium than carbon because uranium has many more electrons (and protons) than carbon, as opposed to the 1:1 atomic ratio you'd think it might relate to as Reed mentions. And because all electron solid interactions (up to 1 meV or so) are *dominated* by electrostatic interactions (electrons and protons), this is what we should be using in our matrix calculations.

But.. the early chemists were committed to weight fraction because they were chemists not physicists!    :'(

But again, this really has nothing to do with our discussion. As I said previously: "the magnitude of the C:O ratio discrepancy when the [weight] concentrations are normalized to atoms, depends on the relative ratio of the atomic weights of carbon and oxygen *and* the degree to which the analytical total varies from 100%."

So when one does not have a perfect analytical total and one then re-normalizes the concentrations to atoms, you will always get this discrepancy... because the atomic weights of oxygen and carbon are different!

The only way around this problem, is to take the weight concentrations and perform a charge balance calculation which I will be adding to the PFE code as soon as Julien (or some other geologist) writes it up.  I talked to Julien over the weekend and the sticking point now is that Julien's current code is in php and he is very busy right now...

Here is a web page you might find interesting:

http://epmalab.uoregon.edu/BSE.htm
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on November 27, 2015, 03:27:28 PM
The only way around this problem, is to take the weight concentrations and perform a charge balance calculation...

Following up on this point, and on the excellent suggestions of Julien Allaz:
Attached is an explicit spreadsheet (Excel, *.xlsx) for recalculation from an analysis (wt%) to a formula (atoms per formula unit, apfu). This is a linear transformation, and so no iteration is needed.

This spreadsheet permits calculation of the formula proportions based on:
1) The number of oxygen (or oxygen equivalent, e.g. 2 F = 1 O), or
2) The number of cations present (including H, C, S as cations), or
3) The total number of atoms.

In addition, if H2O or CO2 has not been measured or input in weight percent, then the number of groups of OH, H2O, and CO2 in the formula can be specified. The spreadsheet will calculate the corresponding weight proportions of H2O and CO2.

Because the spreadsheet is general (can be used for almost any inorganic mineral), the constituents must be entered by the user in the appropriate oxidation states. A worksheet for converting between oxides (e.g. FeO and Fe2O3) or to/from elements is also included.
However, I have not implemented "recalculation of an unanalyzed element based on a fixed apfu" because of the large number of possible elements.

The attached spreadsheet uses a ferroan dolomite analysis as an example, with 2 CO3 groups specified.
The formula results are the same whether calculated on 6 oxygen, 4 cations, or 10 total atoms:
C2Mg0.664Ca1.125Mn(II)0.003Fe(II)0.208O6
The results are rounded to 3 decimal places, and concatenated in the formula in order of increasing atomic number.

For more complex calculations (e.g., garnets, amphiboles etc., where estimation of ferric/ferrous proportions by charge balance or select cation sums is needed), users may need to look at separate programs or spreadsheets dedicated to such tasks.

Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on November 28, 2015, 07:43:34 AM
Hi Andrew,
This is very useful stuff.  Thank-you.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on December 09, 2015, 12:52:21 PM
I should mention that Julien Allaz's mineral re-normalization code has been translated from php to VB, so I will be able to implement this in Probe for EPMA at some point "real soon now"...
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on January 19, 2016, 10:06:32 AM
Here is an updated version of the Excel spreadsheet, which now properly deals with cases where both halogens and hydrogen are present in oxide materials.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 06, 2018, 03:15:37 PM
As many of you already know, there are two ways to specify unanalyzed elements *by difference* in the Probe for EPMA matrix corrections.  Here is a screen shot of the Calculation Options dialog in PFE showing the two "difference" methods:

(http://probesoftware.com/smf/gallery/1_06_07_18_12_40_38.png)

So one could specify OH by difference by selecting the "element by difference" option, then selecting hydrogen as the element by difference, then making sure that the oxygen stoichiometry for hydrogen is changed from the default of 1 cation and 2 oxygens, to 1 hydrogen and 1 oxygen, in the Elements/Cations dialog.

Then the program will calculate OH by difference.   The other method is to use the "formula by difference" method where one specifies the unanalyzed elements as a formula, in this example, as OH, and the program adds them in automatically during the matrix calculation.  The benefit of including these unanalyzed elements by difference into the matrix correction, is that the presence (or absence) of the unanalyzed elements can affect the concentrations of the analyzed elements.  Thus affecting the calculation by difference. This is particularly import for so called "water by difference" measurements as discussed here:

http://probesoftware.com/smf/index.php?topic=922.0

As another example of elements by difference, one might be measuring traces in a matrix and have no need to measure the major elements. Say, traces in quartz or zircon, where one would measure the trace elements and merely specify the matrix elements as SiO2 or ZrSiO4 respectively, as a formula by difference. This is discussed here:

http://probesoftware.com/smf/index.php?topic=42.msg2568#msg2568

This formula by difference methods has worked well for when calculating without stoichiomeric oxygen, but after Gareth Seward and Marisa Acosta reported to us that this formula by difference method was not working correctly when oxygen was being calculated by stoichiomtry, we took a look and *finally* managed to find the problem and fixed the code.  This latest version of PFE will fix this issue.

Here is an example of an apatite sample where the students wanted to calculate OH by difference and calculate oxygen by stoichiometry:

Un   52 BMA-062-16fa_g25, Results in Elemental Weight Percents

SPEC:        O       H
TYPE:     FORM    FORM

AVER:   38.302    .038
SDEV:     .504    .041

ELEM:       Ca       P       S      Al      Fe      As      Ba       K
BGDS:      LIN     EXP     LIN     LIN     LIN     EXP     LIN     LIN
TIME:    25.00    8.00   25.00   25.00   30.00   60.00   90.00   90.00
BEAM:    30.06   30.06   30.06   30.06   30.06   99.04   99.04   99.04

ELEM:       Ca       P       S      Al      Fe      As      Ba       K   SUM
384  38.598  18.351    .032    .007    .181   -.076   -.008    .022 100.000
385  38.462  18.005    .019   -.002    .167   -.003   -.001    .013 100.000
386  38.210  18.037    .018    .002    .183    .030   -.007    .010 100.000
387  38.235  17.974    .032    .008    .194   -.010   -.006    .003 100.000
388  38.602  18.336    .037   -.007    .181    .030   -.004    .002 100.000
389  37.771  18.007    .030    .011    .218    .074    .001    .059 100.000

AVER:   38.313  18.118    .028    .003    .187    .007   -.004    .018 100.000
SDEV:     .315    .175    .008    .007    .017    .051    .004    .021    .000
SERR:     .129    .072    .003    .003    .007    .021    .001    .009
%RSD:      .82     .97   28.02  213.60    9.28  676.66  -86.58  116.07
STDS:      285     285     327     336     160     662     835     336

STKF:    .3596   .1601   .2210   .1333   .0654   .5052   .7431   .0409
STCT:    738.0  4696.5  1704.0  6059.0  1413.2   583.1  3099.0   588.4

UNKF:    .3609   .1598   .0002   .0000   .0016   .0001   .0000   .0002
UNCT:    740.6  4689.7     1.9     1.1    34.1      .1     -.1     2.7
UNBG:      6.8    10.7     2.9    30.0    27.0    12.9     6.5    10.4

ZCOR:   1.0615  1.1335  1.1605  1.3622  1.1852  1.3270  1.4078   .9827
KRAW:   1.0036   .9986   .0011   .0002   .0242   .0001   .0000   .0045
PKBG:   110.25  468.43    1.67    1.04    2.27    1.01     .98    1.26
INT%:     ----    ----    ----    ----    ----    ----    ----    ----

TDI%:     .046    .488   4.073   1.487   2.693    ----    ----    ----
DEV%:       .4      .2    24.6     2.3     1.6    ----    ----    ----
TDIF:  LOG-LIN LOG-LIN LOG-LIN LOG-LIN LOG-LIN    ----    ----    ----
TDIT:    56.67   37.83   55.50   55.83   57.83    ----    ----    ----
TDII:     747.   4700.    4.56    31.2    61.7    ----    ----    ----
TDIL:     6.62    8.46    1.52    3.44    4.12    ----    ----    ----

ELEM:       Mn      Na      Sr       F      Sm      Nd      Cl       Y
BGDS:      LIN     LIN     LIN     LIN     LIN     LIN     LIN     LIN
TIME:    60.00   90.00   60.00   60.00   60.00   90.00   40.00   90.00
BEAM:    99.04   99.04   99.04   99.04   99.04   99.04   99.04   99.04

ELEM:       Mn      Na      Sr       F      Sm      Nd      Cl       Y   SUM
384    .302    .115    .050   2.828    .067    .102    .125    .337 100.000
385    .294    .118    .049   3.490    .027    .115    .132    .297 100.000
386    .332    .102    .043   3.229    .024    .085    .147    .257 100.000
387    .361    .102    .057   3.950    .047    .055    .092    .229 100.000
388    .309    .119    .041   3.970    .022    .091    .115    .295 100.000
389    .313    .124    .042   4.081    .007    .126    .133    .370 100.000

AVER:     .318    .113    .047   3.591    .032    .096    .124    .298 100.000
SDEV:     .024    .009    .006    .497    .021    .025    .019    .051    .000
SERR:     .010    .004    .003    .203    .009    .010    .008    .021
%RSD:     7.63    8.01   13.19   13.84   65.51   26.11   15.42   17.23
STDS:       25     336     251     835    1011    1009     285    1016

STKF:    .7341   .0735   .4267   .1715   .5260   .5221   .0602   .4481
STCT:   4303.0  1786.2  3853.8   561.2  1133.9  3358.0   836.0  1076.4

UNKF:    .0026   .0005   .0004   .0071   .0002   .0007   .0011   .0026
UNCT:     15.4    12.7     3.6    23.1      .5     4.4    15.1     6.2
UNBG:      5.8    10.3     5.5     2.3     4.8    11.8     9.0     2.5

ZCOR:   1.2109  2.1625  1.1789  5.0816  1.4239  1.3990  1.1400  1.1620
KRAW:    .0036   .0071   .0009   .0412   .0004   .0013   .0181   .0057
PKBG:     3.67    2.24    1.66   11.03    1.10    1.37    2.68    3.45
INT%:     ----    ----    ----  -21.28   -6.97    -.95    -.31    ----

TDI%:     ----    ----    ----    ----    ----    ----    ----    ----
DEV%:     ----    ----    ----    ----    ----    ----    ----    ----
TDIF:     ----    ----    ----    ----    ----    ----    ----    ----
TDIT:     ----    ----    ----    ----    ----    ----    ----    ----
TDII:     ----    ----    ----    ----    ----    ----    ----    ----
TDIL:     ----    ----    ----    ----    ----    ----    ----    ----

ELEM:       Eu      Gd      Mg      La      Ce      Si
BGDS:      AVG     LIN     LIN     LIN     LIN     LIN
TIME:    60.00   60.00   90.00   60.00   60.00   60.00
BEAM:    99.04   99.04   99.04   99.04   99.04   99.04

ELEM:       Eu      Gd      Mg      La      Ce      Si   SUM
384    .029    .041    .045    .025    .133    .099 100.000
385   -.005    .057    .044    .015    .112    .090 100.000
386   -.008    .047    .039    .017    .097    .075 100.000
387    .015    .029    .036    .005    .079    .058 100.000
388    .024    .051    .041    .016    .129    .094 100.000
389    .016    .056    .124    .023    .176    .295 100.000

AVER:     .012    .047    .055    .017    .121    .118 100.000
SDEV:     .015    .011    .034    .007    .033    .088    .000
SERR:     .006    .004    .014    .003    .014    .036
%RSD:   130.06   22.47   61.89   42.93   27.58   73.94
STDS:     1004    1005     160    1007    1001     160

STKF:    .5289   .5281   .0776   .5143   .5111   .1621
STCT:   1239.6  4995.6  3016.8 11742.1  3550.7  5699.0

UNKF:    .0001   .0003   .0003   .0001   .0009   .0010
UNCT:       .2     3.0    13.4     2.7     6.0    35.8
UNBG:      5.6    22.3    19.3    63.8    25.3     5.8

ZCOR:   1.4453  1.4722  1.5909  1.3981  1.3935  1.1629
KRAW:    .0002   .0006   .0044   .0002   .0017   .0063
PKBG:     1.04    1.14    1.69    1.04    1.24    7.09
INT%:    11.30  -17.82    ----   -5.08    -.03    ----

TDI%:     ----    ----    ----    ----    ----    ----
DEV%:     ----    ----    ----    ----    ----    ----
TDIF:     ----    ----    ----    ----    ----    ----
TDIT:     ----    ----    ----    ----    ----    ----
TDII:     ----    ----    ----    ----    ----    ----
TDIL:     ----    ----    ----    ----    ----    ----

Un   52 BMA-062-16fa_g25, Results in Oxide Weight Percents

SPEC:        O      HO
TYPE:     FORM    FORM

AVER:   -1.540    .638
SDEV:     .207    .685

ELEM:      CaO    P2O5     SO3   Al2O3     FeO   As2O3     BaO     K2O   SUM
384  54.007  42.049    .081    .014    .232   -.100   -.008    .026 100.000
385  53.816  41.256    .048   -.004    .215   -.004   -.001    .016 100.000
386  53.464  41.330    .044    .005    .235    .040   -.008    .013 100.000
387  53.498  41.185    .081    .015    .249   -.014   -.007    .004 100.000
388  54.011  42.014    .093   -.013    .233    .040   -.004    .003 100.000
389  52.849  41.262    .075    .020    .280    .097    .001    .071 100.000

AVER:   53.608  41.516    .070    .006    .241    .010   -.005    .022 100.000
SDEV:     .441    .402    .020    .013    .022    .067    .004    .025    .000
SERR:     .180    .164    .008    .005    .009    .027    .002    .010
%RSD:      .82     .97   28.02  213.60    9.28  676.66  -86.58  116.07
STDS:      285     285     327     336     160     662     835     336

ELEM:      MnO    Na2O     SrO       F   Sm2O3   Nd2O3      Cl    Y2O3   SUM
384    .390    .155    .059   2.828    .077    .119    .125    .429 100.000
385    .380    .158    .057   3.490    .031    .134    .132    .377 100.000
386    .429    .138    .051   3.229    .028    .100    .147    .327 100.000
387    .466    .138    .068   3.950    .054    .064    .092    .291 100.000
388    .398    .161    .048   3.970    .025    .106    .115    .374 100.000
389    .404    .167    .050   4.081    .008    .147    .133    .470 100.000

AVER:     .411    .153    .055   3.591    .037    .112    .124    .378 100.000
SDEV:     .031    .012    .007    .497    .025    .029    .019    .065    .000
SERR:     .013    .005    .003    .203    .010    .012    .008    .027
%RSD:     7.63    8.01   13.19   13.84   65.51   26.11   15.42   17.23
STDS:       25     336     251     835    1011    1009     285    1016

ELEM:    Eu2O3   Gd2O3     MgO   La2O3   Ce2O3    SiO2   SUM
384    .033    .047    .075    .029    .155    .213 100.000
385   -.006    .066    .073    .017    .131    .192 100.000
386   -.010    .054    .065    .020    .114    .160 100.000
387    .018    .034    .059    .005    .093    .124 100.000
388    .028    .059    .069    .019    .151    .202 100.000
389    .019    .064    .205    .027    .206    .630 100.000

AVER:     .014    .054    .091    .020    .142    .254 100.000
SDEV:     .018    .012    .056    .008    .039    .187    .000
SERR:     .007    .005    .023    .003    .016    .077
%RSD:   130.06   22.47   61.89   42.93   27.58   73.94
STDS:     1004    1005     160    1007    1001     160

Notice that the oxygen concentration in the oxide output is negative.  This is because the program is also performing the correction for the halogen equivalent for oxygen in the matrix calculation!  Pretty cool!

If you'd like to learn more about the halogen equivalence for stoichiometric oxygen calculation feature see this post:

http://probesoftware.com/smf/index.php?topic=8.msg1127#msg1127
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on September 28, 2018, 09:10:25 AM
How does one delete previously-added unanalyzed elements from the list of elements?

Sometimes, one might want to try adding an unanalyzed element to set of analyses, as a test.
However, one may not want to keep such elements.
It would be nice to easily delete them, if one doesn't want them.
Thanks,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on September 28, 2018, 11:35:58 AM
How does one delete previously-added unanalyzed elements from the list of elements?

Sometimes, one might want to try adding an unanalyzed element to set of analyses, as a test.
However, one may not want to keep such elements.
It would be nice to easily delete them, if one doesn't want them.

Hi Andrew,
It gets complicated because it's difficult to know what an element might be utilized for, so to be safe we only allow elements to be deleted from the Acquire! Elements/Cations dialog.   Sorry.
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on October 12, 2018, 03:37:43 PM
This topic is entitled "Specifying Unanalyzed Elements For a Proper Matrix Correction", but it could just as well have been titled "Including unanalyzed elements for proper quantification of analyzed elements".

I recently responded to a question on the JEOL Listserver about how to add the carbonate molecule to a carbonate analysis using the JEOL software. I don't know the JEOL software, but then it was suggested performing the calculation off-line perhaps using Excel.  This is *not* a good idea as most of you know, because the matrix correction will be significantly wrong and the quantification of the analyzed elements will be significantly wrong.

If the total of the elements in the matrix correction is significantly under 100%, the matrix correction physics will be significantly wrong in most cases.  For example carbonates.

Here is an analysis of a standard dolomite where because the software knows that it is a standard, it can automatically specify the unanalyzed elements to get a correct quantification for the elements that were acquired:

St  141 Set   1 Dolomite (Harvard #105064), Results in Elemental Weight Percents

ELEM:       Ca      Mn       P      Mg      Fe       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    SPEC    SPEC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00     ---     ---
BEAM:    30.01   30.01   30.01   30.01   30.01     ---     ---

ELEM:       Ca      Mn       P      Mg      Fe       C       O   SUM
43  21.796    .081   -.040  13.417    .145  12.986  52.021 100.406
44  21.698    .036    .025  13.332    .145  12.986  52.021 100.243
45  21.876    .105    .024  13.396    .168  12.986  52.021 100.576
46  22.000    .068   -.014  13.224    .145  12.986  52.021 100.430

AVER:   21.843    .073   -.001  13.342    .151  12.986  52.021 100.414
SDEV:     .128    .029    .032    .087    .011    .000    .000    .136
SERR:     .064    .014    .016    .043    .006    .000    .000
%RSD:      .58   39.60-2300.07     .65    7.43     .00     .00

PUBL:   21.841    .015    n.a.  13.195    .062  12.986  52.021 100.120
%VAR:      .01  383.93     ---    1.12  143.23     .00     .00
DIFF:     .001    .058     ---    .147    .089    .000    .000
STDS:      138     140     285     139     145     ---     ---

STKF:    .3789   .3969   .1600   .1957   .4258     ---     ---
STCT:   128.18  134.89   56.49   65.78  142.56     ---     ---

UNKF:    .2030   .0006   .0000   .0853   .0012     ---     ---
UNCT:    68.66     .20     .00   28.69     .42     ---     ---
UNBG:      .14     .77    1.00     .06     .49     ---     ---

ZCOR:   1.0763  1.2369  1.2287  1.5634  1.2161     ---     ---
KRAW:    .5356   .0015  -.0001   .4362   .0029     ---     ---
PKBG:   484.48    1.27    1.00  473.26    1.85     ---     ---

Note that carbon and oxygen were automatically loaded from the standard database into Probe for EPMA, because the software knows that it is a standard.  But what if this was an unknown carbonate?  Here is the same material (dolomite standard), but this time acquired as an unknown:

Un    6 Dolomite (Harvard #105064), Results in Elemental Weight Percents

ELEM:       Ca      Mn       P      Mg      Fe       C
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    SPEC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00     ---
BEAM:    29.99   29.99   29.99   29.99   29.99     ---

ELEM:       Ca      Mn       P      Mg      Fe       C   SUM
47  21.220    .033   -.006  11.758    .135    .000  33.140
48  21.136    .021    .010  11.939    .150    .000  33.258
49  21.296    .055    .013  12.068    .164    .000  33.596
50  21.292    .080    .067  12.059    .128    .000  33.626
51  21.237    .066    .026  11.925    .117    .000  33.371
52  21.278    .090    .017  11.796    .156    .000  33.337
53  20.925    .121    .084  11.887    .161    .000  33.178

AVER:   21.198    .067    .030  11.919    .145    .000  33.358
SDEV:     .132    .034    .033    .119    .018    .000    .191
SERR:     .050    .013    .012    .045    .007    .000
%RSD:      .62   51.24  108.72    1.00   12.32     .00
STDS:      138     140     285     139     145     ---

STKF:    .3789   .3969   .1600   .1957   .4258     ---
STCT:   128.18  134.89   56.49   65.78  142.56     ---

UNKF:    .2047   .0006   .0002   .0852   .0012     ---
UNCT:    69.26     .19     .08   28.63     .41     ---
UNBG:      .13     .78     .97     .05     .51     ---

ZCOR:   1.0354  1.2003  1.2679  1.3995  1.1694     ---
KRAW:    .5403   .0014   .0015   .4353   .0029     ---
PKBG:   529.78    1.25    1.09  606.24    1.81     ---

First note the very low total (~33 wt.%). Because the software does not know that this is a carbonate, it cannot automatically specify the unanalyzed carbon and oxygen. And note that although Ca (Ka) isn't so affected (21.2 wt.% in the unknown vs. 21.8 wt.% in the standard), the Mg (Ka) is very much affected (11.9 wt.% in the unknown vs. 13.3 wt.% in the standard!).

Observe the differences in the magnitude of the matrix corrections for Ca (Ka) and Mg (Ka), in the line labeled ZCOR, and you will understand why.

So how to add in the missing carbonate molecule?  For the JEOL software Pete McSwiggen's suggestion is good because I assume that the JEOL software is including the specified unanalyzed elements in the matrix correction.

In Probe for EPMA one can do the same thing by first adding carbon as a unanalyzed element in the Elements/Cations dialog, then simply checking the Calculate with Stoichiometric Oxygen option, and finally specify 0.333 atoms of carbon per oxygen molecule as seen here:

(https://probesoftware.com/smf/gallery/395_12_10_18_3_31_34.png)

Once that is done, the analysis proceeds as follows:

Un    6 Dolomite (Harvard #105064), Results in Elemental Weight Percents

ELEM:       Ca      Mn       P      Mg      Fe       C       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    STOI    CALC
BGDS:      LIN     LIN     LIN     LIN     LIN
TIME:    10.00   10.00   10.00   10.00   10.00     ---     ---
BEAM:    29.99   29.99   29.99   29.99   29.99     ---     ---

ELEM:       Ca      Mn       P      Mg      Fe       C       O   SUM
47  22.060    .034   -.006  13.130    .141  12.959  52.019 100.336
48  21.965    .022    .010  13.349    .156  12.955  52.136 100.594
49  22.130    .057    .012  13.486    .171  12.925  52.228 101.008
50  22.123    .082    .065  13.482    .133  12.929  52.298 101.113
51  22.071    .068    .025  13.327    .122  12.945  52.160 100.719
52  22.122    .092    .016  13.162    .162  12.942  52.071 100.567
53  21.748    .125    .081  13.286    .167  12.970  52.172 100.549

AVER:   22.031    .069    .029  13.318    .150  12.946  52.155 100.698
SDEV:     .137    .035    .032    .140    .019    .016    .093    .274
SERR:     .052    .013    .012    .053    .007    .006    .035
%RSD:      .62   51.26  108.66    1.05   12.33     .13     .18
STDS:      138     140     285     139     145     ---     ---

STKF:    .3789   .3969   .1600   .1957   .4258     ---     ---
STCT:   128.18  134.89   56.49   65.78  142.56     ---     ---

UNKF:    .2047   .0006   .0002   .0852   .0012     ---     ---
UNCT:    69.26     .19     .08   28.63     .41     ---     ---
UNBG:      .13     .78     .97     .05     .51     ---     ---

ZCOR:   1.0761  1.2369  1.2276  1.5637  1.2160     ---     ---
KRAW:    .5403   .0014   .0015   .4353   .0029     ---     ---
PKBG:   529.78    1.25    1.09  606.24    1.81     ---     ---

Note that now the concentrations and matrix corrections for Ca and Mg are correct.

By the way, the same calculation options will work for any carbonate such as calcite, magnesite, siderite, etc.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on October 13, 2018, 03:01:57 PM
Since I mentioned the effect of not including water by difference as it affects the matrix correction in my JEOL Listserver post, I will "show my work" as to how the various unanalyzed elements affects the analyzed elements, as they are added to the matrix correction of a hydrous glass. For a publication reference see this paper:

In this example I selected an experimental glass from Withers, which nominally contains 4.9 wt.% H2O, but FTIR showed 5.06 wt%. Here is the analysis of this glass as an unknown with nothing but the analyzed elements:

Un   17 Withers-N5, Results in Elemental Weight Percents

ELEM:       Na       K      Cl      Ba       F      Ti      Fe      Mn      Ca      Si      Al      Mg       O       H       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    SPEC    SPEC
BGDS:      MAN     LIN     LIN     LIN     LIN     LOW     MAN     LIN     MAN     MAN     MAN     MAN     EXP
TIME:    60.00   20.00   10.00   20.00   40.00   10.00   40.00   10.00   20.00   20.00   20.00   60.00     ---     ---     ---
BEAM:     9.98    9.98    9.98    9.98    9.98    9.98    9.98    9.98    9.98    9.98    9.98    9.98     ---     ---     ---

ELEM:       Na       K      Cl      Ba       F      Ti      Fe      Mn      Ca      Si      Al      Mg     O-D       H       O   SUM
574   1.206   3.594    .218    .029    .046    .106   2.963    .058    .154  30.812   4.487   -.010     ---    .000    .000  43.664
575   1.187   3.590    .221    .016    .045    .122   2.951    .076    .140  30.681   4.454   -.014     ---    .000    .000  43.469
576   1.163   3.469    .192    .032    .054    .135   2.960    .080    .121  30.677   4.413   -.019     ---    .000    .000  43.275
577   1.171   3.500    .276    .040    .059    .096   2.993    .056    .109  30.817   4.512   -.020     ---    .000    .000  43.610
578   1.225   3.549    .276   -.013    .045    .071   3.001    .078    .108  30.727   4.451   -.012     ---    .000    .000  43.505
579   1.218   3.559    .255   -.077    .038    .122   3.019    .079    .123  30.718   4.502   -.015     ---    .000    .000  43.541
580   1.143   3.579    .238    .015    .048    .100   2.954    .052    .124  30.733   4.422   -.020     ---    .000    .000  43.387
581   1.235   3.438    .264   -.019    .065    .116   2.933    .048    .144  30.823   4.443   -.015     ---    .000    .000  43.475
582   1.170   3.501    .175   -.025    .043    .132   3.028    .049    .112  30.879   4.462   -.012     ---    .000    .000  43.514
583   1.160   3.556    .233   -.061    .018    .145   2.995    .030    .136  30.874   4.465   -.017     ---    .000    .000  43.534
584   1.183   3.491    .227    .004    .018    .122   2.956    .061    .125  30.945   4.416   -.017     ---    .000    .000  43.532
585   1.148   3.503    .204    .029    .038    .119   2.978    .059    .153  30.943   4.465   -.015     ---    .000    .000  43.623

AVER:    1.184   3.527    .232   -.002    .043    .115   2.978    .060    .129  30.802   4.458   -.016     ---    .000    .000  43.511
SDEV:     .031    .051    .032    .038    .014    .020    .029    .015    .016    .095    .032    .003     ---    .000    .000    .105
SERR:     .009    .015    .009    .011    .004    .006    .009    .004    .005    .028    .009    .001     ---    .000    .000
%RSD:     2.59    1.43   13.87-1520.63   33.07   17.23     .99   25.47   12.47     .31     .72  -21.27     ---     .00     .00
STDS:      336     374     285     835     835      22     395      25     358     162     336      12     ---     ---     ---

STKF:    .0735   .1132   .0602   .7431   .1715   .5547   .6779   .7341   .1693   .2018   .1333   .4736     ---     ---     ---
STCT:   2447.9  2423.7   839.3  8520.6  2398.7  6097.6 14136.8 13590.2  2247.6 34290.6 23223.7 24410.3     ---     ---     ---

UNKF:    .0082   .0301   .0017   .0000   .0002   .0010   .0258   .0005   .0011   .2710   .0411  -.0001     ---     ---     ---
UNCT:    274.6   645.2    24.2     -.2     2.7    10.8   538.5     9.5    15.2 46037.3  7157.6    -6.4     ---     ---     ---
UNBG:     16.0    12.6     5.0    29.0     3.8     5.8    30.1    16.1     5.4   173.0   135.8    23.3     ---     ---     ---

ZCOR:   1.4355  1.1708  1.3315  1.3476  2.1906  1.1747  1.1530  1.1748  1.1290  1.1368  1.0853  1.2443     ---     ---     ---
KRAW:    .1122   .2662   .0289   .0000   .0011   .0018   .0381   .0007   .0068  1.3426   .3082  -.0003     ---     ---     ---
PKBG:    18.14   52.35    6.39    1.00    1.77    3.03   18.90    1.61    3.79  267.17   53.70     .72     ---     ---     ---
INT%:     ----    ----    ----   -3.80    ----    -.02    ----    ----    ----    ----    ----    ----     ---     ---     ---

If we calculate the above elemental analysis as oxide formulas (but still without oxygen included in the matrix correction), we get the following results:

Un   17 Withers-N5, Results in Oxide Weight Percents

ELEM:     Na2O     K2O      Cl     BaO       F    TiO2     FeO     MnO     CaO    SiO2   Al2O3     MgO     O-D     H2O       O   SUM
574   1.625   4.330    .218    .033    .046    .177   3.812    .075    .216  65.918   8.479   -.016     ---    .000    .000  84.911
575   1.600   4.324    .221    .018    .045    .203   3.797    .098    .196  65.639   8.415   -.024     ---    .000    .000  84.533
576   1.568   4.179    .192    .035    .054    .225   3.808    .103    .169  65.629   8.338   -.032     ---    .000    .000  84.267
577   1.578   4.216    .276    .045    .059    .161   3.851    .072    .153  65.928   8.526   -.033     ---    .000    .000  84.831
578   1.651   4.276    .276   -.015    .045    .118   3.861    .100    .152  65.736   8.410   -.020     ---    .000    .000  84.588
579   1.642   4.287    .255   -.086    .038    .204   3.884    .102    .171  65.716   8.507   -.025     ---    .000    .000  84.696
580   1.540   4.311    .238    .017    .048    .166   3.800    .068    .173  65.749   8.356   -.034     ---    .000    .000  84.432
581   1.665   4.141    .264   -.021    .065    .193   3.773    .062    .202  65.942   8.395   -.025     ---    .000    .000  84.656
582   1.577   4.217    .175   -.028    .043    .220   3.895    .063    .157  66.061   8.431   -.020     ---    .000    .000  84.792
583   1.564   4.283    .233   -.068    .018    .241   3.853    .039    .190  66.051   8.437   -.028     ---    .000    .000  84.813
584   1.595   4.205    .227    .004    .018    .204   3.803    .079    .175  66.202   8.344   -.027     ---    .000    .000  84.829
585   1.547   4.220    .204    .032    .038    .198   3.831    .076    .214  66.199   8.436   -.024     ---    .000    .000  84.971

AVER:    1.596   4.249    .232   -.003    .043    .192   3.831    .078    .181  65.897   8.423   -.026     ---    .000    .000  84.693
SDEV:     .041    .061    .032    .042    .014    .033    .038    .020    .023    .204    .060    .005     ---    .000    .000    .207
SERR:     .012    .018    .009    .012    .004    .010    .011    .006    .007    .059    .017    .002     ---    .000    .000
%RSD:     2.59    1.43   13.87-1520.63   33.07   17.23     .99   25.47   12.47     .31     .72  -21.27     ---     .00     .00
STDS:      336     374     285     835     835      22     395      25     358     162     336      12     ---     ---     ---

Note that total is much better, but the SiO2 concentration is only 65.9 wt.%.  Now we will recalculate the glass but this time include stoichiometric oxygen in the matrix correction:

Un   17 Withers-N5, Results in Oxide Weight Percents

ELEM:     Na2O     K2O      Cl     BaO       F    TiO2     FeO     MnO     CaO    SiO2   Al2O3     MgO     O-D     H2O       O   SUM
574   2.177   4.249    .205    .033    .085    .179   3.990    .077    .225  70.085   9.983    .016     ---    .000    .000  91.303
575   2.144   4.244    .207    .018    .083    .206   3.974    .101    .205  69.801   9.909    .008     ---    .000    .000  90.901
576   2.102   4.100    .180    .036    .099    .227   3.986    .107    .179  69.809   9.823   -.002     ---    .000    .000  90.646
577   2.115   4.136    .258    .045    .109    .162   4.031    .074    .163  70.096  10.042   -.004     ---    .000    .000  91.230
578   2.211   4.195    .258   -.015    .082    .119   4.041    .103    .161  69.906   9.904    .012     ---    .000    .000  90.978
579   2.200   4.206    .239   -.087    .069    .206   4.064    .105    .181  69.881  10.022    .007     ---    .000    .000  91.093
580   2.067   4.230    .223    .017    .087    .168   3.978    .070    .182  69.960   9.850   -.004     ---    .000    .000  90.828
581   2.234   4.061    .248   -.021    .120    .195   3.949    .064    .211  70.160   9.897    .007     ---    .000    .000  91.123
582   2.116   4.137    .164   -.028    .079    .222   4.076    .065    .166  70.273   9.939    .012     ---    .000    .000  91.222
583   2.100   4.202    .218   -.068    .033    .244   4.032    .040    .198  70.295   9.953    .003     ---    .000    .000  91.248
584   2.141   4.125    .213    .004    .033    .206   3.981    .082    .184  70.459   9.840    .003     ---    .000    .000  91.271
585   2.076   4.141    .191    .032    .070    .200   4.010    .079    .223  70.423   9.943    .007     ---    .000    .000  91.394

AVER:    2.140   4.169    .217   -.003    .079    .194   4.009    .080    .190  70.096   9.925    .005     ---    .000    .000  91.103
SDEV:     .055    .060    .030    .042    .026    .034    .039    .021    .022    .230    .069    .006     ---    .000    .000    .223
SERR:     .016    .017    .009    .012    .008    .010    .011    .006    .006    .066    .020    .002     ---    .000    .000
%RSD:     2.55    1.44   13.88-1522.79   33.11   17.23     .98   25.47   11.70     .33     .70  120.12     ---     .00     .00
STDS:      336     374     285     835     835      22     395      25     358     162     336      12     ---     ---     ---

Please note that by including the stoichiometric oxygen in the matrix correction the SiO2 concentration went from 65.9 wt.% to 70.09 wt.%.  This is because oxygen absorbs Si Ka more than Si.  So without stoichiometric oxygen in the matrix correction, the matrix is anomalously high in Si, which again, does not absorb Si Ka as much as oxygen, so the matrix correction for Si is underestimated.

But we still have a total of only 91.1 wt.%, so one might be forgiven to estimate the water by difference as 8.9 wt.%.  But one would be wrong because we haven't provided a correction for the ion migration of Na and the effect on the other elements. The TDI correction for Na in this glass is around 100% as seen here in this plot of log intensity vs. time:

(https://probesoftware.com/smf/gallery/395_13_10_18_2_49_45.png)

So turning on the TDI correction we obtain these analyses:

Un   17 Withers-N5, Results in Oxide Weight Percents

ELEM:     Na2O     K2O      Cl     BaO       F    TiO2     FeO     MnO     CaO    SiO2   Al2O3     MgO     O-D     H2O       O   SUM
574   4.117   4.182    .204    .033    .084    .179   3.989    .077    .224  69.392  10.084    .018     ---    .000    .000  92.582
575   4.842   4.291    .207    .018    .082    .206   3.973    .101    .205  70.089  10.042    .010     ---    .000    .000  94.065
576   4.255   3.997    .180    .036    .097    .227   3.985    .107    .179  69.839   9.930   -.001     ---    .000    .000  92.831
577   4.575   4.261    .258    .045    .108    .162   4.029    .074    .163  69.847  10.167   -.002     ---    .000    .000  93.688
578   4.550   4.211    .258   -.015    .081    .119   4.039    .103    .161  69.530  10.023    .013     ---    .000    .000  93.073
579   4.687   4.256    .239   -.087    .068    .206   4.062    .105    .181  69.813  10.148    .008     ---    .000    .000  93.685
580   4.257   4.207    .223    .017    .086    .168   3.976    .070    .182  69.621   9.960   -.003     ---    .000    .000  92.765
581   4.968   4.191    .247   -.021    .118    .195   3.947    .064    .210  70.217  10.033    .008     ---    .000    .000  94.177
582   4.447   4.237    .164   -.028    .079    .222   4.074    .065    .166  70.473  10.054    .013     ---    .000    .000  93.966
583   4.547   4.070    .218   -.068    .032    .244   4.030    .040    .198  69.777  10.078    .004     ---    .000    .000  93.170
584   4.524   4.049    .212    .004    .032    .206   3.979    .082    .184  70.249   9.959    .005     ---    .000    .000  93.486
585   3.984   4.322    .191    .032    .069    .200   4.008    .078    .223  70.019  10.041    .008     ---    .000    .000  93.176

AVER:    4.479   4.190    .217   -.003    .078    .194   4.008    .080    .190  69.905  10.043    .007     ---    .000    .000  93.389
SDEV:     .288    .101    .030    .042    .026    .033    .039    .020    .022    .317    .072    .006     ---    .000    .000    .534
SERR:     .083    .029    .009    .012    .007    .010    .011    .006    .006    .091    .021    .002     ---    .000    .000
%RSD:     6.43    2.40   13.86-1523.55   33.08   17.23     .98   25.47   11.70     .45     .71   95.57     ---     .00     .00
STDS:      336     374     285     835     835      22     395      25     358     162     336      12     ---     ---     ---

Note that the Na concentration went from around 2.2 wt% to 4.4 wt.%, but the Si dropped slightly because the TDI effect on Si is usually an increase in intensity as the Na intensity drops due to ion migration under the electron beam.

Now based on our totals of around 93.4 wt.%, our water by difference estimate would be around 6.6 wt.%, but that isn't very close to the FTIR H2O measurement of 5.06 wt.%. So what's going on?  Well we have not yet included the water by difference into the matrix correction. Once we do that we obtain these results:

Un   17 Withers-N5, Results in Oxide Weight Percents

ELEM:     Na2O     K2O      Cl     BaO       F    TiO2     FeO     MnO     CaO    SiO2   Al2O3     MgO     O-D     H2O       O   SUM
574   4.191   4.211    .205    .033    .086    .180   4.037    .078    .227  70.047  10.230    .020     ---   6.454    .000 100.000
575   4.912   4.315    .207    .018    .084    .207   4.012    .102    .207  70.615  10.157    .011     ---   5.152    .000 100.000
576   4.329   4.024    .181    .036    .100    .229   4.032    .108    .181  70.477  10.069    .001     ---   6.233    .000 100.000
577   4.646   4.286    .259    .046    .110    .164   4.071    .075    .165  70.405  10.292   -.001     ---   5.483    .000 100.000
578   4.627   4.239    .259   -.015    .083    .120   4.085    .104    .163  70.140  10.158    .015     ---   6.022    .000 100.000
579   4.760   4.281    .240   -.088    .070    .207   4.104    .106    .182  70.371  10.272    .010     ---   5.485    .000 100.000
580   4.333   4.236    .224    .018    .088    .169   4.024    .070    .184  70.264  10.101   -.001     ---   6.290    .000 100.000
581   5.040   4.214    .248   -.021    .120    .196   3.985    .064    .212  70.735  10.146    .010     ---   5.052    .000 100.000
582   4.513   4.261    .164   -.028    .080    .224   4.114    .065    .168  71.014  10.173    .015     ---   5.237    .000 100.000
583   4.624   4.096    .218   -.069    .033    .246   4.075    .040    .200  70.382  10.213    .006     ---   5.936    .000 100.000
584   4.597   4.074    .213    .004    .033    .207   4.022    .083    .186  70.832  10.085    .007     ---   5.658    .000 100.000
585   4.050   4.350    .191    .033    .071    .202   4.053    .079    .225  70.631  10.176    .010     ---   5.929    .000 100.000

AVER:    4.552   4.216    .217   -.003    .080    .196   4.051    .081    .192  70.493  10.173    .009     ---   5.744    .000 100.000
SDEV:     .288    .100    .030    .043    .026    .034    .039    .021    .022    .284    .070    .007     ---    .469    .000    .000
SERR:     .083    .029    .009    .012    .008    .010    .011    .006    .006    .082    .020    .002     ---    .135    .000
%RSD:     6.33    2.38   13.86-1528.18   33.05   17.22     .97   25.48   11.66     .40     .69   76.35     ---    8.16     .00
STDS:      336     374     285     835     835      22     395      25     358     162     336      12     ---     ---     ---

Note that our SiO2 concentration went up slightly because we added additional oxygen (from H2O) into the matrix calculation, and so now our water by difference is around 5.7 wt.% which is quite close to our FTIR value of 5.06 wt.%.  If we had included other trace elements in the analysis, we would get even closer.

So, the lesson is, always include all the unanalyzed elements into the matrix correction, or you will have significant errors in the analyzed elements.  Excel is great, but it doesn't know physics!  Please let me know if anyone has any questions.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: pvburger on March 08, 2019, 11:03:41 AM
Does it make a difference if one includes oxygen as a specified element in the Elements/Cations menu of the Acquire! window prior to acquisition vs. simply selecting "Calculate with stoichiometric oxygen" under Calculation Options during the analysis step (following acquisition)?

I realize the output to the log may vary, but do the final concentrations saved from the Output menu differ? If so, is there any way to add "specified" oxygen as an element to a sample set that was initially acquired without it?

Cheers!
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on March 08, 2019, 11:33:18 AM
Does it make a difference if one includes oxygen as a specified element in the Elements/Cations menu of the Acquire! window prior to acquisition vs. simply selecting "Calculate with stoichiometric oxygen" under Calculation Options during the analysis step (following acquisition)?

I realize the output to the log may vary, but do the final concentrations saved from the Output menu differ? If so, is there any way to add "specified" oxygen as an element to a sample set that was initially acquired without it?

Cheers!

Hi Paul,
This is a really good question because it relates to an important point about how stoichiometric oxygen is handled along with "excess oxygen" in Probe for EPMA (and CalcZAF for that matter).

Basically, stoichiometric oxygen or oxygen by stoichiometry are unrelated to acquisition because in either case they are "unanalyzed" or "specified" elements. So you can specify them prior to acquisition or after acquisition of the "analyzed" elements.

If you check the "Use Stoichiometric Oxygen" option in the Calculation Options dialog, the software will automatically add oxygen to your matrix and include it in the matrix corrections.

But sometimes, we will want to specify some additional or "excess" oxygen as part of our analysis. For example your Fe is specified as FeO, but you are measuring a magnetite specimen. There is some discussion here on this:

https://probesoftware.com/smf/index.php?topic=223.msg1002#msg1002

But the bottom line is that yes, you can have oxygen calculated by stoichiometry, *and* you can add oxygen as a "specified" element for dealing with excess or oxygen deficits. Oxygen as an unanalyzed element is added, just as you would with any other unanalyzed elements, from the Elements/Cations dialog, but leaving the x-ray line blank.

Now all of this changes when you have oxygen as an analyzed element!  When oxygen is being analyzed for (and when the oxidation state of Fe is uncertain this is actually a very good idea), the software will automatically subtract the stoichiometric oxygen from the measured oxygen to obtain the so called "excess" oxygen. This post describes that situation:

https://probesoftware.com/smf/index.php?topic=197.msg888#msg888

This can get complicated but play around with your samples, and if you can, try analyzing some standards as unknowns, e.g., magnetite, and it should become clear. But feel free to post some examples of what you are trying to accomplish if you have any questions at all.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 02, 2019, 11:09:46 AM
Most of us understand the effects of "unanalyzed" elements in the matrix correction and how it is important to include these elements either by specification, difference or by stoichiometry to other analyzed elements, in order to obtain an accurate matrix correction.

For example the issue of unanalyzed water in hydrous glasses, where one gets a results with a total of say 95% and one might be forgiven to think that, OK, I've got 5 wt% H2O there because 100 - 95 = 5 in Excel.  But that would be wrong because Excel doesn't know anything about matrix correction physics.  In fact what we see when we specify water by difference is described in this and other posts in this topic:

https://probesoftware.com/smf/index.php?topic=92.msg7701#msg7701

Basically adding oxygen (and hydrogen) to our glass matrix correction results in a significant change in the concentration of other elements.  In a generic example of a silicate glass, the Si (and other element) concentrations increases significantly.  Why is this? Because it turns out that Si Ka is not well absorbed by Si atoms, but they are well absorbed by oxygen atoms!  Once the matrix correction "knows" about the extra oxygen (water), the absorption correction increases correspondingly.

So in our generic example of a 95% total in a hydrous glass, once we add H2O by difference and include it in the matrix correction, because the Si (and other elements) increase by about 1%, we instead obtain about 4% H2O by difference.  This effect was described in the Roman et al. paper referenced here:

https://probesoftware.com/smf/index.php?topic=61.msg4303#msg4303

Now this makes some intuitive sense to me because Si Ka is a fairly low energy emission line and therefore fairly well absorbed by other elements, but I never expected this to be the case for Fe Ka at 6.4 keV!

Here's an example for a magnetite sample where the Fe is expressed, as we usually do in EPMA, as FeO:

Un   96 7138_PPO-2_Mgt4_HO-1, Results in Elemental Weight Percents

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    CALC
BGDS:      MAN     MAN     MAN     MAN     EXP     LIN     MAN     MAN
TIME:    40.00  120.00   40.00   80.00   30.00   30.00   80.00  120.00     ---
BEAM:    45.93   45.93   45.93   45.93   45.93   45.93   45.93   45.93     ---

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
146  60.944   1.463    .058   5.329    .265    .422    .375   1.542  23.842  94.240

AVER:   60.944   1.463    .058   5.329    .265    .422    .375   1.542  23.842  94.240
SDEV:     .000    .000    .000    .000    .000    .000    .000    .000    .000    .000
SERR:     .000    .000    .000    .000    .000    .000    .000    .000    .000
%RSD:      .00     .00     .00     .00     .00     .00     .00     .00     .00
STDS:      396     396      14      22      23      25     396     396     ---

STKF:    .1836   .0330   .4101   .5547   .6328   .7341   .3060   .0469     ---
STCT:   1119.3  3499.0  4307.2  9290.4  8344.6 14435.6  1338.8  1992.0     ---

UNKF:    .5710   .0066   .0004   .0548   .0028   .0040   .0043   .0088     ---
UNCT:   3481.1   701.1     4.3   917.6    37.1    77.9    18.9   373.9     ---
UNBG:     12.2    47.8     2.8    32.9    15.3    29.2     6.1    29.4     ---

ZCOR:   1.0674  2.2108  1.4127   .9728   .9416  1.0658   .8682  1.7520     ---
KRAW:   3.1102   .2004   .0010   .0988   .0044   .0054   .0141   .1877     ---
PKBG:   286.31   15.65    2.55   28.88    3.43    3.67    4.10   13.70     ---
INT%:      .00    ----    ----    ----  -15.76    ----   -1.38    ----     ---

As one can see our Fe concentration is 60.944 and our total is 94.240. So we're missing about 5% of something and that something of course is mostly the excess oxygen in the Fe2O3 molecule in magnetite. Now how much of an effect can this ~5% missing oxygen have on our Fe concentration? What would you guess?  I wouldn't have guessed this much:

Un   96 7138_PPO-2_Mgt4_HO-1, Results in Elemental Weight Percents

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    DIFF
BGDS:      MAN     MAN     MAN     MAN     EXP     LIN     MAN     MAN
TIME:    40.00  120.00   40.00   80.00   30.00   30.00   80.00  120.00     ---
BEAM:    45.93   45.93   45.93   45.93   45.93   45.93   45.93   45.93     ---

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
146  61.421   1.451    .057   5.379    .267    .425    .383   1.532  29.085 100.000

AVER:   61.421   1.451    .057   5.379    .267    .425    .383   1.532  29.085 100.000
SDEV:     .000    .000    .000    .000    .000    .000    .000    .000    .000    .000
SERR:     .000    .000    .000    .000    .000    .000    .000    .000    .000
%RSD:      .00     .00     .00     .00     .00     .00     .00     .00     .00
STDS:      396     396      14      22      23      25     396     396     ---

STKF:    .1836   .0330   .4101   .5547   .6328   .7341   .3060   .0469     ---
STCT:   1119.3  3499.0  4307.2  9290.4  8344.6 14435.6  1338.8  1992.0     ---

UNKF:    .5710   .0066   .0004   .0548   .0028   .0040   .0044   .0088     ---
UNCT:   3481.6   701.6     4.3   918.5    37.1    77.9    19.1   374.1     ---
UNBG:     11.8    47.3     2.8    32.0    15.3    29.2     5.9    29.2     ---

ZCOR:   1.0756  2.1904  1.4061   .9808   .9506  1.0740   .8773  1.7396     ---
KRAW:   3.1106   .2005   .0010   .0989   .0044   .0054   .0143   .1878     ---
PKBG:   296.98   15.83    2.54   29.68    3.43    3.67    4.25   13.80     ---
INT%:      .00    ----    ----    ----  -15.75    ----   -1.36    ----     ---

Holy cow!  Our Fe concentration went from 60.944 to 61.421 which is almost 0.5 wt% absolute. And note how the ZCOR (matrix correction) for Fe Ka went from 1.0674 to 1.0756.  But even more mind blowing is to compare the *other* elements we measured: Mg, Ti, Al, etc.  What happened to them?  Well they went slightly *down* in concentration!  Why? Because they are more absorbed by Fe than by O.  It just goes to show you that one cannot intuit physics, you have to just run the darn calculation.

Of course we really should calculate the excess oxygen in our magnetites/ilmenites using a ferric/ferrous calculation (and more on that later), but the oxygen by difference calculation demonstrates that once we obtain our ferric/ferrous ratio, we really need to calculate the excess oxygen from that and specify it in Probe for EPMA, to obtain a more accurate Fe concentration for our mineral thermodynamic calculations.

Now, I'm no geologist but perhaps one should then recalculate our ferric/ferrous ratios, this time using our improved Fe concentration. Again, more on this later...
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 11, 2019, 12:39:23 PM
I'm no geologist but I think this is a cool trick to deal with missing OH in (some/all?) amphiboles.

So here is a tremolite (asbestos) analysis I did recently for the CDC:

Un   13 AZ asbestos gr6, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O      HO   SUM
642   -.016  57.171    .112    .186   3.613  22.006  12.782    .004   -.044   -.063    .185    .028    .000    .000  95.963
643    .006  57.423    .086    .203   3.307  22.143  12.787    .000   -.031    .049    .215    .009    .000    .000  96.199
644    .008  57.522    .078    .182   3.437  22.184  12.780    .004   -.015   -.027    .178    .026    .000    .000  96.358
645    .060  57.454    .073    .163   3.168  22.240  12.908    .003    .012   -.071    .175    .029    .000    .000  96.213
646    .088  57.484    .079    .053   3.012  22.158  13.087   -.003   -.036   -.047    .138   -.041    .000    .000  95.972

AVER:     .029  57.411    .086    .157   3.307  22.146  12.869    .002   -.023   -.032    .178    .010    .000    .000  96.141
SDEV:     .043    .139    .016    .060    .233    .086    .134    .003    .022    .049    .028    .030    .000    .000    .170
SERR:     .019    .062    .007    .027    .104    .039    .060    .001    .010    .022    .012    .013    .000    .000
%RSD:   146.89     .24   18.18   38.14    7.04     .39    1.04  159.31  -97.92 -151.68   15.48  295.57  223.61     .00
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

Note that the total is quite low due to the missing OH molecule.  Now looking up the formula for tremolite we see this:  Ca2Mg5Si8O22(OH)2. So there are 2 OH molecules for every 8 Si atoms or 0.25 hydroxyls for every Si atom.

Next we add hydrogen as an unanalyzed elements in the Elements/Cations dialog like this, being sure to specify 1 hydrogen and 1 oxygen, to obtain the hydroxyl molecule:

(https://probesoftware.com/smf/gallery/395_11_07_19_12_34_09.png)

Next we go into the Calculation Options dialog and specify oxygen by stoichiometry, and .25 hydrogens (as hydroxyl), to 1 Si atom as seen here:

(https://probesoftware.com/smf/gallery/395_11_07_19_12_34_22.png)

Now when we calculate the composition we get:

Un   13 AZ asbestos gr6, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O      HO   SUM
642   -.014  57.329    .112    .187   3.634  22.208  12.820    .004   -.044   -.065    .186    .028    .000   4.057 100.442
643    .009  57.587    .086    .204   3.326  22.349  12.826    .000   -.032    .050    .216    .009    .000   4.075 100.705
644    .011  57.682    .078    .183   3.456  22.389  12.819    .004   -.015   -.028    .179    .026    .000   4.082 100.866
645    .063  57.613    .073    .164   3.186  22.446  12.946    .003    .012   -.073    .176    .029    .000   4.077 100.717
646    .091  57.650    .079    .054   3.030  22.366  13.126   -.003   -.036   -.048    .139   -.042    .000   4.080 100.486

AVER:     .032  57.572    .086    .158   3.326  22.352  12.908    .002   -.023   -.033    .179    .010    .000   4.074 100.643
SDEV:     .043    .141    .016    .060    .234    .088    .134    .003    .022    .049    .028    .030    .000    .010    .176
SERR:     .019    .063    .007    .027    .105    .039    .060    .001    .010    .022    .012    .013    .000    .004
%RSD:   136.72     .24   18.19   38.03    7.03     .39    1.04  159.31  -97.92 -151.40   15.48  295.57 -651.92     .24
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

Not only is our total now very close to 100%, but note how the Si and Mg compositions have changed, because now the matrix effect of that 4 wt% OH was included in the matrix calculations.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Brian Joy on July 11, 2019, 01:21:49 PM
I'm no geologist but I think this is a cool trick to deal with missing OH in (some/all?) amphiboles.

So here is a tremolite (asbestos) analysis I did recently for the CDC:

Un   13 AZ asbestos gr6, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O      HO   SUM
642   -.016  57.171    .112    .186   3.613  22.006  12.782    .004   -.044   -.063    .185    .028    .000    .000  95.963
643    .006  57.423    .086    .203   3.307  22.143  12.787    .000   -.031    .049    .215    .009    .000    .000  96.199
644    .008  57.522    .078    .182   3.437  22.184  12.780    .004   -.015   -.027    .178    .026    .000    .000  96.358
645    .060  57.454    .073    .163   3.168  22.240  12.908    .003    .012   -.071    .175    .029    .000    .000  96.213
646    .088  57.484    .079    .053   3.012  22.158  13.087   -.003   -.036   -.047    .138   -.041    .000    .000  95.972

AVER:     .029  57.411    .086    .157   3.307  22.146  12.869    .002   -.023   -.032    .178    .010    .000    .000  96.141
SDEV:     .043    .139    .016    .060    .233    .086    .134    .003    .022    .049    .028    .030    .000    .000    .170
SERR:     .019    .062    .007    .027    .104    .039    .060    .001    .010    .022    .012    .013    .000    .000
%RSD:   146.89     .24   18.18   38.14    7.04     .39    1.04  159.31  -97.92 -151.68   15.48  295.57  223.61     .00
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

Note that the total is quite low due to the missing OH molecule.  Now looking up the formula for tremolite we see this:  Ca2Mg5Si8O22(OH)2. So there are 2 OH molecules for every 8 Si atoms or 0.25 hydroxyls for every Si atom.

Next we add hydrogen as an unanalyzed elements in the Elements/Cations dialog like this, being sure to specify 1 hydrogen and 1 oxygen, to obtain the hydroxyl molecule:

(https://probesoftware.com/smf/gallery/395_11_07_19_12_34_09.png)

Next we go into the Calculation Options dialog and specify oxygen by stoichiometry, and .25 hydrogens (as hydroxyl), to 1 Si atom as seen here:

(https://probesoftware.com/smf/gallery/395_11_07_19_12_34_22.png)

Now when we calculate the composition we get:

Un   13 AZ asbestos gr6, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O      HO   SUM
642   -.014  57.329    .112    .187   3.634  22.208  12.820    .004   -.044   -.065    .186    .028    .000   4.057 100.442
643    .009  57.587    .086    .204   3.326  22.349  12.826    .000   -.032    .050    .216    .009    .000   4.075 100.705
644    .011  57.682    .078    .183   3.456  22.389  12.819    .004   -.015   -.028    .179    .026    .000   4.082 100.866
645    .063  57.613    .073    .164   3.186  22.446  12.946    .003    .012   -.073    .176    .029    .000   4.077 100.717
646    .091  57.650    .079    .054   3.030  22.366  13.126   -.003   -.036   -.048    .139   -.042    .000   4.080 100.486

AVER:     .032  57.572    .086    .158   3.326  22.352  12.908    .002   -.023   -.033    .179    .010    .000   4.074 100.643
SDEV:     .043    .141    .016    .060    .234    .088    .134    .003    .022    .049    .028    .030    .000    .010    .176
SERR:     .019    .063    .007    .027    .105    .039    .060    .001    .010    .022    .012    .013    .000    .004
%RSD:   136.72     .24   18.19   38.03    7.03     .39    1.04  159.31  -97.92 -151.40   15.48  295.57 -651.92     .24
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

Not only is our total now very close to 100%, but note how the Si and Mg compositions have changed, because now the matrix effect of that 4 wt% OH was included in the matrix calculations.

Hi John,

This is not correct.  Amphiboles generally have around 2 wt% H2O assuming that no F-, Cl-, or O2- substitutes for OH-.  For charge balance, you should have specified 2 hydrogens per oxygen.  Also, note that Al3+ can substitute for Si4+ on the tetrahedral sites, and so it is not sound practice to specify a given number of OH- per Si4+.

Brian
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 11, 2019, 01:25:56 PM
Hello,
The general idea of calculating the hydroxyl content in advance of the matrix corrections is a good one, but I should draw your attention to some problems with the discussion immediately above.

1) The concentrations of the elements should be expressed as neutral oxides.
Thus, the method should report percent-by-weight of H2O, not the hydroxyl moiety.
For both of the average tremolite compositions discussed, the amount of H2O(!) should be 2.19 wt%.
This corresponds to two hydroxyl units per formula unit in each of these cases:
(K0.016) (Ca1.923Mn0.021Fe0.019Na0.008)Σ1.971 (Mg4.605Fe0.367Al0.026Zn0.002)Σ5 (Si8.006)Σ8.006 O22 (OH)2
(K0.016) (Ca1.921Fe0.037Mn0.021Na0.008)Σ1.987 (Mg4.627Fe0.349Al0.021Zn0.002)Σ4.999 (Si7.995Al0.005)Σ8 O22 (OH)2
The final totals are thus 98.4 to 98.8 wt%.

2) Many (most) amphibole species do not have exactly 8 Si per formula unit.
One could instead use the ratio of H to oxygen for those amphiboles that are assumed to have only hydroxyl present (no oxo-substitution, and no significant F or Cl present).
The ratio would be 2 H for 24 oxygen, or 0.0833333 H for 1 O.

3) A minor point, but in my view, negative values of the measured elements should be automatically set to zero, prior to averaging.

Best regards,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 11, 2019, 01:55:31 PM
As I said, I'm no geologist, so please explain why the formula for tremolite is given as Ca2Mg5Si8O22(OH)2

http://www.webmineral.com/data/Tremolite.shtml#.XSeiNP57laQ

I only assumed Si might be a valid element to ratio hydrogen to because there's almost no Al in this composition.  Maybe this only works for tremolite?

My main point was just to show the matrix effect of including OH or H2O, on the other measured elements. What is your suggestion for adding in the missing hydroxyl or water to improve the matrix correction accuracy?  Just specify 2% H2O?
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 11, 2019, 02:19:08 PM
Hello,
Although end-member tremolite has the formula: □Ca2(Mg5)(Si8)O22(OH)2, where □ indicates a vacancy on the A-site of amphibole, other amphiboles have substitutions for Si (and for hydroxyl).

Thus, end-member kaersutite has the formula: NaCa2(Mg3TiAl)(Si6Al2)O22O2.
Similarly, end-member pargasite has the formula: NaCa2(Mg4Al)(Si6Al2)O22(OH)2.

For the hydroxyl group of amphiboles, if Cl and F are assumed to be absent, one could specify 2 hydroxyl groups.
In both end-member tremolite and end-member pargasite, the ratio of H to O would therefore be 2 to 24, or 0.083333:1.

It is critical that the output in weight percent be expressed as neutral oxides, that is, H2O.

End-member ideal tremolite has the following oxide weight percent composition:
SiO2 59.17, MgO 24.81, CaO 13.81, H2O 2.22 wt%, sum 100.01 (all rounded to 2 decimal places).

End-member ideal pargasite has the following oxide weight percent composition:
SiO2 43.13, Al2O3 18.30, MgO 19.29, CaO 13.42, Na2O 3.71, H2O 2.16 wt%, sum 100.01 (all rounded to 2 decimal places).

Because Si varies considerably (in principle from 5 atoms per formula unit in sadanagaite to 8 in tremolite), it is not a good choice as a basis for H calculation. Oxygen should be better (assuming no oxo-substitution).

All the best,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 11, 2019, 02:25:03 PM
I'm completely confused now.  Some of that oxygen in the formula isn't associated with the cations.  If I just specify hydrogen elementally relative to the calculated oxygen, it won't add in the additional oxygen in hydroxl or water.  Correct?

So what *exactly* would you do in the Calculation Options dialog?

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 11, 2019, 02:36:03 PM
If I specify .08333 hydrogens to calculated oxygen I get:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element H is Calculated  .08333 Atoms Relative To 1.0 Atom of Oxygen

Using Conductive Coating Correction For Electron Absorption and X-Ray Transmission:
Sample Coating=C, Density=2.1 gm/cm3, Thickness=200 angstroms, Sin(Thickness)=311.145 angstroms

Un   13 AZ asbestos gr6, Results in Elemental Weight Percents

ELEM:       Na      Si       K      Al      Fe      Mg      Ca      Cl      Ti       F      Mn      Zn       O       H
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    CALC    STOI
BGDS:      MAN     MAN     LIN     MAN     MAN     MAN     MAN     LIN     LIN     LIN     LIN     LIN
TIME:    40.00   40.00   20.00   40.00   40.00  165.00  150.00  120.00   30.00  120.00   30.00   30.00     ---     ---
BEAM:    29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92     ---     ---

ELEM:       Na      Si       K      Al      Fe      Mg      Ca      Cl      Ti       F      Mn      Zn       O       H   SUM
642   -.010  26.802    .093    .099   2.825  13.397   9.163    .004   -.026   -.065    .144    .022  47.925    .250 100.624
643    .006  26.921    .071    .108   2.586  13.481   9.167    .000   -.019    .050    .168    .007  48.069    .250 100.866
644    .008  26.967    .065    .097   2.687  13.505   9.162    .004   -.009   -.028    .138    .021  48.156    .250 101.025
645    .047  26.935    .061    .087   2.477  13.540   9.253    .003    .007   -.073    .136    .023  48.138    .250 100.885
646    .067  26.952    .066    .028   2.355  13.492   9.382   -.003   -.022   -.048    .107   -.033  48.059    .251 100.655

AVER:     .024  26.915    .071    .084   2.586  13.483   9.226    .002   -.014   -.033    .139    .008  48.070    .250 100.811
SDEV:     .032    .066    .013    .032    .182    .053    .096    .003    .013    .049    .021    .024    .091    .000    .169
SERR:     .014    .029    .006    .014    .081    .024    .043    .001    .006    .022    .010    .011    .041    .000
%RSD:   136.38     .24   18.19   38.02    7.03     .39    1.04  159.31  -97.92 -151.40   15.48  295.56     .19     .10
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

STKF:    .0735   .2018   .1132   .1332   .0950   .0568   .1027   .0602   .5547   .1715   .7341   .4865     ---     ---
STCT:    58.60  246.04  197.64  255.36   19.35   72.74  178.88   61.41   44.86   13.54  136.63   66.08     ---     ---

UNKF:    .0001   .2126   .0006   .0006   .0215   .0926   .0838   .0000  -.0001  -.0001   .0011   .0001     ---     ---
UNCT:      .10  259.20    1.11    1.10    4.38  118.69  146.07     .01    -.01    -.01     .21     .01     ---     ---
UNBG:      .30     .20     .95     .80     .22     .52     .99     .37     .06     .05     .15     .36     ---     ---

ZCOR:   1.9014  1.2659  1.1175  1.4587  1.2014  1.4554  1.1004  1.2304  1.2048  4.1651  1.2217  1.2664     ---     ---
KRAW:    .0017  1.0535   .0056   .0043   .2265  1.6316   .8165   .0002  -.0002  -.0005   .0015   .0001     ---     ---
PKBG:     1.34 1319.20    2.18    2.37   20.95  228.69  149.12    1.04     .86     .90    2.43    1.03     ---     ---
INT%:     ----    ----    ----    ----    -.01    ----    ----    ----    ----   76.60    ----    ----     ---     ---

TDI%:    2.963    .033  -2.002  -3.947   -.711    .000    .000    .000    .000    .000    .000    .000     ---     ---
DEV%:       .2      .1    18.6    23.1     3.4      .0      .0      .0      .0      .0      .0      .0     ---     ---
TDIF:  HYP-EXP LOG-LIN LOG-LIN LOG-LIN LOG-LIN    ----    ----    ----    ----    ----    ----    ----     ---     ---
TDIT:   111.80  112.60   78.00  111.00  115.40     .00     .00     .00     .00     .00     .00     .00     ---     ---
TDII:     .369    259.    2.01    1.84    4.57    ----    ----    ----    ----    ----    ----    ----     ---     ---
TDIL:    -.996    5.56    .697    .611    1.52    ----    ----    ----    ----    ----    ----    ----     ---     ---

Un   13 AZ asbestos gr6, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O      HO   SUM
642   -.014  57.339    .112    .187   3.634  22.216  12.821    .004   -.044   -.065    .186    .028    .000   4.219 100.624
643    .009  57.593    .086    .204   3.327  22.356  12.827    .000   -.032    .050    .216    .009    .000   4.221 100.866
644    .011  57.691    .078    .183   3.457  22.396  12.820    .004   -.015   -.028    .179    .026    .000   4.222 101.025
645    .063  57.623    .073    .164   3.187  22.454  12.947    .003    .012   -.073    .176    .029    .000   4.226 100.885
646    .091  57.660    .079    .054   3.030  22.373  13.128   -.003   -.036   -.048    .139   -.042    .000   4.229 100.655

AVER:     .032  57.581    .086    .158   3.327  22.359  12.909    .002   -.023   -.033    .179    .010    .000   4.223 100.811
SDEV:     .043    .140    .016    .060    .234    .088    .134    .003    .022    .049    .028    .030    .000    .004    .169
SERR:     .019    .063    .007    .027    .105    .039    .060    .001    .010    .022    .012    .013    .000    .002
%RSD:   136.38     .24   18.19   38.02    7.03     .39    1.04  159.31  -97.92 -151.40   15.48  295.56  418.33     .10
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 11, 2019, 03:01:04 PM
I'm completely confused now.  Some of that oxygen in the formula isn't associated with the cations.  If I just specify hydrogen elementally relative to the calculated oxygen, it won't add in the additional oxygen in hydroxl or water.  Correct?

So what *exactly* would you do in the Calculation Options dialog?

Sorry to cause confusion.
The program actually does better than you might expect!

Let me explain with the example of apophyllite, ideal formula: KCa4Si8O20(OH)·8H2O
The ratio of hydrogen to oxygen in this formula is 17 to 29, or about 0.58621:1.
From the Handbook of Mineralogy entry for hydroxyapophyllite, the ideal oxide weight percents are:
SiO2 53.10, CaO 24.78, K2O 5.20, H2O 16.92 wt%, sum 100.00.

I ran some apophyllite analyses last year.
The measured oxides were: Na2O, SiO2, K2O, Al2O3, CaO, MgO, and BaO.
In the Calculation Options window, I selected:
Stoichiometry to Calculated Oxygen 0.58621 Atoms of H to 1 Oxygen
(This is shown in the attached MS-Word document entitled "apophyllite example.docx").

The results (also in the attached MS-Word document) are:
Na2O   SiO2   K2O   Al2O3   CaO   MgO   BaO   H2O   Total
Average: 0.03   52.98   4.81   0.02   24.52   0.01  0.00   16.98   99.36

Thus, the program has calculated the presence of 16.98 wt% H2O.
If I calculate the formula proportions (on the basis of 8 Si+Al), I get:

Si7.998 Al0.002 Ca3.966 Na0.010 K0.926 H17.101, with 28.98 O by charge balance.
(Remember, the ideal is Si8, Ca4, K1, H17, O29).

I consider this to be pretty good initial results for a hydroxylated- and hydrated-mineral.

The take-home message is that Probe-for-EPMA can calculate the appropriate content of H2O.
Just try it!
(I have equally good results for analcime, NaAlSi2O6·H2O).

Best regards,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 11, 2019, 03:31:54 PM
I should also note that the major element composition of that apophyllite without any calculated OH & H2O was:
SiO2 51.23, K2O 4.65 CaO 23.79, sum 79.67 wt%.

Thus, the calculated OH & H2O content made significant changes (about 3% relative) in these major elements during the data reduction process.
The major element results:
SiO2   K2O    CaO    H2O
Average: 52.98   4.81  24.52   16.98

Cheers,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 11, 2019, 04:28:46 PM
Sorry to cause confusion.
The program actually does better than you might expect!

Let me explain with the example of apophyllite, ideal formula: KCa4Si8O20(OH)·8H2O
The ratio of hydrogen to oxygen in this formula is 17 to 29, or about 0.58621:1.
From the Handbook of Mineralogy entry for hydroxyapophyllite, the ideal oxide weight percents are:
SiO2 53.10, CaO 24.78, K2O 5.20, H2O 16.92 wt%, sum 100.00.

I ran some apophyllite analyses last year.
The measured oxides were: Na2O, SiO2, K2O, Al2O3, CaO, MgO, and BaO.
In the Calculation Options window, I selected:
Stoichiometry to Calculated Oxygen 0.58621 Atoms of H to 1 Oxygen
(This is shown in the attached MS-Word document entitled "apophyllite example.docx").

The results (also in the attached MS-Word document) are:
Na2O   SiO2   K2O   Al2O3   CaO   MgO   BaO   H2O   Total
Average: 0.03   52.98   4.81   0.02   24.52   0.01  0.00   16.98   99.36

Thus, the program has calculated the presence of 16.98 wt% H2O.
If I calculate the formula proportions (on the basis of 8 Si+Al), I get:

Si7.998 Al0.002 Ca3.966 Na0.010 K0.926 H17.101, with 28.98 O by charge balance.
(Remember, the ideal is Si8, Ca4, K1, H17, O29).

I consider this to be pretty good initial results for a hydroxylated- and hydrated-mineral.

The take-home message is that Probe-for-EPMA can calculate the appropriate content of H2O.
Just try it!
(I have equally good results for analcime, NaAlSi2O6·H2O).

Best regards,
Andrew

Hi Andrew,
OK, wow, that makes more sense.  So if I specify 0.08333 hydrogens to each oxygen (and specifying hydrogen oxide as H2O), I get this:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element H is Calculated  .08333 Atoms Relative To 1.0 Atom of Oxygen

Using Conductive Coating Correction For Electron Absorption and X-Ray Transmission:
Sample Coating=C, Density=2.1 gm/cm3, Thickness=200 angstroms, Sin(Thickness)=311.145 angstroms

Un   13 AZ asbestos gr6, Results in Elemental Weight Percents

ELEM:       Na      Si       K      Al      Fe      Mg      Ca      Cl      Ti       F      Mn      Zn       O       H
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    CALC    STOI
BGDS:      MAN     MAN     LIN     MAN     MAN     MAN     MAN     LIN     LIN     LIN     LIN     LIN
TIME:    40.00   40.00   20.00   40.00   40.00  165.00  150.00  120.00   30.00  120.00   30.00   30.00     ---     ---
BEAM:    29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92   29.92     ---     ---

ELEM:       Na      Si       K      Al      Fe      Mg      Ca      Cl      Ti       F      Mn      Zn       O       H   SUM
642   -.011  26.791    .093    .099   2.822  13.344   9.163    .004   -.026   -.064    .144    .022  45.847    .244  98.472
643    .006  26.909    .071    .108   2.583  13.427   9.167    .000   -.019    .050    .167    .007  45.989    .245  98.711
644    .007  26.955    .065    .097   2.684  13.452   9.162    .004   -.009   -.028    .138    .021  46.076    .245  98.870
645    .046  26.923    .061    .087   2.474  13.486   9.253    .003    .007   -.072    .136    .023  46.055    .245  98.728
646    .066  26.940    .066    .028   2.353  13.437   9.382   -.003   -.022   -.048    .107   -.033  45.974    .245  98.494

AVER:     .023  26.904    .071    .084   2.583  13.429   9.225    .002   -.014   -.032    .139    .008  45.988    .245  98.655
SDEV:     .032    .065    .013    .032    .182    .053    .096    .003    .013    .049    .021    .024    .090    .000    .169
SERR:     .014    .029    .006    .014    .081    .024    .043    .001    .006    .022    .010    .011    .040    .000
%RSD:   140.42     .24   18.19   38.06    7.04     .39    1.04  159.31  -97.92 -151.40   15.48  295.57     .20     .10
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

STKF:    .0735   .2018   .1132   .1332   .0950   .0568   .1027   .0602   .5547   .1715   .7341   .4865     ---     ---
STCT:    58.60  246.04  197.64  255.36   19.35   72.74  178.88   61.41   44.86   13.54  136.63   66.08     ---     ---

UNKF:    .0001   .2126   .0006   .0006   .0215   .0926   .0838   .0000  -.0001  -.0001   .0011   .0001     ---     ---
UNCT:      .10  259.20    1.11    1.10    4.38  118.68  146.06     .01    -.01    -.01     .21     .01     ---     ---
UNBG:      .30     .20     .95     .81     .22     .53     .99     .37     .06     .05     .15     .36     ---     ---

ZCOR:   1.8912  1.2654  1.1175  1.4576  1.2006  1.4496  1.1004  1.2318  1.2048  4.1235  1.2210  1.2653     ---     ---
KRAW:    .0016  1.0535   .0056   .0043   .2264  1.6315   .8165   .0002  -.0002  -.0005   .0015   .0001     ---     ---
PKBG:     1.32 1312.38    2.18    2.37   20.78  226.62  148.12    1.04     .86     .90    2.43    1.03     ---     ---
INT%:     ----    ----    ----    ----    -.01    ----    ----    ----    ----   76.60    ----    ----     ---     ---

TDI%:    2.963    .033  -2.002  -3.947   -.711    .000    .000    .000    .000    .000    .000    .000     ---     ---
DEV%:       .2      .1    18.6    23.1     3.4      .0      .0      .0      .0      .0      .0      .0     ---     ---
TDIF:  HYP-EXP LOG-LIN LOG-LIN LOG-LIN LOG-LIN    ----    ----    ----    ----    ----    ----    ----     ---     ---
TDIT:   111.80  112.60   78.00  111.00  115.40     .00     .00     .00     .00     .00     .00     .00     ---     ---
TDII:     .369    259.    2.01    1.84    4.57    ----    ----    ----    ----    ----    ----    ----     ---     ---
TDIL:    -.996    5.56    .697    .611    1.52    ----    ----    ----    ----    ----    ----    ----     ---     ---

Un   13 AZ asbestos gr6, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O     H2O   SUM
642   -.015  57.315    .112    .186   3.631  22.128  12.821    .004   -.044   -.064    .186    .028    .000   2.184  98.472
643    .008  57.568    .086    .204   3.323  22.266  12.826    .000   -.032    .050    .216    .009    .000   2.186  98.711
644    .010  57.667    .078    .183   3.453  22.307  12.819    .004   -.015   -.028    .179    .026    .000   2.186  98.870
645    .062  57.598    .073    .164   3.183  22.364  12.947    .003    .012   -.072    .176    .029    .000   2.188  98.728
646    .089  57.634    .079    .053   3.027  22.283  13.127   -.003   -.036   -.048    .139   -.042    .000   2.190  98.494

AVER:     .031  57.556    .086    .158   3.323  22.270  12.908    .002   -.023   -.032    .179    .010    .000   2.187  98.655
SDEV:     .043    .140    .016    .060    .234    .087    .134    .003    .022    .049    .028    .030    .000    .002    .169
SERR:     .019    .063    .007    .027    .105    .039    .060    .001    .010    .022    .012    .013    .000    .001
%RSD:   140.42     .24   18.19   38.06    7.04     .39    1.04  159.31  -97.92 -151.40   15.48  295.57   69.72     .10
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

And as you and Brian said, the total is a little low, probably out of focus. Looking at another sample I get this:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element H is Calculated  .08333 Atoms Relative To 1.0 Atom of Oxygen

Using Conductive Coating Correction For Electron Absorption and X-Ray Transmission:
Sample Coating=C, Density=2.1 gm/cm3, Thickness=200 angstroms, Sin(Thickness)=311.145 angstroms

Un    3 AZ asbestos gr1, Results in Elemental Weight Percents

ELEM:       Na      Si       K      Al      Fe      Mg      Ca      Cl      Ti       F      Mn      Zn       O       H
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    CALC    STOI
BGDS:      MAN     MAN     LIN     MAN     MAN     MAN     MAN     LIN     LIN     LIN     LIN     LIN
TIME:    40.00   40.00   20.00   40.00   40.00  165.00  150.00  120.00   30.00  120.00   30.00   30.00     ---     ---
BEAM:    29.90   29.90   29.90   29.90   29.90   29.90   29.90   29.90   29.90   29.90   29.90   29.90     ---     ---

ELEM:       Na      Si       K      Al      Fe      Mg      Ca      Cl      Ti       F      Mn      Zn       O       H   SUM
138    .008  26.996    .051    .014   2.275  13.729   9.586    .004    .026   -.031    .082    .025  46.289    .245  99.298
139    .008  27.285    .040    .033   2.379  13.658   9.453    .006    .008    .040    .133   -.028  46.554    .245  99.813
140    .030  27.073    .065    .050   2.282  13.667   9.501    .002    .013   -.032    .080   -.048  46.323    .245  99.251
141    .055  27.055    .032    .055   2.533  13.677   9.358    .000    .011    .009    .136   -.010  46.350    .245  99.505
142    .037  27.221    .028    .016   2.592  13.659   9.399    .004    .014    .005    .107    .017  46.519    .245  99.861
143    .059  27.190    .059    .042   2.310  13.713   9.476    .004   -.002    .004    .101    .037  46.501    .245  99.740
144    .082  27.189    .043    .080   2.457  13.619   9.446   -.001   -.019   -.052    .028    .004  46.468    .245  99.589

AVER:     .040  27.144    .045    .041   2.404  13.674   9.460    .003    .007   -.008    .095    .000  46.429    .245  99.580
SDEV:     .027    .104    .014    .023    .126    .037    .073    .002    .014    .031    .037    .030    .106    .000    .242
SERR:     .010    .039    .005    .009    .048    .014    .028    .001    .005    .012    .014    .011    .040    .000
%RSD:    68.48     .38   30.26   56.41    5.25     .27     .78   93.90  205.40 -385.54   38.60-8861.00     .23     .08
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

STKF:    .0735   .2018   .1132   .1332   .0950   .0568   .1027   .0602   .5547   .1715   .7341   .4865     ---     ---
STCT:    55.79  246.63  196.50  255.38   19.50   71.86  178.02   66.46   44.04   14.00  136.85   66.47     ---     ---

UNKF:    .0002   .2145   .0004   .0003   .0200   .0945   .0860   .0000   .0001   .0000   .0008   .0000     ---     ---
UNCT:      .16  262.18     .70     .55    4.11  119.57  149.02     .02     .00     .00     .15     .00     ---     ---
UNBG:      .30     .21     .96     .82     .22     .54    1.01     .36     .05     .05     .17     .38     ---     ---

ZCOR:   1.8837  1.2652  1.1173  1.4579  1.2011  1.4474  1.1006  1.2318  1.2033  4.1276  1.2215  1.2656     ---     ---
KRAW:    .0029  1.0631   .0036   .0021   .2106  1.6638   .8371   .0003   .0001  -.0001   .0011   .0000     ---     ---
PKBG:     1.53 1227.91    1.74    1.67   20.07  223.49  149.16    1.07    1.12     .98    1.91    1.00     ---     ---
INT%:     ----    ----    ----    ----    -.01    ----    ----    ----    ---- -129.12    ----    ----     ---     ---

TDI%:    7.889    .289  -4.914   1.125    .386    .000    .000    .000    .000    .000    .000    .000     ---     ---
DEV%:       .2      .1    29.7    56.7     3.6      .0      .0      .0      .0      .0      .0      .0     ---     ---
TDIF:  HYP-EXP LOG-LIN LOG-LIN LOG-LIN LOG-LIN    ----    ----    ----    ----    ----    ----    ----     ---     ---
TDIT:   116.14  116.14   81.43  114.71  120.57     .00     .00     .00     .00     .00     .00     .00     ---     ---
TDII:     .435    262.    1.58    1.33    4.32    ----    ----    ----    ----    ----    ----    ----     ---     ---
TDIL:    -.832    5.57    .460    .286    1.46    ----    ----    ----    ----    ----    ----    ----     ---     ---

Un    3 AZ asbestos gr1, Results in Oxide Weight Percents

ELEM:     Na2O    SiO2     K2O   Al2O3     FeO     MgO     CaO      Cl    TiO2       F     MnO     ZnO       O     H2O   SUM
138    .011  57.754    .061    .026   2.927  22.766  13.413    .004    .043   -.031    .106    .031    .000   2.187  99.298
139    .011  58.372    .048    .062   3.061  22.648  13.227    .006    .013    .040    .172   -.035    .000   2.188  99.813
140    .041  57.919    .078    .095   2.936  22.664  13.294    .002    .021   -.032    .103   -.060    .000   2.190  99.251
141    .074  57.880    .039    .105   3.258  22.681  13.094    .000    .018    .009    .176   -.013    .000   2.185  99.505
142    .049  58.235    .033    .030   3.335  22.651  13.151    .004    .023    .005    .139    .021    .000   2.185  99.861
143    .079  58.170    .071    .079   2.971  22.741  13.259    .004   -.004    .004    .131    .046    .000   2.187  99.740
144    .110  58.167    .052    .152   3.161  22.585  13.216   -.001   -.032   -.052    .037    .005    .000   2.189  99.589

AVER:     .054  58.071    .055    .078   3.093  22.676  13.236    .003    .012   -.008    .123    .000    .000   2.187  99.580
SDEV:     .037    .222    .017    .044    .162    .061    .103    .002    .024    .031    .048    .038    .000    .002    .242
SERR:     .014    .084    .006    .017    .061    .023    .039    .001    .009    .012    .018    .014    .000    .001
%RSD:    68.48     .38   30.26   56.41    5.25     .27     .78   93.90  205.40 -385.54   38.60-8860.99     .00     .08
STDS:      336     162     374     336     162     162     162     285      22     835      25     660     ---     ---

Which is much better. Dang, geology is complicated compared to physics!

Now I'm almost afraid to ask, but can you tell me why the tremolite formula is stated as Ca2(Mg5)(Si8)O22(OH)2 when Ca2(Mg5)(Si8)O23(H2O) is chemically the same? Which to me makes more sense considering how hydrogen (oxide) needs to be treated.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 12, 2019, 07:42:53 AM
Now I'm almost afraid to ask, but can you tell me why the tremolite formula is stated as Ca2(Mg5)(Si8)O22(OH)2 when Ca2(Mg5)(Si8)O23(H2O) is chemically the same? Which to me makes more sense considering how hydrogen (oxide) needs to be treated.

It has to do with how the hydrogen is present in the crystal structure.

In the case of hydroxyl, the hydrogen is located at about 0.9 to 1 angstrom away from an oxygen atom.

In the case of an H2O molecule ("water molecule"), two hydrogen atoms are located about 0.9 to 1 angstrom away from a single oxygen atom.

The H2O molecule is not linear, so in a crystal structure the central oxygen also tends to be attracted to a cation.
And, the hydrogen atoms of this H2O group may be weakly attracted to other oxygen atoms (usually within 2 to 3 angstroms distance) - this is the so-called "hydrogen bonding", for which the best example is ice.

Although it is possible to express a formula in different ways, e.g., Mg(OH)2 could be expressed as MgO·H2O, it is best to use the formula the reflects what is present in the crystal structure (or glass). In the example of apophyllite KCa4Si8O20(OH)·8H2O, both hydroxyl and H2O are present. And in tremolite, hydroxyl groups are present, but H2O groups are not.

Finally, in a chemical analysis that is expressed at neutral oxides, the hydrogen content should be expressed as H2O, regardless of how it is present in the crystal structure or glass.

Cheers,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 12, 2019, 08:26:20 AM
Now I'm almost afraid to ask, but can you tell me why the tremolite formula is stated as Ca2(Mg5)(Si8)O22(OH)2 when Ca2(Mg5)(Si8)O23(H2O) is chemically the same? Which to me makes more sense considering how hydrogen (oxide) needs to be treated.

It has to do with how the hydrogen is present in the crystal structure.

In the case of hydroxyl, the hydrogen is located at about 0.9 to 1 angstrom away from an oxygen atom.

In the case of an H2O molecule ("water molecule"), two hydrogen atoms are located about 0.9 to 1 angstrom away from a single oxygen atom.

The H2O molecule is not linear, so in a crystal structure the central oxygen also tends to be attracted to a cation.
And, the hydrogen atoms of this H2O group may be weakly attracted to other oxygen atoms (usually within 2 to 3 angstroms distance) - this is the so-called "hydrogen bonding", for which the best example is ice.

Although it is possible to express a formula in different ways, e.g., Mg(OH)2 could be expressed as MgO·H2O, it is best to use the formula the reflects what is present in the crystal structure (or glass). In the example of apophyllite KCa4Si8O20(OH)·8H2O, both hydroxyl and H2O are present. And in tremolite, hydroxyl groups are present, but H2O groups are not.

Finally, in a chemical analysis that is expressed at neutral oxides, the hydrogen content should be expressed as H2O, regardless of how it is present in the crystal structure or glass.

Cheers,
Andrew

Hi Andrew,
Thank-you. This sort of makes sense, even to a non-geologist like me!   ;D
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 23, 2019, 12:12:21 PM
Most of us understand the effects of "unanalyzed" elements in the matrix correction and how it is important to include these elements either by specification, difference or by stoichiometry to other analyzed elements, in order to obtain an accurate matrix correction.

For example the issue of unanalyzed water in hydrous glasses, where one gets a results with a total of say 95% and one might be forgiven to think that, OK, I've got 5 wt% H2O there because 100 - 95 = 5 in Excel.  But that would be wrong because Excel doesn't know anything about matrix correction physics.  In fact what we see when we specify water by difference is described in this and other posts in this topic:

https://probesoftware.com/smf/index.php?topic=92.msg7701#msg7701

Basically adding oxygen (and hydrogen) to our glass matrix correction results in a significant change in the concentration of other elements.  In a generic example of a silicate glass, the Si (and other element) concentrations increases significantly.  Why is this? Because it turns out that Si Ka is not well absorbed by Si atoms, but they are well absorbed by oxygen atoms!  Once the matrix correction "knows" about the extra oxygen (water), the absorption correction increases correspondingly.

So in our generic example of a 95% total in a hydrous glass, once we add H2O by difference and include it in the matrix correction, because the Si (and other elements) increase by about 1%, we instead obtain about 4% H2O by difference.  This effect was described in the Roman et al. paper referenced here:

https://probesoftware.com/smf/index.php?topic=61.msg4303#msg4303

Now this makes some intuitive sense to me because Si Ka is a fairly low energy emission line and therefore fairly well absorbed by other elements, but I never expected this to be the case for Fe Ka at 6.4 keV!

Here's an example for a magnetite sample where the Fe is expressed, as we usually do in EPMA, as FeO:

Un   96 7138_PPO-2_Mgt4_HO-1, Results in Elemental Weight Percents

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    CALC
BGDS:      MAN     MAN     MAN     MAN     EXP     LIN     MAN     MAN
TIME:    40.00  120.00   40.00   80.00   30.00   30.00   80.00  120.00     ---
BEAM:    45.93   45.93   45.93   45.93   45.93   45.93   45.93   45.93     ---

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
146  60.944   1.463    .058   5.329    .265    .422    .375   1.542  23.842  94.240

AVER:   60.944   1.463    .058   5.329    .265    .422    .375   1.542  23.842  94.240
SDEV:     .000    .000    .000    .000    .000    .000    .000    .000    .000    .000
SERR:     .000    .000    .000    .000    .000    .000    .000    .000    .000
%RSD:      .00     .00     .00     .00     .00     .00     .00     .00     .00
STDS:      396     396      14      22      23      25     396     396     ---

STKF:    .1836   .0330   .4101   .5547   .6328   .7341   .3060   .0469     ---
STCT:   1119.3  3499.0  4307.2  9290.4  8344.6 14435.6  1338.8  1992.0     ---

UNKF:    .5710   .0066   .0004   .0548   .0028   .0040   .0043   .0088     ---
UNCT:   3481.1   701.1     4.3   917.6    37.1    77.9    18.9   373.9     ---
UNBG:     12.2    47.8     2.8    32.9    15.3    29.2     6.1    29.4     ---

ZCOR:   1.0674  2.2108  1.4127   .9728   .9416  1.0658   .8682  1.7520     ---
KRAW:   3.1102   .2004   .0010   .0988   .0044   .0054   .0141   .1877     ---
PKBG:   286.31   15.65    2.55   28.88    3.43    3.67    4.10   13.70     ---
INT%:      .00    ----    ----    ----  -15.76    ----   -1.38    ----     ---

As one can see our Fe concentration is 60.944 and our total is 94.240. So we're missing about 5% of something and that something of course is mostly the excess oxygen in the Fe2O3 molecule in magnetite. Now how much of an effect can this ~5% missing oxygen have on our Fe concentration? What would you guess?  I wouldn't have guessed this much:

Un   96 7138_PPO-2_Mgt4_HO-1, Results in Elemental Weight Percents

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    DIFF
BGDS:      MAN     MAN     MAN     MAN     EXP     LIN     MAN     MAN
TIME:    40.00  120.00   40.00   80.00   30.00   30.00   80.00  120.00     ---
BEAM:    45.93   45.93   45.93   45.93   45.93   45.93   45.93   45.93     ---

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
146  61.421   1.451    .057   5.379    .267    .425    .383   1.532  29.085 100.000

AVER:   61.421   1.451    .057   5.379    .267    .425    .383   1.532  29.085 100.000
SDEV:     .000    .000    .000    .000    .000    .000    .000    .000    .000    .000
SERR:     .000    .000    .000    .000    .000    .000    .000    .000    .000
%RSD:      .00     .00     .00     .00     .00     .00     .00     .00     .00
STDS:      396     396      14      22      23      25     396     396     ---

STKF:    .1836   .0330   .4101   .5547   .6328   .7341   .3060   .0469     ---
STCT:   1119.3  3499.0  4307.2  9290.4  8344.6 14435.6  1338.8  1992.0     ---

UNKF:    .5710   .0066   .0004   .0548   .0028   .0040   .0044   .0088     ---
UNCT:   3481.6   701.6     4.3   918.5    37.1    77.9    19.1   374.1     ---
UNBG:     11.8    47.3     2.8    32.0    15.3    29.2     5.9    29.2     ---

ZCOR:   1.0756  2.1904  1.4061   .9808   .9506  1.0740   .8773  1.7396     ---
KRAW:   3.1106   .2005   .0010   .0989   .0044   .0054   .0143   .1878     ---
PKBG:   296.98   15.83    2.54   29.68    3.43    3.67    4.25   13.80     ---
INT%:      .00    ----    ----    ----  -15.75    ----   -1.36    ----     ---

Holy cow!  Our Fe concentration went from 60.944 to 61.421 which is almost 0.5 wt% absolute. And note how the ZCOR (matrix correction) for Fe Ka went from 1.0674 to 1.0756.  But even more mind blowing is to compare the *other* elements we measured: Mg, Ti, Al, etc.  What happened to them?  Well they went slightly *down* in concentration!  Why? Because they are more absorbed by Fe than by O.  It just goes to show you that one cannot intuit physics, you have to just run the darn calculation.

Of course we really should calculate the excess oxygen in our magnetites/ilmenites using a ferric/ferrous calculation (and more on that later), but the oxygen by difference calculation demonstrates that once we obtain our ferric/ferrous ratio, we really need to calculate the excess oxygen from that and specify it in Probe for EPMA, to obtain a more accurate Fe concentration for our mineral thermodynamic calculations.

Now, I'm no geologist but perhaps one should then recalculate our ferric/ferrous ratios, this time using our improved Fe concentration. Again, more on this later...

The idea of calculating excess oxygen and including that excess oxygen into the matrix correction physics is a very appealing idea.  Based on the preliminary calculations quoted above, it appears that the effect of excess oxygen could, at least in some cases, affect the accuracy of various geological thermometers/barometers.  Simply because the addition of excess oxygen in the matrix calculations causes some element concentrations to increase, while other elements will show a decrease in concentrations.

So we've chatted with a few geologists about adding such a calculation for ferric/ferrous ratios into Probe for EPMA, it seems that there needs to be a separate calculation (normalization) for each (non-hydrous) mineral species, e.g., magnetite/ilmenite, garnet, etc., etc.

There also seems to be some various approaches to this ferric/ferrous calculation, apparently optimized for different mineral species.  That is, Gihorso, Droop, Stormer, etc.

Geologists: what are your thoughts on this?  What mineral species should we perform these ferric/ferrous excess oxygen calculations for, and what method should we utilize? We'd like to get a consensus from the geological community before starting work on the coding.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 23, 2019, 04:00:01 PM
Hello,
The general principles of charge-balanced formulas are best laid out by Droop (1987) Min. Mag. 51, Issue 361, pp. 431-435.

A given mineral is assumed to have a set number of cation positions for a set number of oxygen atoms, with iron being the only element with variable valence state. The proportion of ferric iron is calculated to reach the ideal number of cations and of oxygen atoms.

It is important to realize the effects of propagation-of-uncertainty on the calculation of structural formulas.
This is outlined by Giaramita and Day (1990) Am. Min. 75, pp. 170-182.

As an example, below is solid-solution in the spinel group of magnetite - ulvospinel - spinel.
For the weight-percent oxides, we will assume some reasonable standard deviations, as might be found in a set of electron microprobe analyses:
 MgO   Al2O3   TiO2   FeOtot   sumwt%   4.86   12.30   9.64   69.34   96.14sd    0.25   0.45   0.35   0.60   n/aRSD   5.1%   3.7%   3.6%   0.9%  n/a

The resulting formula, calculated for 3 cations and 4 oxygen, is:

 Mg       Al       Ti       Fe2+   Fe3+     O     cationsaverage   0.250   0.500   0.250   1.000   1.000   4.000   3.000std dev   0.012   0.016   0.009   0.016   0.021   0.000   0.000RSD   4.8%   3.2%   3.4%   1.6%   2.1%   0.0%   0.0%

Although the starting relative uncertainty in FeO was 0.9%, the propagated relative uncertainty is considerably higher; for Fe2+ it is 1.6% and for Fe3+ it is 2.1%.

The example of augite based on the analysis and uncertainties given by Giaramita and Day (1990) follows:

 oxide   Na2O   MgO   Al2O3   SiO2   CaO   TiO2   Cr2O3   MnO   FeOtot   summean   1.20   16.59   8.04   50.16   15.97   0.84   0.15   0.15   6.18   99.28std dev   0.04   0.14   0.08   0.23   0.15   0.05   0.05   0.04   0.16   0.37RSD   3.3%   0.8%   1.0%   0.5%   0.9%   6.0%   33.1%   27.1%   2.6%   0.4%

The resulting formula, calculated for 4 cations and 6 oxygen, is:

 element     Na     Mg     Al      Si       Ca     Ti      Cr      Mn      Fe2+      Fe3+   O     cationsaverage   0.085   0.901   0.345   1.826   0.623   0.023   0.004   0.005   0.152   0.036   6.000   4.000std dev   0.003   0.007   0.003   0.007   0.005   0.001   0.001   0.001   0.014   0.015   0.000   0.000RSD   3.3%   0.7%   1.0%   0.4%   0.8%   6.0%   33.1%   27.1%   9.2%   40.2%   0.0%   0.0%

Although the starting relative uncertainty in FeO was 2.6%, the propagated relative uncertainty is (very) considerably higher; for Fe2+ it is 9.2% and for Fe3+ it is 40.2% (in part, because of the small absolute amount of ferric iron).

These latter relative uncertainties would apply to the recalculated weight-percent FeO and Fe2O3.

Cheers,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 24, 2019, 09:26:43 AM
Hi Andrew,
Thanks for responding.  OK, so you think the Droop method is the way to go forward on this recalculation.  Let's see if anyone else objects, but that decision is fine by me.  I assume you already have written code that performs these calculations?

On the uncertainties issue, thanks for the info but let's not get ahead of ourselves. You said:

Quote
A given mineral is assumed to have a set number of cation positions for a set number of oxygen atoms, with iron being the only element with variable valence state. The proportion of ferric iron is calculated to reach the ideal number of cations and of oxygen atoms.

So let's discuss how the user will specify this "given mineral" in the software interface. Will the user select a mineral species from a drop down list, or will they specify a "a set number of cation positions for a set number of oxygen atoms". How does your code expect this specification?
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 24, 2019, 10:56:15 AM
So let's discuss how the user will specify this "given mineral" in the software interface. Will the user select a mineral species from a drop down list, or will they specify a "a set number of cation positions for a set number of oxygen atoms". How does your code expect this specification?

Hello,
Attached is an example Excel spreadsheet of how this charge-balance calculation could work.

In this spreadsheet, the user inputs the desired # of cations, # of oxygen, and the weight-percentages of nine common oxides: Na2O   MgO   Al2O3   SiO2   CaO   TiO2   Cr2O3   MnO   FeOtotal

- the sum of these oxides
- the molar amounts of the elements, including oxygen, assuming only ferrous iron
- the atomic proportions of the elements, including oxygen, assuming only ferrous iron, based on the input # of cations
- the charge-balanced proportions of the elements, based on the input # of cations and # of oxygen

The atomic ratio of ferric iron to total iron (Fe3+/ΣFe) is given, as are the recalculated weight percentages of FeO and Fe2O3, along with a revised sum of the oxides.

There are 6 analyses in this example file:
1) The augite from Giaramita and Day (1990), based on 4 cations and 6 oxygen.
2) The augite from Giaramita and Day (1990), based on 8 cations and 12 oxygen.
3) A magnetite-spinel-ulvospinel solid solution, based on 3 cations and 4 oxygen.
4) The garnet from Knowles (1987), based on 8 cations and 12 oxygen.
5) A mostly grossular garnet (#5) from Table 58 of volume 1A of the second edition of Deer, Howie and Zussman.
6) A mostly almandine garnet (#12) from Table 55 of volume 1A of the second edition of Deer, Howie and Zussman.

For the augite examples, the proportions of ferric iron are identical, as the ratios of cations to oxygen are identical.

The magnetite etc. solid solution is a hypothetical (fictive) composition, and so the total is exactly 100.00%.

For the garnet of Knowles (1987), charge balance is achieved with 0.59 wt% Fe2O3, and the final sum is 100.57 wt%.

For the mostly grossular garnet, all of the iron is recalculated as ferric iron, and exact charge balance is still not achieved; the oxygen remains as 11.973 atoms per 8 cations.

For the mostly almandine garnet, all of the iron remains as ferrous iron, and exact charge balance is still not achieved; the oxygen remains as 12.085 atoms per 8 cations.

In these latter two cases, the compositions do NOT achieve charge balance (indeed, they cannot). This is probably because of errors and uncertainties in the analyses.

The key formula in this Excel spreadsheet is the calculation of the proportion of ferric iron, which is handled with a nested IF formula:

IF(AI3<B3,IF(2*(B3-AI3)<=AH3,2*(B3-AI3),AH3),0)

If (the atomic proportion of oxygen is Less Than the input # of oxygen,
If (two times (the input # of oxygen Minus the atomic proportion of oxygen) is Less Than or Equal To the atomic proportion of ferrous iron,
then Calculate two times (the input # of oxygen Minus the atomic proportion of oxygen),
Otherwise use the atomic proportion of ferrous iron,
Otherwise report zero.

I hope that this spreadsheet and explanation will prove useful.
Regards,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 24, 2019, 11:42:01 AM
For the mostly grossular garnet, all of the iron is recalculated as ferric iron, and exact charge balance is still not achieved; the oxygen remains as 11.973 atoms per 8 cations.

For the mostly almandine garnet, all of the iron remains as ferrous iron, and exact charge balance is still not achieved; the oxygen remains as 12.085 atoms per 8 cations.

In these latter two cases, the compositions do NOT achieve charge balance (indeed, they cannot). This is probably because of errors and uncertainties in the analyses.

The key formula in this Excel spreadsheet is the calculation of the proportion of ferric iron, which is handled with a nested IF formula:

IF(AI3<B3,IF(2*(B3-AI3)<=AH3,2*(B3-AI3),AH3),0)

If (the atomic proportion of oxygen is Less Than the input # of oxygen,
If (two times (the input # of oxygen Minus the atomic proportion of oxygen) is Less Than or Equal To the atomic proportion of ferrous iron,
then Calculate two times (the input # of oxygen Minus the atomic proportion of oxygen),
Otherwise use the atomic proportion of ferrous iron,
Otherwise report zero.

I hope that this spreadsheet and explanation will prove useful.
Regards,
Andrew

Hi Andrew,
This is a good explanation, thanks. I will start working on this soon, but probably not until after M&M.

It occurs to me, with the two examples you gave that did not achieve charge balance, I wonder if these compositions would achieve charge balance if the additional excess oxygen was added back into the matrix correction physics and the charge balance re-calculated?

This is the approach that I will be taking for this calculation, as I already do with the interference and MAN corrections.

Thanks again.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 24, 2019, 12:33:58 PM
Hi Andrew,
This is a good explanation, thanks. I will start working on this soon, but probably not until after M&M.

It occurs to me, with the two examples you gave that did not achieve charge balance, I wonder if these compositions would achieve charge balance if the additional excess oxygen was added back into the matrix correction physics and the charge balance re-calculated?

This is the approach that I will be taking for this calculation, as I already do with the interference and MAN corrections.

Thanks again.

Hi John,
It is conceivable that such an addition-and-recalculation might improve these analyses, if they had been obtained by electron microprobe analysis, but I think that they were both wet chemical analyses.

There are a few other points of concern with adding the ferric/ferrous recalculation into the matrix corrections:

1) The recalculation assumes that Fe is the ONLY element with variable valence, and that there are NO significant vacancies (cation or anion) in the material. This is mostly applicable to anhydrous oxides.

2) The result generated by the Probe-for-EPMA software during the iteration of the matrix corrections will probably need to be recalculated by the user after the fact, as it will probably diverge from the ideal during such iterations.

My reasoning is based on the case of carbonate minerals such as calcite, CaCO3, for which the CO2 content is calculated by stoichiometry and added into the iteration loop(s) of the matrix corrections.

In the case of calcite analyses, the final amount of CO2 reported by Probe-for-EPMA is usually NOT in perfect stoichiometric ratio to the divalent cations (it is usually close, but rarely perfect).

It is definitely preferable to have that CO2 present for the matrix corrections.

However, the user should (must) recalculate elsewhere the final proportion of CO2 to match stoichiometry.

Thus, I suspect that some (slight) divergence from ideality could similarly occur in the ferric/ferrous recalculation during the iterations of the matrix corrections.

Cheers,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 24, 2019, 12:39:48 PM
Thus, I suspect that some (slight) divergence from ideality could similarly occur in the ferric/ferrous recalculation during the iterations of the matrix corrections.

Yes, indeed. Sometimes reality is not ideal!    ;)
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 24, 2019, 01:08:25 PM
Thus, I suspect that some (slight) divergence from ideality could similarly occur in the ferric/ferrous recalculation during the iterations of the matrix corrections.

Yes, indeed. Sometimes reality is not ideal!    ;)

Hi John,
Below is a graph of the C vs. Ca formula contents from multiple analyses of the Smithsonian calcite standard.

CO2 was added by stoichiometry (0.33333 C for every 1 O) prior to the matrix corrections.

The amount of C is perfectly anti-correlated with the amount of Ca.

My interpretation: this is an unfortunate consequence of the analytical uncertainty in Ca coupling with the algorithm loops in Probe-for-EPMA.

If Ca is low, PfE determines C as high. If Ca is high, PfE determines C as low. Of course the ideal is 1:1, CaCO3.

I am pretty sure that the Smithsonian calcite is electrically neutral (charge-balanced!), so the behaviour in this graph is an artifact of the data reduction process.

Cheers,
Andrew

(https://probesoftware.com/smf/gallery/406_24_07_19_12_54_52.jpeg)
(https://probesoftware.com/smf/index.php?action-gallery;sa=view;pic=1404)
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 24, 2019, 04:04:34 PM
Hi Andrew,
Interesting.  Is the stoichiometry correlated in any way with the analytical total?

I ask because it seems to me this could also be an artifact of the normalization from weight percent to atoms.  When you get a chance please send me the MDB file and I'll look into it.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 25, 2019, 10:42:47 AM
Hi Andrew,
Interesting.  Is the stoichiometry correlated in any way with the analytical total?

I ask because it seems to me this could also be an artifact of the normalization from weight percent to atoms.

Hi John,

The data are from back in 2015; I have attached the raw oxide data (CaO and CO2) and the molar proportions that result as an Excel file. There are actually two calcite samples present (which I previously confused, sorry).

The plots of the molar proportions show negative linear correlations (essentially identical for the two calcites):

(https://probesoftware.com/smf/gallery/406_25_07_19_9_07_47.jpeg)

(https://probesoftware.com/smf/gallery/406_25_07_19_9_16_41.jpeg)

Of course, the molar amount of CO2 should(!) be equal to the molar amount of CaO.
That is, these graphs should simply show y = x.

If one recalculates the wt% CO2 based on the stoichiometry CaCO3, it has a negative linear correlation with the wt% CO2 initially reported by Probe-for-EPMA:

(https://probesoftware.com/smf/gallery/406_25_07_19_9_47_17.jpeg)

The weight percent CO2 reported by Probe-for-EPMA (after the iterated matrix corrections) is not in stoichiometric proportion to the CaO content for these calcite analyses.

In answer to your question about correlation with the analytical total, for the two calcites, the initial data reported by Probe-for-EPMA show a negative linear correlation between wt% CO2 and analytical total.

Whereas, when CO2 is calculated by stoichiometry to the CaO content, the wt% CO2 and the subsequent revised totals are positively correlated, in the ratio 2.2742. This is, of course, the ratio found in ideal calcite, CaCO3 (43.97 wt% CO2, 56.03 wt% CaO, total 100.00), where 100/43.97 = 2.2742.

(https://probesoftware.com/smf/gallery/406_25_07_19_10_25_13.jpeg)

I will send you this MDB file separately.

Best regards,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 25, 2019, 11:31:36 AM
In answer to your question about correlation with the analytical total, for the two calcites, the initial data reported by Probe-for-EPMA show a negative linear correlation between wt% CO2 and analytical total.

Whereas, when CO2 is calculated by stoichiometry to the CaO content, the wt% CO2 and the subsequent revised totals are positively correlated, in the ratio 2.2742. This is, of course, the ratio found in ideal calcite, CaCO3 (43.97 wt% CO2, 56.03 wt% CaO, total 100.00), where 100/43.97 = 2.2742.

(https://probesoftware.com/smf/gallery/406_25_07_19_10_25_13.jpeg)

I will send you this MDB file separately.

Best regards,
Andrew

Hi Andrew,
Yes, this is exactly what I suspected. For those analyses where the totals are not close to 100%, when the concentrations are normalized to 100% for the formula calculations, the CO2 stoichiometry gets "distorted" due to different atomic weights relative to atom proportions.

As evidence for this, please note that for those analyses in the above plot where the analytical totals are close to 100%, the stoichiometric CO2 values are almost exactly equal to the ideal concentration of 43.97 wt% CO2.

I'm really not sure what one can do about this except try to obtain better analytical totals!   :P

In principle I guess one could concoct a "correction" for those analyses which don't total close to 100%, but this seems to me to be a little problematic for several reasons.

The good news is that averaging these analyses together should average out this normalization effect.  Assuming the average analytical total is close to 100%!  :)

Thank-you for your help on this.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 25, 2019, 01:08:05 PM
Hi Andrew,
Yes, this is exactly what I suspected. For those analyses where the totals are not close to 100%, when the concentrations are normalized to 100% for the formula calculations, the CO2 stoichiometry gets "distorted" due to different atomic weights relative to atom proportions.

As evidence for this, please note that for those analyses in the above plot where the analytical totals are close to 100%, the stoichiometric CO2 values are almost exactly equal to the ideal concentration of 43.97 wt% CO2.

I'm really not sure what one can do about this except try to obtain better analytical totals!   :P

In principle I guess one could concoct a "correction" for those analyses which don't total close to 100%, but this seems to me to be a little problematic for several reasons.

The good news is that averaging these analyses together should average out this normalization effect.  Assuming the average analytical total is close to 100%!  :)

Thank-you for your help on this.

Hi John,
I am confused as to why (or how) oxygen is handled vs. how CO2 is handled in Probe-for-EPMA. Both are added in prior to the iterative matrix corrections (yes?). But the behaviour of a simple oxide compound seems different than that of a simple carbonate.

For example, I just measured Mg in periclase (20 points). The results are given as elements in weight percent, with oxygen calculated by stoichiometry in Probe-for-EPMA. The totals are between 99.6 and 100.6 wt%.

A graph of the oxygen wt% vs. analytical total follows the ideal ratio of 2.5191:

(https://probesoftware.com/smf/gallery/406_25_07_19_12_54_18.jpeg)

Probe-for-EPMA can figure out the exact stoichiometric amount of oxygen in MgO for a series of points with differing amounts of Mg (and therefore differing analytical totals).

Why are the results for the calculation of CO2 in CaCO3 any different?
Or how is it that the CO2 is handled that causes the results to differ from stoichiometry?

Thanks,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 25, 2019, 01:25:46 PM
Hi Andrew,
It's a good question. I'm not quite sure myself but as I said, I think it's because of the normalization to atoms for the CO2 calculation. My code is based on Armstrong's code and it's all on Github so you can check it out yourself.

https://github.com/openmicroanalysis/calczaf

You'll want to look at procedure ZAFSMP in code module ZAF.bas. The calculation for an element in relative atoms to stoichiometric oxygen is calculated in two places, here is the first approximation calculation:

Code: [Select]
`' Add in elements calculated relative to stoichiometric element (in0%)For i% = 1 To zaf.in1%If zaf.il%(i%) = 15 Thenzaf.krat!(i%) = (zaf.krat!(zaf.in0%) / zaf.atwts!(zaf.in0%)) * sample(1).StoichiometryRatio! * zaf.atwts!(i%)zaf.krat!(zaf.in0%) = zaf.krat!(zaf.in0%) + zaf.krat!(i%) * zaf.p1!(i%)zaf.ksum! = zaf.ksum! + zaf.krat!(i%) + zaf.krat!(i%) * zaf.p1!(i%)End IfNext i%End If`
The relative element calculation code inside the iteration loop is:

Code: [Select]
`' Calculate element relative to stoichiometric oxygen based on previous iteration calculation of oxygenIf zaf.il%(zaf.in0%) = 0 Then    ' if calculating oxygen by stoichiometryFor i% = 1 To zaf.in1%If zaf.il%(i%) = 15 Thenr1!(i%) = (r1!(zaf.in0%) / zaf.atwts!(zaf.in0%)) * sample(1).StoichiometryRatio! * zaf.atwts!(i%)zaf.ksum! = zaf.ksum! + r1!(i%)zaf.krat!(i%) = r1!(i%)End IfNext i%`
The integer "15" is the flag for an element calculated by stocihiometry to stoichiometric oxygen.

krat is the k-ratio
ksum is the k-ratio sum

If you see anything you think we should modify please let me know and send me a test file to try it.  Maybe we'll figure this out together!
john
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 25, 2019, 01:56:32 PM
Andrew,
But really I don't think the relative element calculation is the real problem.  I suspect that the real problem comes at the end of the iteration loop when it de-normalizes everything to get back to the actual analytical total.

This code is in the same procedure and is after the iteration loop completes to the specified precision:

Code: [Select]
`' Un-Normalize3400:For i% = 1 To zaf.in0%zaf.conc!(i%) = zaf.conc!(i%) * zaf.ksum!Next i%`
What I think is happening is that because the matrix physics and unanalyzed element calculations are all performed in concentration units and during the iteration everything is normalized to total 1.0, when the loop exits, the program takes these concentrations and de-normalizes them for the actual analytical total.

But because the atomic proportion calculations are based on the number of atoms, a divergence from the previously calculated stoichiometry occurs, depending on the difference to a 100% analytical total. Because concentrations scale differently than concentrations.

Does this make any sense to you?

By the way, if you turn on DebugMode you will get a lot more output of the intermediate calculations, maybe more than you want!  So maybe use the CalcZAF output menu in the PFE Analyze! window by right clicking the sample, and export a sample to CalcZAF format and perform the Debug calculations there...
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Paul Carpenter on July 25, 2019, 02:30:17 PM
I suggest that beam sensitivity is a contributing factor here. For the analysis of calcite, many exhibit differing beam sensitive behavior. During beam damage, CO2 is released and the residual beam volume becomes progressively an oxide residue. Ultimately the analysis would be of Ca oxide after complete CO2 loss.

The calculation of CO2 by stoichiometry is made by associating a carbon with the oxygen calculated from the measured cations in the sample, Ca, Mg, Fe, etc. So if a differential amount of CO2 is lost, then the cation concentration increases, and the calculated CO2 amount also increases. This results in a high total as there is too much CO2 calculated because the analytical volume is a more cation-rich composition.

So when doing conventional analysis, a low total indicates beam damage. When calculating CO2 by stoichiometry a high total indicates the same.

There is also the possibility of organic material in biogenically produced calcite or aragonite. I have analyzed a number of these materials and they exhibit significant beam sensitivity. But the point here is that there are organic materials that could also be in the carbonate. Not knowing what the specific material is, it is also possible that there are small inclusions of quartz or sulfate.

This may not be the whole story here, but that is my take.

Paul

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 25, 2019, 04:54:44 PM
Andrew,
Do you have a nice simple example of this formula normalization issue, but not a beam sensitive sample?  In an MDB file?

Paul is correct that sample sensitivity to the beam can be an issue, especially with carbonates, but my intuition is that this (anti)-correlation with the analytical totals is essentially a normalization issue of some kind.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 25, 2019, 05:14:31 PM
I suggest that beam sensitivity is a contributing factor here. For the analysis of calcite, many exhibit differing beam sensitive behavior. During beam damage, CO2 is released and the residual beam volume becomes progressively an oxide residue. Ultimately the analysis would be of Ca oxide after complete CO2 loss.

The calculation of CO2 by stoichiometry is made by associating a carbon with the oxygen calculated from the measured cations in the sample, Ca, Mg, Fe, etc. So if a differential amount of CO2 is lost, then the cation concentration increases, and the calculated CO2 amount also increases. This results in a high total as there is too much CO2 calculated because the analytical volume is a more cation-rich composition.

So when doing conventional analysis, a low total indicates beam damage. When calculating CO2 by stoichiometry a high total indicates the same.

There is also the possibility of organic material in biogenically produced calcite or aragonite. I have analyzed a number of these materials and they exhibit significant beam sensitivity. But the point here is that there are organic materials that could also be in the carbonate. Not knowing what the specific material is, it is also possible that there are small inclusions of quartz or sulfate.

This may not be the whole story here, but that is my take.

Paul

Hi Paul,

I just examined the Smithsonian siderite reference material, and ran 10 points with a 10-micron defocussed beam at 15 kV and 10 nA, with a count time of 30 s on peak, and 6 time-dependent-intensity (TDI) intervals for the Fe measurement.

The behaviour of Fe as a function of time is shown below:

(https://probesoftware.com/smf/gallery/406_25_07_19_4_52_29.jpeg)

As the Fe signal does not vary significantly with time, I turned off the TDI correction.
(I do not consider this siderite to be beam sensitive under the analytical conditions used here.)

The initial analytical totals range from 99.7 to 100.3 wt%.

However, the molar proportions of CO2 derived from the wt% CO2 reported by Probe-for-EPMA are negatively correlated with the molar proportions of the sum of FeO + MnO:

(https://probesoftware.com/smf/gallery/406_25_07_19_4_54_05.jpeg)

As I cannot attribute this behaviour to the sample, I concur with John that this is probably a result of how the CO2 is handled during the matrix corrections.

I will have to do some work to understand the Basic code provided (I am not a programmer).

But, I suspect that, although the initial amount of CO2 provided at the start of the matrix corrections may be in the correct stoichiometric ratio to the Fe+Mn of this siderite, by the time the iterations converge, this stoichiometric relationship has been altered. As John suggests, this may have to do with exactly how the algorithm proceeds (normalization to help with convergence?).

Best regards,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 26, 2019, 07:01:44 AM
Andrew,
Do you have a nice simple example of this formula normalization issue, but not a beam sensitive sample?  In an MDB file?

Paul is correct that sample sensitivity to the beam can be an issue, especially with carbonates, but my intuition is that this (anti)-correlation with the analytical totals is essentially a normalization issue of some kind.

Hi John,
Here is the MDB file for 4 lines of 10-point analyses on Smithsonian siderite.

The material does not exhibit beam damage (no significant change of intensity of Fe with time) under the conditions used.

Also attached is the formatted Excel file of the results.
As before, the CO2 wt% results reported by Probe-for-EPMA are close to, but systematically different from, the ideal stoichiometry.

Best regards,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 26, 2019, 10:54:22 AM
Hi Andrew,
Thanks. This will be useful.

Here's another approach in my KISS (keep it simple stupid) philosophy: run Probe for EPMA in simulation mode! Then there's no instrumental or sample issues!

You might already know that you can run PFE in "demo" or "simulation" mode. In PFE's simulation mode one can peak elements, acquire wavescans, acquire standards and if you specify an unknown name that is already a standard in your simulation run, it will utilize the physics for that standard composition as the unknown.

See the attached simulation run below where all I ran was Ca using a pure CaCO3 standard.  I then added C as a specified (unanalyzed) element, and specified 0.3333 atoms of carbon for each atom of stoichiometric oxygen.

So here is the CaCO3 standard analyzed as an unknown:

St  136 Set   2 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O
TYPE:     ANAL    STOI    CALC
BGDS:      LIN
TIME:    10.00     ---     ---
BEAM:    30.01     ---     ---

ELEM:       Ca       C       O   SUM
6  39.888  12.010  47.920  99.817
7  39.875  12.011  47.917  99.803
8  40.341  11.970  47.994 100.305
9  40.025  11.997  47.942  99.964

AVER:   40.032  11.997  47.943  99.972
SDEV:     .216    .019    .036    .233
SERR:     .108    .009    .018
%RSD:      .54     .16     .07

PUBL:   40.044  12.000  47.956 100.000
%VAR:   (-.03)    -.03    -.03
DIFF:   (-.01)   -.003   -.013
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.04     ---     ---

UNKF:    .3789     ---     ---
UNCT:   128.00     ---     ---
UNBG:      .17     ---     ---

ZCOR:   1.0567     ---     ---
KRAW:    .9997     ---     ---
PKBG:   756.80     ---     ---

St  136 Set   2 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
6   1.000   1.005   3.009   5.014
7   1.000   1.005   3.010   5.015
8   1.000    .990   2.980   4.970
9   1.000   1.000   3.001   5.001

AVER:    1.000   1.000   3.000   5.000    <---- sanity check!
SDEV:     .000    .007    .014    .021
SERR:     .000    .003    .007
%RSD:      .00     .70     .46

Note that the standard intensity varies because we add noise to the simulation, but the average is as expected.  Within the precision of the noise.  Now here is an analysis of an unknown which was named CaCO3, so the standard composition is automatically utilized for calculating the intensities from the composition (running the matrix correction backwards!):

Un    3 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O
TYPE:     ANAL    STOI    CALC
BGDS:      LIN
TIME:    10.00     ---     ---
BEAM:    30.02     ---     ---

ELEM:       Ca       C       O   SUM
3  39.880  12.010  47.918  99.808
4  39.845  12.013  47.912  99.771
5  39.689  12.027  47.887  99.604

AVER:   39.805  12.017  47.906  99.728       <---- note slightly low total
SDEV:     .101    .009    .017    .109
SERR:     .059    .005    .010
%RSD:      .25     .07     .03
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.28     ---     ---

UNKF:    .3767     ---     ---
UNCT:   127.50     ---     ---
UNBG:      .15     ---     ---

ZCOR:   1.0568     ---     ---
KRAW:    .9939     ---     ---
PKBG:   866.07     ---     ---

Un    3 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
3   1.000   1.005   3.010   5.015
4   1.000   1.006   3.012   5.018
5   1.000   1.011   3.022   5.034

AVER:    1.000   1.007   3.015   5.022      <---- note slightly high C and O formula atoms
SDEV:     .000    .003    .007    .010
SERR:     .000    .002    .004
%RSD:      .00     .33     .22

Note that the totals are a little low (random noise) *and* that the C and O are a little high relative to Ca.  Now another unknown, but this time with slightly high totals:

Un    4 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O
TYPE:     ANAL    STOI    CALC
BGDS:      LIN
TIME:    10.00     ---     ---
BEAM:    30.00     ---     ---

ELEM:       Ca       C       O   SUM
10  40.197  11.982  47.970 100.150
11  40.088  11.992  47.952 100.032

AVER:   40.142  11.987  47.961 100.091     <---- note slightly high totals
SDEV:     .077    .007    .013    .083
SERR:     .055    .005    .009
%RSD:      .19     .06     .03
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.00     ---     ---

UNKF:    .3799     ---     ---
UNCT:   128.33     ---     ---
UNBG:      .16     ---     ---

ZCOR:   1.0566     ---     ---
KRAW:   1.0025     ---     ---
PKBG:   812.48     ---     ---

Un    4 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
10   1.000    .995   2.989   4.984
11   1.000    .998   2.996   4.995

AVER:    1.000    .996   2.993   4.989      <---- note slightly low C and O atoms
SDEV:     .000    .002    .005    .007
SERR:     .000    .002    .004
%RSD:      .00     .25     .17

Now note that the C and O are slightly low when the totals are slightly high.

This is what I've been trying to say all along.  That is, I think that the atomic proportionality gets slightly distorted when the normalized composition in the matrix iteration loop is de-normalized after the iteration loop is exited. This is how Armstrong coded this many years ago in his CITZAF/TRYZAF code.

I think we can use this test run to see the effect most clearly since it is such a simple example.  Maybe Paul Carpenter also has some ideas on this code as he worked on it with John Armstrong many years ago.

Edit by John: I just realized the output of the CaCO3 standard as an "unknown" had the C and O specified by concentration.  That is now fixed, so that C is now specified as 0.3333 atoms for each atom of stoichiometric oxygen as previously stated. The attached MDB file below has been updated to reflect this.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 27, 2019, 09:29:02 AM
Previously I wondered if the de-normalization of the concentrations to the analytical total after the matrix iteration loop is exited, was affecting the conversion to atoms. But I just checked, and no, that's not the issue:

Un    4 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O
TYPE:     ANAL    STOI    CALC
BGDS:      LIN
TIME:    10.00     ---     ---
BEAM:    30.00     ---     ---

ELEM:       Ca       C       O   SUM
10  40.137  11.964  47.899 100.000
11  40.075  11.988  47.937 100.000

AVER:   40.106  11.976  47.918 100.000
SDEV:     .044    .017    .027    .000
SERR:     .031    .012    .019
%RSD:      .11     .14     .06
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.00     ---     ---

UNKF:    .3799     ---     ---
UNCT:   128.33     ---     ---
UNBG:      .16     ---     ---

ZCOR:   1.0566     ---     ---
KRAW:   1.0025     ---     ---
PKBG:   812.48     ---     ---

Un    4 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
10   1.000    .995   2.989   4.984
11   1.000    .998   2.996   4.995

AVER:    1.000    .996   2.993   4.989
SDEV:     .000    .002    .005    .007
SERR:     .000    .002    .004
%RSD:      .00     .25     .17

So, with the de-normalization code commented out, the analytical totals are now 100.000, but the atoms for C and O are still low. In fact they are exactly the same numbers as before when they were de-normalized to the actual analytical totals.

I'm beginning to wonder if non-stoichiometric results are unavoidable when one obtains the "wrong" Ca concentration. Afterall, if one measures too high or too low a Ca concentration in a carbonate (for whatever reason!), why would one expect the atom proportions to be calculated correctly?
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 27, 2019, 11:55:34 AM
Hi Andrew,
I again return to this plot of analytical totals versus Ca concentration you posted earlier.  With some additional annotations.

(https://probesoftware.com/smf/gallery/1_27_07_19_3_14_34.png)

I'm probably missing something, so please correct me if you see something, but it seems to me that when making a measurement of CaCO3, why would one expect to obtain the exactly correct stoichiometry for CO2, when the Ca measurement is not exactly correct?

We already know the code calculates the correct CO2 when the correct Ca is provided (relative to the standard of course). So if the measured Ca concentration is different than the expected Ca, the matrix correction will be different and the concentration of stoichiometric carbon, based on the calculated oxygen, which is itself based on the measured Ca content, will also be different.

Am I making any sense?

In fact I think the answer is laying right in front of our noses. In Reply#86 look at the ZCOR values for Ca Ka for the standard CaCO3, the slightly high total CaCO3 and the slightly low total CaCO3. I summarize them here:

ZCOR:   1.0567     ---     ---     <--- close to 100% total
ZCOR:   1.0568     ---     ---     <--- slightly high total
ZCOR:   1.0566     ---     ---     <--- slightly low total

In short, different Ca concentrations are calculated for each different case, meaning that different amounts of stoichiometric oxygen are calculated for each composition, and hence different amounts of carbon are calculated for each composition. Only when the correct Ca is measured, does the correct stoichiometric oxygen get calculated, and subsequently only then does the correct carbon by stoichiometry to oxygen get calculated.

What do you think?
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 29, 2019, 10:55:55 AM
Hi Andrew,
I again return to this plot of analytical totals versus Ca concentration you posted earlier.  With some additional annotations.

(https://probesoftware.com/smf/gallery/1_27_07_19_3_14_34.png)

I'm probably missing something, so please correct me if you see something, but it seems to me that when making a measurement of CaCO3, why would one expect to obtain the exactly correct stoichiometry for CO2, when the Ca measurement is not exactly correct?

We already know the code calculates the correct CO2 when the correct Ca is provided (relative to the standard of course). So if the measured Ca concentration is different than the expected Ca, the matrix correction will be different and the concentration of stoichiometric carbon, based on the calculated oxygen, which is itself based on the measured Ca content, will also be different.

Am I making any sense?

In fact I think the answer is laying right in front of our noses. In Reply#86 look at the ZCOR values for Ca Ka for the standard CaCO3, the slightly high total CaCO3 and the slightly low total CaCO3. I summarize them here:

ZCOR:   1.0567     ---     ---     <--- close to 100% total
ZCOR:   1.0568     ---     ---     <--- slightly high total
ZCOR:   1.0566     ---     ---     <--- slightly low total

In short, different Ca concentrations are calculated for each different case, meaning that different amounts of stoichiometric oxygen are calculated for each composition, and hence different amounts of carbon are calculated for each composition. Only when the correct Ca is measured, does the correct stoichiometric oxygen get calculated, and subsequently only then does the correct carbon by stoichiometry to oxygen get calculated.

What do you think?

Hi John,
Let us look at how Probe-for-EPMA handles a binary oxide, MgO, in comparison to a simple carbonate, siderite (Fe,Mn)CO3.

In the case of MgO, I measured the Mg K-alpha intensity for 20 points, and for the usual reasons, we have uncertainty in the results. The Mg concentrations range from 60.05 to 60.65 wt%, and the analytical totals from about 99.6 to 100.6 wt%.

However, regardless of this analytical uncertainty, for every point, Probe-for-EPMA reports oxygen-by-stoichiometry in the ideal ratio of 1:1 (with rounding in the fifth decimal place):

(https://probesoftware.com/smf/gallery/406_29_07_19_9_31_50.jpeg)

In the case of siderite, I measured the Fe K-alpha and Mn K-alpha intensities for 40 points, and for the usual reasons, we have uncertainty in the results (but beam damage was not an issue). The (Fe+Mn) concentrations range from 47.9 to 48.6 wt%, and the analytical totals from Probe-for-EPMA are reported between 99.7 and 100.4 wt%.

However, Probe-for-EPMA reports CO2-by-stoichiometry as a function of concentration!

(https://probesoftware.com/smf/gallery/406_29_07_19_10_41_00.jpeg)

Only when the concentration is extremely close to 100.00 wt% is the correct, stoichiometric, amount of CO2 reported.

So, in the case of MgO, regardless of analytical uncertainty, the stoichiometric ratio of 1:1 Mg:O is maintained.

But in the case of a carbonate, such as calcite CaCO3 or siderite (Fe,Mn)CO3, stoichiometry is not maintained.
Rather, the proportion of CO2 reported by Probe-for-EPMA is a function of concentration.

"In short, different Ca concentrations are calculated for each different case, meaning that different amounts of stoichiometric oxygen are calculated for each composition, and hence different amounts of carbon are calculated for each composition. Only when the correct Ca is measured, does the correct stoichiometric oxygen get calculated, and subsequently only then does the correct carbon by stoichiometry to oxygen get calculated."

Yes, in Probe-for-EPMA, different amounts of Ca result in different amounts of C and O being calculated.
Unfortunately, they are not calculated in the stoichiometric ratio for CaCO3 where Ca : C : O should be 1:1:3.

The question is why do we see this behaviour?
We need to look into the matrix correction code more closely.

Best regards,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 29, 2019, 11:50:17 AM
Hi Andrew,
I do appreciate what you are saying, but am not seeing a problem with the code.

Here is the calculation for stoichiometric oxygen:

Code: [Select]
`' Calculate amount of stoichiometric oxygen and add to totalr1!(zaf.in0%) = 0#For i% = 1 To zaf.in1%r1!(zaf.in0%) = r1!(zaf.in0%) + r1!(i%) * zaf.p1!(i%)Next i%zaf.ksum! = zaf.ksum! + r1!(zaf.in0%)`
Immediately prior to this in the ZAFSmp code is the calculation for an element relative to stoichiometric oxygen:

Code: [Select]
`For i% = 1 To zaf.in1%If zaf.il%(i%) = 15 Thenr1!(i%) = (r1!(zaf.in0%) / zaf.atwts!(zaf.in0%)) * sample(1).StoichiometryRatio! * zaf.atwts!(i%)zaf.ksum! = zaf.ksum! + r1!(i%)zaf.krat!(i%) = r1!(i%)End IfNext i%`
My point is that if the total is low, then an incorrect amount of Ca is calculated (relative to the standard), hence an incorrect amount of stoichiometric oxygen is calculated, and then there is no reason to expect the correct amount of carbon would be calculated.  Again *relative to the standard*.  That is the sample Ca concentration will be distorted relative to the standard Ca concentration by the apparent difference in the matrix corrections for the estimated Ca concentrations relative to the standard containing Ca.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 29, 2019, 12:18:56 PM
Hi Andrew,
I do appreciate what you are saying, but am not seeing a problem with the code.

Here is the calculation for stoichiometric oxygen:

Code: [Select]
`' Calculate amount of stoichiometric oxygen and add to totalr1!(zaf.in0%) = 0#For i% = 1 To zaf.in1%r1!(zaf.in0%) = r1!(zaf.in0%) + r1!(i%) * zaf.p1!(i%)Next i%zaf.ksum! = zaf.ksum! + r1!(zaf.in0%)`
Immediately prior to this in the ZAFSmp code is the calculation for an element relative to stoichiometric oxygen:

Code: [Select]
`For i% = 1 To zaf.in1%If zaf.il%(i%) = 15 Thenr1!(i%) = (r1!(zaf.in0%) / zaf.atwts!(zaf.in0%)) * sample(1).StoichiometryRatio! * zaf.atwts!(i%)zaf.ksum! = zaf.ksum! + r1!(i%)zaf.krat!(i%) = r1!(i%)End IfNext i%`
My point is that if the total is low, then an incorrect amount of Ca is calculated (relative to the standard), hence an incorrect amount of stoichiometric oxygen is calculated, and then there is no reason to expect the correct amount of carbon would be calculated.  Again *relative to the standard*.  That is the sample Ca concentration will be distorted relative to the standard Ca concentration by the apparent difference in the matrix corrections for the estimated Ca concentrations relative to the standard containing Ca[/size].

Hi John,
The problem arises in the atomic (molar) ratio of the elements to each other.
In MgO, the ideal 1:1 ratio is maintained throughout the iterative matrix corrections.

However, in the carbonates, the ratios of C and O to the cation(s) diverge from ideal, as a function of concentration.

Perhaps the key is in the word "iterative".
Although the matrix corrections might start with the ideal ratios of C to O to cations, they do not end that way.
(Except when the analysis is fortuitously close to 100%).

The fact that the divergence is linear as a function of composition should be a clue to what is going on.

Cheers,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 29, 2019, 12:48:41 PM
Hi Andrew,
I see that and I suspect it's because we have essentially a non physical situation when the total is not close to 100%.

I increased the iteration tolerance to 100 times more precision but I still get the same results. Here is the calculation of a line with high totals with some intermediate results output to the log window:

ZAFSmp: Iteration #1
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .0000   .0000
Conc*100 71.4693 .000000 .000000 28.5307  55.360

ZAFSmp: Iteration #2
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .0714   .0000
Conc*100 48.3182 8.84037 .000000 42.8414  80.749

ZAFSmp: Iteration #3
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .1072   .0000
Conc*100 41.9457 11.2737 .000000 46.7806  95.080

ZAFSmp: Iteration #4
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .1170   .0000
Conc*100 40.5185 11.8187 .000000 47.6628  99.035

ZAFSmp: Iteration #5
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .1193   .0000
Conc*100 40.2145 11.9348 .000000 47.8507  99.921

ZAFSmp: Iteration #6
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .1197   .0000
Conc*100 40.1504 11.9593 .000000 47.8903 100.110

ZAFSmp: Iteration #7
Norm Wt%   ca ka c  (15) o  (14)  o  (0)UnNorm Sum
UNKRAT:    .3804   .1198   .0000
Conc*100 40.1369 11.9644 .000000 47.8986 100.150

Un    4 CaCO3
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 30.0  Beam Size =    0
(Magnification (analytical) =   4000),        Beam Mode = Analog  Spot
(Magnification (default) =      200, Magnification (imaging) =    100)
Image Shift (X,Y):                                       -2.00,   3.00

Formula Based on 1.00 Atoms of Ca        Oxygen Calc. by Stoichiometry
Number of Data Lines:   2             Number of 'Good' Data Lines:   1
First/Last Date-Time: 07/26/2019 10:30:56 AM to 07/26/2019 10:31:33 AM

Average Total Oxygen:       47.970     Average Total Weight%:  100.150
Average Calculated Oxygen:  47.970     Average Atomic Number:   12.577
Average Excess Oxygen:        .000     Average Atomic Weight:   20.035
Average ZAF Iteration:        7.00     Average Quant Iterate:     2.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .3333 Atoms Relative To 1.0 Atom of Oxygen

Un    4 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O
TYPE:     ANAL    STOI    CALC
BGDS:      LIN
TIME:    10.00     ---     ---
BEAM:    30.00     ---     ---

ELEM:       Ca       C       O   SUM
10  40.197  11.982  47.970 100.150

AVER:   40.197  11.982  47.970 100.150
SDEV:     .000    .000    .000    .000
SERR:     .000    .000    .000
%RSD:      .00     .00     .00
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.00     ---     ---

UNKF:    .3804     ---     ---
UNCT:   128.51     ---     ---
UNBG:      .16     ---     ---

ZCOR:   1.0566     ---     ---
KRAW:   1.0039     ---     ---
PKBG:   822.90     ---     ---

Un    4 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
10   1.000    .995   2.989   4.984

AVER:    1.000    .995   2.989   4.984
SDEV:     .000    .000    .000    .000
SERR:     .000    .000    .000
%RSD:      .00     .00     .00

If you have any specific suggestions I'm all ears.  But I don't think one can get a perfect result with imperfect data.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 29, 2019, 01:32:23 PM
Hi Andrew,
I see that and I suspect it's because we have essentially a non physical situation when the total is not close to 100%.

I increased the iteration tolerance to 100 times more precision but I still get the same results.
....
If you have any specific suggestions I'm all ears.  But I don't think one can get a perfect result with imperfect data.

Hi John,
As Probe-for-EPMA treats these situations differently (simple oxygen by stoichiometry vs. additional element by stoichiometry to oxygen), and yields what are actually non-stoichiometric values in the latter case, I have a couple of non-optimal suggestions.

1) For the carbonates discussed, proceed as above with 0.333333 C for every 1 O, in order to get the best available matrix correction.
Then, after the data are output to Excel, discard the CO2 value reported by Probe-for-EPMA.
Recalculate a new atomic value of CO2 based on ideal stoichiometry to the measured elements; recalculate the wt% CO2; recalculate the analytical total.
This is, in fact, my present procedure for carbonates.

2) Change the code in Probe-for-EPMA to do the same thing after the matrix corrections are completed.
That is, discard the CO2 that resulted from the matrix corrections, and recalculate a new value based on the input stoichiometric ratio and the final values of the measured elements.
However, this may be viewed as not straightforward, and possibly even confusing.

Until we understand why the results for simple oxides do not deviate from stoichiometry, whereas those of the carbonates deviate in a linear fashion, it is hard to justify any other recommendations.

All the best,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 29, 2019, 01:44:25 PM
Hi Andrew,
I'll continue to think about this with Paul Carpenter, but I agree these are non-optimal solutions, for the simple reason that they are non-physical.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 29, 2019, 02:44:59 PM
Hi Andrew,
I'll continue to think about this with Paul Carpenter, but I agree these are non-optimal solutions, for the simple reason that they are non-physical.

Hi John,
My preference is to report stoichiometric proportions for calculated elements.
Calcite should be CaCO3, not Ca C0.995 O2.989.
The latter formula is an artifact of imperfect data, and therefore imperfect matrix corrections.

We know that there is a problem in the matrix corrections for elements calculated by stoichiometry to oxygen.

If we could treat "CO3" in the same way that we treat "O" in the matrix corrections, we would not have this divergence.
However, C and O are different, so this is not an option (differing backscatter, absorption, fluorescence).

This topic has implications for all of the options in Probe-for-EPMA with respect to elements by difference, elements by stoichiometry to another element, and elements by stoichiometry to oxygen.

That said, I must emphasize that these very powerful options are still the best way to get superior quality data for such compounds.

Cheers,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 29, 2019, 03:10:37 PM
We know that there is a problem in the matrix corrections for elements calculated by stoichiometry to oxygen.

Hi Andrew,
But only when an unknown sample is imperfectly measured with respect to an "assumed" perfect standard!

If both your standard and your unknowns had low totals (or both had high totals), you would get an "ideal" stoichiometry for your unknown.  That's physics for you.   :)

And let's please keep in mind that this non-stoichiometry effect is generally smaller than our nominal 2% accuracy in EPMA. And also that if it's random counting statistics causing this non-stoichiometry, then the analytical averages will be stoichiometric, if the average analytical total is close to 100% (or whatever our Ca standard is supposed to be).
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 29, 2019, 03:35:33 PM
We know that there is a problem in the matrix corrections for elements calculated by stoichiometry to oxygen.

Hi Andrew,
But only when an unknown sample is imperfectly measured with respect to an "assumed" perfect standard!

If both your standard and your unknowns had low totals (or both had high totals), you would get an "ideal" stoichiometry for your unknown.  That's physics for you.

And let's please keep in mind that this non-stoichiometry effect is generally smaller than our nominal 2% accuracy in EPMA. And also that if it's random counting statistics causing this non-stoichiometry, then the analytical averages will be stoichiometric, if the average is close to 100%.

Hi John,
There are several reasons why this issue is problematic.

1) It occurs in analyses where an element is specified by stoichiometric ratio to oxygen, but NOT in simple oxides for which oxygen is the only calculated element.

2) The lack of stoichiometry shows a perfect linear correlation with concentrations and thus with analytical totals, whether high or low.

3) The lack of stoichiometry could conceivably mask other, real, problems with the analysis (such as the extent of beam damage). Because of the negative correlation of reported CO2 vs. CaO, the range of analytical totals is artificially minimized by this problem in analyses of calcite.

4) Most seriously, the inattentive user might actually try to publish Ca C0.995 O2.989 as a result for calcite - it is simply not correct.

All measurements are imperfect to some extent, and whether the standard is ideal or not, stoichiometric relationships should hold, unless invalidated by real data (e.g., end-member wustite).

This issue is a good reminder to users of the data to carefully check their results.

All the best,
Andrew

Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 29, 2019, 03:44:53 PM
Hi Andrew,
I don't disagree.  I'll work on this with Paul Carpenter/John Armstrong and get back to you. In the meantime feel free to look at the code yourself and see if you can see what might be going on.  There's a reason the physics code is hosted on GitHub.  This code is a community effort after all.  :)
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on July 30, 2019, 11:28:09 AM
Hi Andrew,
I don't disagree.  I'll work on this with Paul Carpenter/John Armstrong and get back to you. In the meantime feel free to look at the code yourself and see if you can see what might be going on.  There's a reason the physics code is hosted on GitHub.  This code is a community effort after all.  :)

Good news.

Andrew, Paul and I are in contact with John Armstrong and he explains the problem as being a well known (at the time!) issue, which occurs whenever an *unanalyzed* element is being calculated relative to calculated (unanalyzed) oxygen. He put it this way to us: oxygen calculated by stoichiometry is no problem when all other elements are measured. But when another unanalyzed element is introduced and this element is also dependent on the (also) unanalyzed oxygen, the solution is not obvious.

The basic issue being, what oxygen concentration should be utilized for the element relative to total oxygen? The oxygen value used in the last iteration for calculating correction factors is one possibility, and there's also the oxygen value adjusted for the other unanalyzed element...

There were several different methods proposed by various researchers at the time, but no one solution gave a perfect result.  In fact all the proposed methods gave good results when the analytical totals were close to 100%, but they also gave increasingly different results as the analytical totals (including the unanalyzed elements) diverged from 100%.

John Armstrong said he would review the code to remember which method he chose at the time, but whatever method was chosen, there may not be a perfect solution to this issue.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: AndrewLocock on July 30, 2019, 12:43:58 PM
Hi John,
Thanks very much for following this up.

I appreciate your efforts, and look forward to any progress, although the issue may prove intractable.
I imagine that some sort of caveat would then be added to Probe for EPMA to ensure that the users are aware of the issue.

I should add, naturally, that all matrix-reduction software that can handle "elements specified by stoichiometry" will be subject to this issue.
One of the many things that I appreciate about Probe for EPMA is the willingness to examine issues in detail.
And of course the many powerful data reduction options.

All the best,
Andrew
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 31, 2019, 10:10:18 AM
During this interesting (and subtle) discussion on carbon stoichiometry to unanalyzed oxygen, I think it is important to not overlook some other benefits to including elements that are not analyzed, into the matrix correction. That is after all, the main purpose of this topic (Specifying Unanalyzed Elements For a Proper Matrix Correction).

In the case of our ideal CaCO3 composition, what is the matrix effect of not including carbon in the matrix correction? Good question!  I'm glad I asked!   :)    Here is the same CaCO3 discussed previously but *without* specifying carbon relative to the calculated oxygen:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction

Un    2 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O   SUM
2  38.764    .000  15.475  54.239

AVER:   38.764    .000  15.475  54.239
SDEV:     .000    .000    .000    .000
SERR:     .000    .000    .000
%RSD:      .00     .00     .00
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.65     ---     ---

UNKF:    .3780     ---     ---
UNCT:   128.32     ---     ---
UNBG:      .18     ---     ---

ZCOR:   1.0255     ---     ---
KRAW:    .9975     ---     ---
PKBG:   704.69     ---     ---

Un    2 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
2   1.000    .000   1.000   2.000

AVER:    1.000    .000   1.000   2.000
SDEV:     .000    .000    .000    .000
SERR:     .000    .000    .000
%RSD:      .00     .00     .00

Well clearly the analytical total is crap, and of course the atomic ratios are completely bonkers, but note the concentration of Ca. We are getting around 38.7 wt% Ca, when the ideal Ca content should be around 40 wt%. That a pretty large error, and is completely due to the fact that when carbon is not included in the matrix correction, the correction for Ca Ka is not going to be accurate.

Now let's turn the carbon relative to calculated oxygen calculation back on:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Element C is Calculated  .3333 Atoms Relative To 1.0 Atom of Oxygen

Un    2 CaCO3, Results in Elemental Weight Percents

ELEM:       Ca       C       O   SUM
2  39.943  12.005  47.928  99.876

AVER:   39.943  12.005  47.928  99.876
SDEV:     .000    .000    .000    .000
SERR:     .000    .000    .000
%RSD:      .00     .00     .00
STDS:      136     ---     ---

STKF:    .3790     ---     ---
STCT:   128.65     ---     ---

UNKF:    .3780     ---     ---
UNCT:   128.32     ---     ---
UNBG:      .18     ---     ---

ZCOR:   1.0567     ---     ---
KRAW:    .9975     ---     ---
PKBG:   704.69     ---     ---

Un    2 CaCO3, Results Based on 1 Atoms of ca

ELEM:       Ca       C       O   SUM
2   1.000   1.003   3.006   5.009

AVER:    1.000   1.003   3.006   5.009
SDEV:     .000    .000    .000    .000
SERR:     .000    .000    .000
%RSD:      .00     .00     .00

Now our analytical total is much better, and of course our stoichiometry pretty good as well, but even more importantly, our Ca wt% is now 39.94 wt%, very close to the ideal 40 wt%.

Again, this is exactly why we need to include these unanalyzed elements into our physics matrix corrections.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 31, 2019, 10:18:54 AM
And now for something (almost) completely different!  :D

This is a different situation involving (only) the calculation of stoichiometric (unanalyzed) oxygen in the matrix correction. In this example we have compositions in which one or more halogens replace some of the stoichiometric oxygen sites.  This can occur primarily chlor-apatites and fluor-phlogopites, though I'm sure there are cases with other minerals (and glasses) with similar halogen replacement situations (oxygen equivalence).

If you've been following the recent (quite long) discussion involving calculating carbon in carbonates as an unanalyzed element relative to calculated stoichiometric oxygen, you might have seen this code snippet:

Code: [Select]
`' Calculate element relative to stoichiometric oxygen based on previous iteration calculation of oxygenIf zaf.il%(zaf.in0%) = 0 Then    ' if calculating oxygen by stoichiometryFor i% = 1 To zaf.in1%If zaf.il%(i%) = 15 Thenr1!(i%) = (r1!(zaf.in0%) / zaf.atwts!(zaf.in0%)) * sample(1).StoichiometryRatio! * zaf.atwts!(i%)zaf.ksum! = zaf.ksum! + r1!(i%)zaf.krat!(i%) = r1!(i%)End IfNext i%' Calculate amount of stoichiometric oxygen and add to totalr1!(zaf.in0%) = 0#For i% = 1 To zaf.in1%r1!(zaf.in0%) = r1!(zaf.in0%) + r1!(i%) * zaf.p1!(i%)Next i%' Calculate equivalent oxygen from halogens and subtract from calculated oxygen if flaggedIf UseOxygenFromHalogensCorrectionFlag Then r1!(zaf.in0%) = r1!(zaf.in0%) - ConvertHalogensToOxygen(zaf.in1%, sample(1).Elsyms\$(), sample(1).DisableQuantFlag%(), r1!())' Add to sumzaf.ksum! = zaf.ksum! + r1!(zaf.in0%)End If`
Note the line of code to calculate the halogen effect on stoichiometric oxygen. This is where a correction for halogens (F, Cl, Br and I) replacing stoichiometric oxygen is made. The idea being that if one calculates stoichiometric oxygen as usual, the total will be too high because the halogen is replacing some of the stoichiometric oxygen.  So how much of an effect could this be on the matrix?  And why do we care?

Well the effect depends on the composition of the mineral and the particular emitting line in question. And we should care because sometimes the matrix effect of *subtracting* this replaced stoiciometric oxygen is large enough to significantly effect the results.

So here is an example involving chlor-apatite, where the halogen correction has *not* been applied:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Oxygen Equivalent from Halogens (F/Cl/Br/I), Not Subtracted in the Matrix Correction

Un    5 Cl-apatite as unk, Results in Elemental Weight Percents

ELEM:       Si       F      Cl      Mg      Ca       P      Al       K       O   SUM
429    .022   -.545   6.825    .035  38.442  17.751    .006    .000  38.323 100.858
430    .010   -.193   6.868    .028  38.363  17.816    .001    .003  38.354 101.251
431    .015    .173   6.766    .045  38.087  17.885   -.001   -.009  38.346 101.308
432    .026    .123   6.706    .032  38.319  17.901    .004   -.018  38.465 101.557
433    .010    .117   6.890    .022  38.150  17.715   -.003    .011  38.133 101.046

AVER:     .017   -.065   6.811    .032  38.272  17.814    .002   -.002  38.324 101.204
SDEV:     .007    .305    .075    .009    .149    .081    .004    .011    .120    .266
SERR:     .003    .136    .034    .004    .067    .036    .002    .005    .054
%RSD:    41.59 -468.63    1.11   26.47     .39     .46  216.37 -452.12     .31
STDS:      160     284     285      12     285     285     160     374     ---

STKF:    .1621   .0256   .0602   .4736   .3596   .1601   .0335   .1132     ---
STCT:   1746.9    73.2  2281.7 18768.4  8605.4  3444.2  5316.8  1646.9     ---

UNKF:    .0001  -.0001   .0602   .0002   .3575   .1596   .0000   .0000     ---
UNCT:      1.6     -.4  2281.6     8.3  8554.2  3433.5     1.9     -.4     ---
UNBG:      2.7     4.9    17.5    19.2    33.9     7.1    96.3    10.8     ---

ZCOR:   1.1443  5.1792  1.1305  1.5496  1.0706  1.1163  1.3347  1.0079     ---
KRAW:    .0009  -.0049  1.0000   .0004   .9940   .9969   .0004  -.0002     ---
PKBG:     1.60     .93  132.03    1.43  253.74  490.50    1.02     .98     ---
INT%:     ---- -102.12    ----    ----    ----    ----    ----    ----     ---

As you can see the totals are slightly high because the oxygen has been calculated based on the cations, without consideration of the chlorine oxygen equivalence. In fact for ideal chlor-apatite, the oxygen concentration should be around 36.8 wt%. Now here is the same sample, but with the halogen correction turned on:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Oxygen Equivalent from Halogens (F/Cl/Br/I), Subtracted in the Matrix Correction

Un    5 Cl-apatite as unk, Results in Elemental Weight Percents

ELEM:       Si       F      Cl      Mg      Ca       P      Al       K       O   SUM
429    .022   -.539   6.823    .035  38.429  17.731    .006    .000  36.979  99.486
430    .010   -.187   6.866    .028  38.349  17.794    .001    .003  36.849  99.713
431    .015    .177   6.764    .045  38.071  17.861   -.001   -.009  36.708  99.632
432    .026    .128   6.704    .032  38.304  17.877    .004   -.018  36.861  99.917
433    .010    .122   6.888    .022  38.134  17.691   -.003    .011  36.489  99.365

AVER:     .017   -.060   6.809    .032  38.257  17.791    .002   -.002  36.777  99.623
SDEV:     .007    .304    .075    .009    .150    .081    .004    .011    .188    .212
SERR:     .003    .136    .034    .004    .067    .036    .002    .005    .084
%RSD:    41.59 -509.17    1.11   26.47     .39     .45  216.35 -452.09     .51
STDS:      160     284     285      12     285     285     160     374     ---

STKF:    .1621   .0256   .0602   .4736   .3596   .1601   .0335   .1132     ---
STCT:   1746.9    73.2  2281.7 18768.4  8605.4  3444.2  5316.8  1646.9     ---

UNKF:    .0001  -.0001   .0602   .0002   .3575   .1596   .0000   .0000     ---
UNCT:      1.6     -.3  2281.6     8.3  8554.2  3433.5     1.9     -.4     ---
UNBG:      2.7     4.9    17.5    19.2    33.9     7.1    96.3    10.8     ---

ZCOR:   1.1424  5.1608  1.1302  1.5466  1.0701  1.1149  1.3325  1.0070     ---
KRAW:    .0009  -.0045  1.0000   .0004   .9940   .9969   .0004  -.0002     ---
PKBG:     1.60     .94  132.03    1.43  253.74  490.50    1.02     .98     ---
INT%:     ---- -101.99    ----    ----    ----    ----    ----    ----     ---

The calculated oxygen is now 36.77 wt%, which is much closer to the ideal 36.8 wt%. The concentrations of the other elements have also decreased slightly, due to the change in the matrix correction from there being less oxygen than before. And the total is somewhat better, but not a big change in any case.

Now let's next consider fluor-phlogopite...
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on July 31, 2019, 10:25:30 AM
Continuing our discussion, now what about fluor-apatite? We might expect a larger matrix effect for fluorine because it is a lower energy emission line, and also because it is quite heavily absorbed by oxygen in the matrix. So here is an analysis of a fluor-phlogopite *without* the halogen correction:

Un   10 fluor-phlogopite, Results in Elemental Weight Percents

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Oxygen Equivalent from Halogens (F/Cl/Br/I), Not Subtracted in the Matrix Correction

ELEM:       Si       F      Cl      Mg      Ca       P      Al       K       O   SUM
495  19.822   9.091    .008  17.459   -.002   -.006   6.612   9.393  41.872 104.250
496  19.990   9.254    .001  17.359    .001    .001   6.576   9.369  41.971 104.521
497  19.814   9.112    .000  17.298    .002    .000   6.604   9.420  41.764 104.014
498  20.136   9.783    .002  17.534    .005   -.004   6.645   9.384  42.312 105.797
499  20.246   9.633    .006  17.372    .006   -.007   6.600   9.305  42.272 105.432

AVER:   20.002   9.375    .003  17.404    .002   -.003   6.608   9.374  42.038 104.803
SDEV:     .191    .315    .003    .093    .003    .004    .025    .043    .243    .773
SERR:     .085    .141    .002    .041    .001    .002    .011    .019    .109
%RSD:      .95    3.36  100.14     .53  130.45 -112.21     .38     .46     .58
STDS:      160     284     285      12     285     285     160     374     ---

STKF:    .1621   .0256   .0602   .4736   .3596   .1601   .0335   .1132     ---
STCT:   1749.1    72.8  2270.1 18778.0  8626.5  3449.1  5319.3  1650.6     ---

UNKF:    .1501   .0260   .0000   .1230   .0000   .0000   .0446   .0827     ---
UNCT:   1619.3    73.8     1.1  4877.0      .5     -.5  7086.9  1205.7     ---
UNBG:      4.2     4.3    11.1    20.7    17.9     3.5    82.2     9.7     ---

ZCOR:   1.3328  3.6125  1.2142  1.4150  1.1176  1.4038  1.4819  1.1339     ---
KRAW:    .9258  1.0143   .0005   .2597   .0001  -.0001  1.3323   .7304     ---
PKBG:   392.05   18.49    1.10  237.07    1.03     .87   87.21  125.86     ---
INT%:     ----     .00    ----    ----    ----    ----    ----    ----     ---

First of all we notice the rather high total due to the full stoichiometric oxygen complement being added to the matrix without considering that the fluorine is replacing some of that oxygen. In addition we note that the matrix correction (ZCOR) for fluorine is 3.6125, which is over 360%, so a rather large matrix effect. Meanwhile the ideal fluorine concentration is calculated as being around 9 wt%, while we are getting almost 9.4 wt%.

So now we turn on the halogen correction from the Analytical | Analysis Options dialog as seen here:

(https://probesoftware.com/smf/gallery/395_31_07_19_10_22_11.png)

and now we see the halogen corrected composition for this fluor-phlogopite:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Oxygen Equivalent from Halogens (F/Cl/Br/I), Subtracted in the Matrix Correction

Un   10 fluor-phlogopite, Results in Elemental Weight Percents

ELEM:       Si       F      Cl      Mg      Ca       P      Al       K       O   SUM
495  19.842   8.873    .008  17.303   -.002   -.006   6.604   9.397  38.047 100.064
496  20.009   9.028    .001  17.201    .001    .001   6.568   9.373  38.080 100.261
497  19.833   8.892    .000  17.143    .002    .000   6.596   9.424  37.932  99.821
498  20.157   9.533    .002  17.368    .005   -.004   6.637   9.388  38.205 101.290
499  20.267   9.391    .006  17.208    .006   -.007   6.592   9.309  38.224 100.995

AVER:   20.021   9.143    .003  17.244    .002   -.003   6.599   9.378  38.098 100.486
SDEV:     .191    .301    .003    .090    .003    .004    .025    .043    .120    .628
SERR:     .086    .135    .002    .040    .001    .002    .011    .019    .054
%RSD:      .96    3.29  100.14     .52  130.45 -112.21     .38     .46     .32
STDS:      160     284     285      12     285     285     160     374     ---

STKF:    .1621   .0256   .0602   .4736   .3596   .1601   .0335   .1132     ---
STCT:   1749.1    72.8  2270.1 18778.0  8626.5  3449.1  5319.3  1650.6     ---

UNKF:    .1501   .0260   .0000   .1230   .0000   .0000   .0446   .0827     ---
UNCT:   1619.3    73.8     1.1  4877.0      .5     -.5  7086.9  1205.7     ---
UNBG:      4.2     4.3    11.1    20.7    17.9     3.5    82.2     9.7     ---

ZCOR:   1.3341  3.5235  1.2166  1.4020  1.1185  1.4112  1.4800  1.1343     ---
KRAW:    .9258  1.0143   .0005   .2597   .0001  -.0001  1.3323   .7304     ---
PKBG:   392.05   18.49    1.10  237.07    1.03     .87   87.21  125.86     ---
INT%:     ----     .00    ----    ----    ----    ----    ----    ----     ---

The totals are now more reasonable, but even more importantly note that the fluorine ZCOR decreased to 3.5235 and the measured fluorine concentration dropped to ~9.1 wt%, which is much closer to the published value. Basically, in fluor-phlogopite compositions, ones reported fluorine concentrations will be high by around 2 or 3% when this halogen correction to the stoichiometric oxygen is not properly performed.

It is probably obvious, but maybe worth saying again, that this sort of calculation cannot be performed off-line (e.g., in Excel), because the matrix correction needs to be re-calculated based on the new composition and re-applied to the measured intensities.

I haven't explored other halogen containing compositions, but is anyone interested in writing this effect up as a short paper or abstract?
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on August 19, 2019, 12:07:09 PM
Just FYI, we're just putting the finishing touches on a ferrous/ferric calculation for PFE (and CalcZAF!) that will calculate excess oxygen from ferric iron for minerals using the method of Droop (1987) *and* include it in the matrix correction.  This excess oxygen has a surprisingly large effect on the matrix correction physics, even for minerals such as ilmenite/magnetite.  I'm just posting this here so we'll have a link for the "interactive help" button in the Calculation Options dialog.

We hope to have a new version of both PFE and CalcZAF uploaded tonight or tomorrow, but first we want to give a big thanks to Andrew Locock, Anette von der Handt, John Fournelle and Emma Bullock, who provided the mineralogical expertise to allow us to implement this.

More details to follow soon but in the meantime the original paper by Droop is attached below
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on August 19, 2019, 04:13:36 PM
OK, now on to Probe for EPMA.   We think the implementation of the ferrous/ferric calculation (from Droop, 1987) is pretty good, but please download the latest version (12.7.1) and let us know what you think.  The CalcZAF implementation is described here:

https://probesoftware.com/smf/index.php?topic=691.msg8592#msg8592

So let's take an example of hematite. Calculating all iron as FeO we get these results:

Un    3 Hematite, Results in Elemental Weight Percents

ELEM:       Fe       O
TYPE:     ANAL    CALC
BGDS:      LIN
TIME:    10.00     ---
BEAM:    30.00     ---

ELEM:       Fe       O   SUM
29  68.992  19.766  88.758
30  69.126  19.805  88.931
31  68.758  19.699  88.457

AVER:   68.959  19.757  88.715
SDEV:     .186    .053    .240
SERR:     .108    .031
%RSD:      .27     .27
STDS:       39     ---

STKF:    .6810     ---
STCT:   228.06     ---

UNKF:    .6566     ---
UNCT:   219.89     ---
UNBG:      .48     ---

ZCOR:   1.0503     ---
KRAW:    .9642     ---
PKBG:   456.58     ---

Un    3 Hematite, Results in Oxide Weight Percents

ELEM:      FeO       O   SUM
29  88.758    .000  88.758
30  88.931    .000  88.931
31  88.457    .000  88.457

AVER:   88.715    .000  88.715
SDEV:     .240    .000    .240
SERR:     .138    .000
%RSD:      .27  -91.65
STDS:       39     ---

Note the low totals (~88%) due to the missing ferric oxygen.  Now we specify the ferrous/ferric calculation and the mineral cations and oxygen (2 and 3 respectively for hematites) as seen here:

(https://probesoftware.com/smf/gallery/1_19_08_19_4_07_00.png)

and re-calculating we now obtain these results:

Un    3 Hematite, Results in Elemental Weight Percents

ELEM:       Fe       O
TYPE:     ANAL    CALC
BGDS:      LIN
TIME:    10.00     ---
BEAM:    30.00     ---

ELEM:       Fe       O   SUM
29  70.168  30.155 100.323
30  70.305  30.213 100.518
31  69.930  30.052  99.982

AVER:   70.134  30.140 100.274
SDEV:     .190    .081    .271
SERR:     .109    .047
%RSD:      .27     .27
STDS:       39     ---

STKF:    .6810     ---
STCT:   228.06     ---

UNKF:    .6566     ---
UNCT:   219.89     ---
UNBG:      .48     ---

ZCOR:   1.0682     ---
KRAW:    .9642     ---
PKBG:   456.58     ---

Ferrous/Ferric Calculation Results:
Ferric/TotalFe   FeO        Fe2O3    Oxygen from Fe2O3
29       1.000        .000     100.323      10.052
30       1.000        .000     100.518      10.071
31       1.000        .000      99.982      10.017

AVER:        1.000        .000     100.274      10.047

Un    3 Hematite, Results in Oxide Weight Percents

ELEM:      FeO       O   SUM
29  90.271  10.052 100.323
30  90.447  10.071 100.518
31  89.965  10.017  99.982

AVER:   90.228  10.047 100.274
SDEV:     .244    .027    .271
SERR:     .141    .016
%RSD:      .27     .27
STDS:       39     ---

Our totals are now much better but because we included this excess oxygen in the matrix correction as suggested by Brian Joy, even more impressive is that our Fe went from 68.959 to 70.134 wt%!

We also added this ferrous/ferric output to the User Specified Output options as seen here:

(https://probesoftware.com/smf/gallery/1_19_08_19_4_07_30.png)

so now these results can be output to Excel as usual:

(https://probesoftware.com/smf/gallery/1_19_08_19_4_07_57.png)
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on September 11, 2019, 02:38:22 PM
Here's a "real world" example of a titanium magnetite with the ferrous/ferric excess oxygen calculation in Probe for EPMA using the method of Droop (1987) to calculate the excess oxygen from ferric iron. This excess oxygen is then added into the matrix correction for improved accuracy. The output below also includes oxides and sum of cations also as specified in the Calculation Options dialog.

Un   30 8400 Mgt Trav In-Out
TakeOff = 40.0  KiloVolt = 15.0  Beam Current = 50.0  Beam Size =    0
(Magnification (analytical) =  20000),        Beam Mode = Analog  Spot
(Magnification (default) =     1000, Magnification (imaging) =    100)
Image Shift (X,Y):                                       -2.00,   3.00

Formula Based on Sum of Cations = 3.00   Oxygen Calc. by Stoichiometry
Number of Data Lines:   6             Number of 'Good' Data Lines:   6
First/Last Date-Time: 07/23/2019 02:12:20 PM to 07/23/2019 02:29:56 PM

Average Total Oxygen:       28.684     Average Total Weight%:  100.294
Average Calculated Oxygen:  28.684     Average Atomic Number:   20.135
Average Excess Oxygen:        .000     Average Atomic Weight:   31.696
Average ZAF Iteration:        3.00     Average Quant Iterate:     4.00

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Excess Oxygen From Ferric Iron Calculated and Included in the Matrix Correction
Charge Balance Method of Droop (1987), Total Cations= 3.00, Total Oxygens= 4.00

Un   30 8400 Mgt Trav In-Out, Results in Elemental Weight Percents

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O
TYPE:     ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    ANAL    CALC
BGDS:      MAN     MAN     MAN     MAN     LIN     LIN     MAN     MAN
TIME:    40.00  140.00   40.00   80.00   30.00   30.00   88.00  141.00     ---
BEAM:    50.32   50.32   50.32   50.32   50.32   50.32   50.32   50.32     ---

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
72  60.751   1.862    .019   6.903    .309    .403    .054   1.270  28.664 100.234
73  60.644   1.863    .075   6.872    .333    .407    .059   1.258  28.657 100.170
74  60.946   1.871    .021   6.884    .295    .405    .056   1.255  28.732 100.464
75  60.505   1.856    .028   6.918    .323    .420    .056   1.260  28.584  99.950
76  60.954   1.876    .016   6.951    .335    .422    .043   1.251  28.776 100.623
77  60.805   1.858    .023   6.949    .301    .404    .044   1.249  28.693 100.325

AVER:   60.768   1.864    .030   6.913    .316    .410    .052   1.257  28.684 100.294
SDEV:     .175    .008    .022    .032    .017    .008    .007    .008    .066    .235
SERR:     .071    .003    .009    .013    .007    .003    .003    .003    .027
%RSD:      .29     .41   73.90     .47    5.40    2.06   12.65     .61     .23
STDS:      395      12      14      22      23      25      24     396     ---

STKF:    .6779   .4736   .4101   .5547   .6328   .7341   .6400   .0469     ---
STCT:   6812.2 53482.2  7089.5 14540.1 13304.5 22081.3  4697.4  3264.8     ---

UNKF:    .5649   .0085   .0002   .0703   .0033   .0038   .0006   .0072     ---
UNCT:   5676.3   964.8     3.7  1841.7    69.6   114.7     4.3   503.0     ---
UNBG:     20.5    79.1     5.5    52.0    25.2    49.5     9.6    48.0     ---

ZCOR:   1.0758  2.1821  1.4034   .9839   .9547  1.0761   .8885  1.7401     ---
KRAW:    .8333   .0180   .0005   .1267   .0052   .0052   .0009   .1541     ---
PKBG:   277.35   13.19    1.68   36.42    3.77    3.32    1.45   11.48     ---
INT%:      .00    ----    ----    ----  -17.39    -.03  -10.90     .00     ---

Ferrous/Ferric Calculation Results:
Ferric/TotalFe   FeO        Fe2O3    Oxygen from Fe2O3
72        .458      42.390      39.749       3.983
73        .455      42.482      39.494       3.957
74        .460      42.324      40.100       4.018
75        .456      42.333      39.459       3.954
76        .458      42.468      39.953       4.003
77        .458      42.388      39.828       3.990

AVER:         .458      42.397      39.764       3.984

Un   30 8400 Mgt Trav In-Out, Results in Oxide Weight Percents

ELEM:      FeO     MgO    SiO2    TiO2    V2O3     MnO   Cr2O3   Al2O3       O   SUM
72  78.156   3.087    .041  11.515    .454    .520    .079   2.400   3.983 100.234
73  78.019   3.090    .161  11.464    .491    .526    .086   2.377   3.957 100.170
74  78.407   3.103    .044  11.484    .433    .523    .081   2.371   4.018 100.464
75  77.839   3.078    .059  11.539    .476    .542    .082   2.382   3.954  99.950
76  78.418   3.110    .034  11.594    .492    .545    .063   2.363   4.003 100.623
77  78.225   3.080    .050  11.591    .442    .522    .065   2.359   3.990 100.325

AVER:   78.177   3.091    .065  11.531    .465    .530    .076   2.375   3.984 100.294
SDEV:     .225    .013    .048    .054    .025    .011    .010    .015    .025    .235
SERR:     .092    .005    .020    .022    .010    .004    .004    .006    .010
%RSD:      .29     .41   73.90     .47    5.40    2.06   12.65     .61     .64
STDS:      395      12      14      22      23      25      24     396     ---

Un   30 8400 Mgt Trav In-Out, Results Based on Sum of 3 Cations

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
72   2.381    .168    .001    .315    .013    .016    .002    .103   3.921   6.921
73   2.377    .168    .006    .314    .014    .016    .002    .102   3.921   6.921
74   2.384    .168    .002    .314    .013    .016    .002    .102   3.922   6.922
75   2.378    .168    .002    .317    .014    .017    .002    .103   3.921   6.921
76   2.380    .168    .001    .316    .014    .017    .002    .101   3.922   6.922
77   2.382    .167    .002    .317    .013    .016    .002    .101   3.923   6.923

AVER:    2.380    .168    .002    .316    .014    .016    .002    .102   3.922   6.922
SDEV:     .002    .000    .002    .001    .001    .000    .000    .001    .001    .001
SERR:     .001    .000    .001    .001    .000    .000    .000    .000    .000
%RSD:      .10     .24   73.96     .46    5.41    2.06   12.76     .74     .02

Note that if we did *not* include the calculation of excess oxygen in the matrix correction our oxides and formula would look like this:

Un   30 8400 Mgt Trav In-Out, Results in Oxide Weight Percents

ELEM:      FeO     MgO    SiO2    TiO2    V2O3     MnO   Cr2O3   Al2O3       O   SUM
72  77.687   3.107    .037  11.434    .451    .517    .074   2.412    .000  95.718
73  77.554   3.109    .158  11.383    .487    .523    .080   2.388    .000  95.684
74  77.933   3.123    .041  11.402    .430    .520    .076   2.383    .000  95.908
75  77.374   3.098    .056  11.458    .472    .539    .076   2.393    .000  95.467
76  77.946   3.130    .031  11.512    .489    .542    .058   2.375    .000  96.083
77  77.755   3.100    .047  11.509    .439    .519    .059   2.371    .000  95.799

AVER:   77.708   3.111    .062  11.450    .461    .527    .071   2.387    .000  95.776
SDEV:     .221    .013    .048    .054    .025    .011    .010    .015    .000    .210
SERR:     .090    .005    .020    .022    .010    .004    .004    .006    .000
%RSD:      .28     .41   78.00     .47    5.41    2.06   13.52     .61 -167.33
STDS:      395      12      14      22      23      25      24     396     ---

Un   30 8400 Mgt Trav In-Out, Results Based on Sum of 3 Cations

ELEM:       Fe      Mg      Si      Ti       V      Mn      Cr      Al       O   SUM
72   2.379    .170    .001    .315    .013    .016    .002    .104   3.376   6.376
73   2.375    .170    .006    .313    .014    .016    .002    .103   3.379   6.379
74   2.382    .170    .002    .313    .013    .016    .002    .103   3.374   6.374
75   2.376    .170    .002    .316    .014    .017    .002    .104   3.378   6.378
76   2.378    .170    .001    .316    .014    .017    .002    .102   3.376   6.376
77   2.380    .169    .002    .317    .013    .016    .002    .102   3.377   6.377

AVER:    2.378    .170    .002    .315    .014    .016    .002    .103   3.377   6.377
SDEV:     .002    .000    .002    .001    .001    .000    .000    .001    .002    .002
SERR:     .001    .000    .001    .001    .000    .000    .000    .000    .001
%RSD:      .10     .24   78.05     .46    5.41    2.06   13.63     .74     .06

Of course the oxygen formula is low, but note the effect of this "missing oxygen" on the concentrations of the other elements. E.g., without the excess oxygen in the matrix correction, the Fe and Ti concentrations went down, but the Mg and Al concentrations went up!
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: Probeman on February 10, 2020, 10:14:23 PM
Mike Dungan, Andrew Locock and I fixed a problem with some oxide compositions in the ferric/ferric excess oxygen calculation as seen here:

Ferrous/Ferric Calculation Results:
Ferric/TotalFe   FeO        Fe2O3    Oxygen from Fe2O3
37        .387      44.824      31.498       3.156
38        .387      44.633      31.339       3.140

AVER:         .387      44.729      31.419       3.148

Un    6 CH-19_Ox99_Mgt Core-1, Results in Oxide Weight Percents

ELEM:      FeO     MgO    TiO2    V2O3     MnO   Cr2O3   Al2O3    SiO2     CaO       O   SUM
37  73.166   2.152  18.583    .543    .586    .006   1.835    .053    .014   3.156 100.093
38  72.832   2.159  18.500    .553    .574    .002   1.906    .043    .014   3.140  99.723

AVER:   72.999   2.156  18.541    .548    .580    .004   1.870    .048    .014   3.148  99.908
SDEV:     .236    .005    .059    .008    .008    .003    .051    .007    .000    .011    .261
SERR:     .167    .003    .042    .005    .006    .002    .036    .005    .000    .008
%RSD:      .32     .23     .32    1.39    1.45   69.25    2.70   14.77    1.72     .36
STDS:      395      12      22      23      25      24     306      14     306     ---

Un    6 CH-19_Ox99_Mgt Core-1, Results Based on Sum of 3 Cations

ELEM:       Fe      Mg      Ti       V      Mn      Cr      Al      Si      Ca       O   SUM
37   2.251    .118    .514    .016    .018    .000    .080    .002    .001   4.000   7.000
38   2.248    .119    .514    .016    .018    .000    .083    .002    .001   4.000   7.000

AVER:    2.250    .118    .514    .016    .018    .000    .081    .002    .001   4.000   7.000
SDEV:     .002    .001    .000    .000    .000    .000    .002    .000    .000    .000    .000
SERR:     .002    .000    .000    .000    .000    .000    .002    .000    .000    .000
%RSD:      .10     .46     .09    1.62    1.22   69.07    2.93   14.55    1.49     .00

This change now properly handles oxides such as Al2O3, V2O3, Cr2O3, etc. You can update PFE anytime.
Title: Re: Specifying Unanalyzed Elements For a Proper Matrix Correction
Post by: John Donovan on June 29, 2020, 09:34:18 AM
We've recently been working with Julien Allaz to fix the way in which the oxygen-halogen correction is applied to standards in Probe for EPMA as first reported by Ben Wade:

https://probesoftware.com/smf/index.php?topic=1247.msg9305#msg9305

During that time we realized that these recent halogen correction issues for standards (when oxygen is calculated by stoichiometry rather than a fixed concentration), are somewhat similar to the excess oxygen calculation using the Droop method of charge balance (hey- it's all about charge balance!). Again only for standard samples, when oxygen is calculated by stoichiometry (as opposed to added by fixed concentration from the standard database).

Previously, for the excess oxygen from ferric iron calculation, we simply did not allow one to perform this excess oxygen calculation for standards (only for unknown samples). But we realized yesterday that it's the same issue in that a double correction is applied for standards if the excess (or deficit) oxygen is already included in the standard database, and the excess (or deficit) oxygen correction for ferric oxygen (or halogen equivalence) is applied in Probe for EPMA, *and* the oxygen in the standard is calculated by stocihiometry.  Whew!

So what we did was enable the calculation of excess oxygen for standards (just as we have had for the halogen correction), so if the standard analysis is using the default fixed oxygen concentration from the standard database, all is well.  This can be seen is this output:

Excess Oxygen From Ferric Iron was not Included in the Matrix Correction (because oxygen was not calculated by cation stoichiometry)

St  395 Set   1 Magnetite U.C. #3380, Results in Elemental Weight Percents

ELEM:        F      Fe      Al      Mg      Mn       O
TYPE:     ANAL    ANAL    SPEC    SPEC    SPEC    SPEC
BGDS:      LIN     LIN
TIME:    20.00   20.00     ---     ---     ---     ---
BEAM:    29.98   29.98     ---     ---     ---     ---

ELEM:        F      Fe      Al      Mg      Mn       O   SUM
10    .051  71.844    .201    .072    .054  27.803 100.025
11    .073  72.195    .201    .072    .054  27.803 100.398
12    .026  72.209    .201    .072    .054  27.803 100.365

AVER:     .050  72.083    .201    .072    .054  27.803 100.263
SDEV:     .023    .207    .000    .000    .000    .000    .207
SERR:     .014    .119    .000    .000    .000    .000
%RSD:    46.70     .29     .00     .00     .00     .00

PUBL:     n.a.  72.080    .201    .072    .054  27.803 100.210
%VAR:      ---   (.00)     .00     .00     .00     .00
DIFF:      ---   (.00)    .000    .000    .000    .000
STDS:      835     395     ---     ---     ---     ---

STKF:    .1715   .6779     ---     ---     ---     ---
STCT:    57.18  228.22     ---     ---     ---     ---

UNKF:    .0002   .6779     ---     ---     ---     ---
UNCT:      .07  228.22     ---     ---     ---     ---
UNBG:      .32     .49     ---     ---     ---     ---

ZCOR:   2.2854  1.0633     ---     ---     ---     ---
KRAW:    .0013  1.0000     ---     ---     ---     ---
PKBG:     1.23  466.16     ---     ---     ---     ---

Ferrous/Ferric Calculation Results:
Ferric/TotalFe   FeO        Fe2O3    Oxygen from Fe2O3
10        .000        .000        .000        .000
11        .000        .000        .000        .000
12        .000        .000        .000        .000

AVER:         .000        .000        .000        .000

But in the case where the user changes the standard analysis calculation to calculate oxygen by stoichiometry, the program will now zero out the excess oxygen (just as it now does for the deficit oxygen from halogens), and not perform a double correction as seen here:

Oxygen Calculated by Cation Stoichiometry and Included in the Matrix Correction
Oxygen Equivalent from Halogens (F/Cl/Br/I) was Subtracted in the Matrix Correction
Excess Oxygen From Ferric Iron Calculated and Included in the Matrix Correction
Charge Balance Method of Droop (1987), Total Cations= 3.00, Total Oxygens= 4.00

St  395 Set   1 Magnetite U.C. #3380, Results in Elemental Weight Percents

ELEM:        F      Fe      Al      Mg      Mn       O
TYPE:     ANAL    ANAL    SPEC    SPEC    SPEC    CALC
BGDS:      LIN     LIN
TIME:    20.00   20.00     ---     ---     ---     ---
BEAM:    29.98   29.98     ---     ---     ---     ---

ELEM:        F      Fe      Al      Mg      Mn       O   SUM
10    .051  71.838    .201    .072    .054  27.742  99.957
11    .073  72.206    .201    .072    .054  27.908 100.514
12    .026  72.215    .201    .072    .054  27.859 100.427

AVER:     .050  72.086    .201    .072    .054  27.836 100.299
SDEV:     .023    .215    .000    .000    .000    .085    .300
SERR:     .014    .124    .000    .000    .000    .049
%RSD:    46.75     .30     .00     .00     .00     .31

PUBL:     n.a.  72.080    .201    .072    .054  27.803 100.210
%VAR:      ---   (.01)     .00     .00     .00     .12
DIFF:      ---   (.01)    .000    .000    .000    .033
STDS:      835     395     ---     ---     ---     ---

STKF:    .1715   .6779     ---     ---     ---     ---
STCT:    57.18  228.22     ---     ---     ---     ---

UNKF:    .0002   .6779     ---     ---     ---     ---
UNCT:      .07  228.22     ---     ---     ---     ---
UNBG:      .32     .49     ---     ---     ---     ---

ZCOR:   2.2865  1.0633     ---     ---     ---     ---
KRAW:    .0013  1.0000     ---     ---     ---     ---
PKBG:     1.23  466.16     ---     ---     ---     ---

Ferrous/Ferric Calculation Results:
Ferric/TotalFe   FeO        Fe2O3    Oxygen from Fe2O3
10        .674      30.092      69.266       6.940
11        .678      29.937      69.966       7.010
12        .671      30.591      69.252       6.938

AVER:         .674      30.207      69.495       6.963

So now, the code for dealing with this is seen here:

Code: [Select]
`If sample(1).Type% = 1 Thenanalysis.WtPercents!(chan%) = ConvertTotalToExcessOxygen!(Int(1), sample(), stdsample())If UseOxygenFromHalogensCorrectionFlag And sample(1).OxideOrElemental% = 1 ThenIf analysis.WtPercents!(chan%) < 0# Then analysis.WtPercents!(chan%) = 0#  ' zero out oxygen deficit from standard databaseEnd IfIf sample(1).FerrousFerricCalculationFlag And sample(1).OxideOrElemental% = 1 ThenIf analysis.WtPercents!(chan%) > 0# Then analysis.WtPercents!(chan%) = 0#  ' zero out oxygen excess from standard databaseEnd If' For unknowns, use specified oxygen weight percentElseanalysis.WtPercents!(chan%) = stdsample(1).ElmPercents!(ip%)End If`
One possible remaining issue is when one has both halogens and ferric iron present in a standard, and one tries to calculate oxygen by stoichiometry, the excess/deficit oxygen might not be handled perfectly. In this case, we would just say, simply use the default to calculate oxygen elementally (fixed concentration from the standard database) and all will be well.  But I think it will work, because if both the oxygen-halogen correction *and* the ferric iron calculation correction are turned on, you'll get a zero value for excess/deficit oxygen, so it should all work.

Remember, in all cases, the calculations for unknown samples are handled just fine. This is all pretty complicated we know, but please ask us any questions you may have.

In the meantime, update Probe for EPMA from the Help menu and these options are all available now.