Skip to content

SHRIMP: Sub OvercountColumns

sbodorkos edited this page Oct 20, 2017 · 1 revision

SQUID 2.50 Sub: OvercountColumns

The subroutine evaluates, on an analysis-by-analysis basis for the Standard, the following columns:

  • 204overcts/sec(fr. 207)
  • 204overcts/sec(fr. 208)
  • 204/206(fr. 207)
  • 204/206(fr. 207) %err
  • 204/206(fr. 208)
  • 7-corr206Pb/238Uconst.delta%
  • 8-corr206Pb/238Uconst.delta%

Background

Isotopic 'reference ages' and associated ratios: SQUID 2.50 defines isotopic reference materials in terms of their 'reference ages' (in units of Ma) in up to three isotopic systems of interest. These reference ages are determined independently of SHRIMP; predominantly via ID-TIMS:

  • 206Pb/238U (SQUID 2.50 name = 'StdAgeUPb')
  • 207Pb/206Pb (SQUID 2.50 name = 'StdAge76')
  • 208Pb/232Th (SQUID 2.50 name = 'StdAgeThPb')

Usually, for any given isotopic reference material, StdAgeUPb would not be NULL, and StdAge76 and StdAgeThPb would both default to be equal to StdAgeUPb (i.e. concordant) unless alternative values for StdAge76 and StdAgeThPb were independently specified). Obviously, this could work in the opposite direction for 208Pb/232Th reference materials, where StdAgeThPb would be measured by IDTIMS, and StdAgeUPb and StdAge76 would be assumed to be the same as StdAgeThPb, unless independently determined.

Once these three reference ages are known/assumed, the corresponding radiogenic isotope ratios are determined via direct application of the relevant age-equations:

Std 206Pb/238U = exp( Lambda238Ma * StdAgeUPb ) - 1  
--where Lambda238Ma = 238U decay constant in units of 'Ma^-1'
--SQUID 2.50 name = 'StdUPbRatio'  

Std 207Pb/206Pb = Pb76( StdAge76 )  
--LudwigLibrary function 'Pb76' defined previously
--SQUID 2.50 name = 'Std_76'  

Std 208Pb/232Th = exp( Lambda232Ma * StdAgeThPb ) - 1  
--where Lambda232Ma = 232Th decay constant in units of 'Ma^-1'
--SQUID 2.50 name = 'StdThPbRatio'  

Finally, the curiously-named 'Standard radiogenic 208Pb/206Pb factor' (SQUID 2.50 name = 'StdRad86fact') is calculated. This factor links radiogenic 208Pb/206Pb to 232Th/238U in the standard, via:

StdRad86fact = StdThPbRatio / StdUPbRatio  
--Algebraically, this equates to:  
--(Std 208Pb/232Th) / (Std 206Pb/238U)  
--which can be rewritten as:  
--(Std 208Pb/206Pb) * (Std 238U/232Th)  

'Default common Pb' ratios: In SHRIMP (and SQUID 2.50), 'default common Pb' can be considered broadly analogous to 'procedural blank' in IDTIMS. The concept is an acknowledgement that in any given SIMS measurement, there might well be non-radiogenic Pb present, even when measuring reference materials that (axiomatically) ought to have negligible intrinsic non-radiogenic Pb. This non-radiogenic Pb is most easily conceptualised as very low levels of 'environmental' or 'atmospheric' Pb that adheres to mount-surfaces despite best-practice mitigation processes.

The 'default common Pb' correction in SQUID 2.50 requires the isotopic composition of this 'environmental' non-radiogenic Pb to be specified. It is possible to measure the relevant values directly (e.g. by putting filter paper on an air-vent in the lab, and measuring the isotopic composition of the adhered Pb); alternatively a 'model' composition can be assumed. SQUID 2.50 allows users to assume a 'geological' origin for the default non-radiogenic Pb, by specifying an age (e.g. present-day) and calculating the bulk-Earth Pb-isotope composition corresponding to that age using a model such as that of Stacey & Kramers (1975). The method of calculation of 'default common Pb' composition is not especially important at this stage: it is more relevant to specify exactly which parameters SQUID 2.50 needs in order to proceed with '204 overcount' calculations. SQUID 2.50 requires specification of the following three isotopic ratios for default common Pb:

  • 206Pb/204Pb (SQUID 2.50 name = 'sComm_64')
  • 207Pb/206Pb (SQUID 2.50 name = 'sComm_76')
  • 208Pb/206Pb (SQUID 2.50 name = 'sComm_86')

From these three ratios, SQUID 2.50 derives the extra two that it uses, via trivial multiplication:

  • 207Pb/204Pb (SQUID 2.50 name = 'sComm_74') = sComm_76 * sComm_64
  • 208Pb/204Pb (SQUID 2.50 name = 'sComm_84') = sComm_86 * sComm_64

Usage

OvercountColumns(SpotRow)

Mandatory variables

SpotRow: Index number of the output-row, to which the value calculated by OvercountColumns is to be written.


Definition of variables

Values of type Boolean
Std

Values of type Integer
k, SpotRow

Values of type String
t1, t2


The function commences with a series of tests to see whether it is applicable. Fundamental prerequisites for the calculation of '204 overcount' columns are as follows:

  • The presence of at least one U-bearing peak in the run-table (i.e. pbHasU = TRUE)
  • The presence of an identified 204Pb peak in the run-table (i.e. pi204PkOrder > 0)
  • The presence of an identified background mass-station in the run-table (i.e. piBkrdPkOrder > 0)
  • The presence of ["204/206"] (i.e. 204Pb/206Pb) as a measured 'ratio of interest' (i.e. piPb46col > 0), noting that SQUID 2.50 contains code ensuring that ratios of interest ["204/206"], ["207/206"] and ["208/206"] are always calculated whenever the constituent peaks are present in the run-table, even if the user did not specifically request those 'ratios of interest'.
  • Switch.ShowOverCtCols = TRUE, noting that SQUID 2.50 does not offer this Switch as a user-option; so it is presumably set to TRUE by default.

It is also worth noting that in SQUID 2.50 as it stands, failure to meet this set of prerequisites means that attempts to perform U/Th-Pb geochronology ultimately fail. From a scientific point of view, that looks like a 'bug' (e.g. forgoing measurements of 204Pb, and thus the associated 'overcount columns' ought not to be a show-stopper for the broader purpose of doing U/Th-Pb geochronology, but at present it is, for reasons that have not yet been fully pursued.

If (pbHasU = FALSE) OR (pi204PkOrder = 0) OR (piBkrdPkOrder = 0)  
  OR (pi46col = 0) OR (Switch.ShowOverCtCols = FALSE)
  
  Exit Sub  

End If 

For k = 7 to 8 
--7 and 8 indicate 204 overcounts from 207Pb and 208Pb respectively  

  If (k = 7) AND (piPb76col > 0) 
  --i.e. if ratio of interest ["207/206"] exists  
  
    t1 = ( ["207/206"] - Std_76 ) / ( sComm_74 - (Std_76 * sComm_64) )  
    --t1 will be placed in (StandardData) column ["204/206 (fr. 207)"]  
    
    t2 = ABS( ["207/206 %err"] * ["207/206"] / (["207/206"] - Std_76) )
    --t2 will be placed in (StandardData) column ["204/206 (fr. 207) %err"]  
    
  Elseif piPb86col > 0 --i.e. if ratio of interest ["208/206"] exists
    
    t1 = ( ["208/206"] - StdRad86fact * ["232Th/238U"] ) /  
         (sComm_84 - StdRad86fact * ["232Th/238U"] * sComm_64 )
    --t1 will be placed in (StandardData) column ["204/206 (fr. 208)"]  
    --note that there is no corresponding expression for t2 here  
  
  End If  

  PlaceFormulae t1, SpotRow, piaOverCts46Col[k]  
  
  If k = 7  
    PlaceFormulae t2, SpotRow, piaOverCts46ErrorCol[k]  
  End If  
  
  If k = 7  

    t1 = ["total 204 cts/sec"] - ["Bkrd cts/sec"] -  
         ["204/206 (fr. 207)"] * ( ["total 206 cts/sec"] - ["Bkrd cts/sec"] )  
    --t1 will be placed in (StandardData) column ["204 overcts/sec (fr. 207)"]  
  
  Else 

    t1 = ["total 204 cts/sec"] - ["Bkrd cts/sec"] -  
         ["204/206 (fr. 208)"] * ( ["total 206 cts/sec"] - ["Bkrd cts/sec"] )  
    --t1 will be placed in (StandardData) column ["204 overcts/sec (fr. 208)"]  
  
  End If  
  
  PlaceFormulae t1, SpotRow, piaOverCts4Col[k]  
  
  If k = 7  

    t1 = 100 * ( (1 - sComm_64 * ["204/206"]) /   
         (1 - sComm_64 * ["204/206 (fr. 207)"]) - 1 ) 
    --t1 will be placed in (StandardData) column ["7-corr 206Pb/238U const. delta%"]  
    --which should be RENAMED ["7-corr primary calib const. delta%"]. The old name  
    --is a hangover from when all calibration constants were 206Pb/238U. 
  
  Else 

    t1 = 100 * ( (1 - sComm_64 * ["204/206"]) /   
         (1 - sComm_64 * ["204/206 (fr. 208)"]) - 1 ) 
    --t1 will be placed in (StandardData) column ["8-corr 206Pb/238U const. delta%"]  
    --which should be RENAMED ["8-corr primary calib const. delta%"]. The old name  
    --is a hangover from when all calibration constants were 206Pb/238U. 
  
  End If  
  
  PlaceFormulae t1, SpotRow, piaCorrAdeltCol[k]  

Next k

End Sub  
Clone this wiki locally