Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS...

86
Data Bank NEA/DB/DOC(2014)4 www.oecd-nea.org Analysis of Geel Spectra – AGS Users’ manual

Transcript of Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS...

Page 1: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

Data Bank NEA/DB/DOC(2014)4

www.oecd-nea.org

Analysis of Geel Spectra – AGS

Users’ manual

Page 2: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

2

Page 3: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

Unclassified NEA/DB/DOC(2014)4 Organisation de Coopération et de Développement Économiques Organisation for Economic Co-operation and Development 29-Sep-2014 ___________________________________________________________________________________________

English - Or. English NUCLEAR ENERGY AGENCY STEERING COMMITTEE FOR NUCLEAR ENERGY

Data Bank Management Committee

AGS - Analysis of Geel Spectra Users' Manual B. Becker, C. Bastian, J. Heyse, S. Kopecky, P. Schillebeeckx European Commission, Joint Research Centre

Institute for Reference Materials and Measurements Retieseweg 111, B-2440 Geel, Belgium September 2014

The complete original document is available in PDF FORMAT ONLY. Special NEA presentation agreed with Documents Desk.

kiyoshi [email protected] +33 01 45 24 10 80

JT03362692

Complete document available on OLIS in its original format This document and any map included herein are without prejudice to the status of or sovereignty over any territory, to the delimitation of international frontiers and boundaries and to the name of any territory, city or area.

NEA

/DB

/DO

C(2014)4

Unclassified

English - O

r. English

Page 4: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA Data Bank NEA/DB/DOC(2014)4

AGS – Analysis of Geel Spectra

Users’ Manual

B. Becker, C. Bastian, J. Heyse, S. Kopecky, P. Schillebeeckx

European Commission, Joint Research Centre

Institute for Reference Materials and Measurements

Retieseweg 111, B-2440 Geel, Belgium

September 2014

1

Page 5: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Foreword

This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count rate spectra of time of flight measurements in an efficient and convenientway into experimental observables.

The output of multi-channel data acquisition systems widely used in experimental physicsoften consists of counting histograms. These histograms or spectra undergo various mathemati-cal transformations or operations to obtain the final experimental observables. To perform theseoperations the AGS package has been developed at the European Commission, Joint ResearchCentre, Institute for Reference Materials and Measurements (EC-JRC-IRMM) [1, 2, 3]. Thesystem consists of a set of stand-alone C programs to transform count rate spectra resultingfrom time-of-flight experiments in an efficient and convenient way into an observable, transmis-sion or reaction yield. The observables together with their covariance information can be usedto determine nuclear reaction model parameters in an adjustment to experimental data [3, 4].The use of the AGS concept has been recommended in a consultants’ meeting organized by theIAEA to report TOF cross section data in the EXFOR data library [5, 6, 7].

Although the AGS package is tailored for neutron time-of-flight (TOF) measurements [4],it can in principle be used for any application involving spectrum transformations. The codeis based on a compact formalism performing a full propagation of uncertainties, starting fromthe uncorrelated uncertainties due to counting statistics. It accounts for both the correlatedand uncorrelated uncertainty components, and stores the full covariance information after eachoperation in a concise, vectorized way. The covariance matrix is split in two parts, separatingthe uncorrelated and correlated components. The uncorrelated part is represented as a diagonalmatrix, while the correlated part is expressed as the product of a rectangular matrix with itsown transpose. This structure results in a substantial reduction of data storage volume andprovides a structure to verify the various sources of uncertainties through each step of the datareduction process. In addition, it ensures that the resulting covariance matrix is always welldefined, i.e. positive definite, and it allows for a convenient way to propagate the uncertaintiesof parameters resulting from a least squares adjustment.

The development of the AGS code has benefited tremendously over the years from feedback,testing and coding of various users. We acknowledge in particular the contributions of A. Borellafrom SCK•CEN (Belgium) and F. Gunsing from CEA Saclay (France). We are also very gratefulto the Nuclear Energy Agency of the OECD and the Nuclear Data Section of the IAEA for theirinterest in this work.

2 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 6: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Table of contents

1 Data reduction of TOF-experiments 5

1.1 Time-of-flight technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2 Total cross section measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3 Reaction cross section measurements . . . . . . . . . . . . . . . . . . . . . . . . . 71.4 Dead time correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Uncertainty propagation 10

2.1 Generalized law of uncertainty propagation . . . . . . . . . . . . . . . . . . . . . 102.2 AGS formalism for uncertainty propagation of TOF-cross section data . . . . . . 10

3 Data analysis 13

3.1 Parameter estimation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2 Estimation of the total covariance of estimated parameters . . . . . . . . . . . . 13

3.2.1 Conventional uncertainty propagation . . . . . . . . . . . . . . . . . . . . 133.2.2 Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.2.3 Marginalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

4 The AGS code 16

4.1 AGS commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164.2 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

4.2.1 ags addval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.2.2 ags avrg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.2.3 ags divi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224.2.4 ags divval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.2.5 ags dtco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.2.6 ags ener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264.2.7 ags exp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274.2.8 ags fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.2.9 ags fpa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.2.10 ags func . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.2.11 ags fxyp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.2.12 ags getA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354.2.13 ags getE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364.2.14 ags getET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.2.15 ags getH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384.2.16 ags getW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.2.17 ags getXY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.2.18 ags getY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.2.19 ags inv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424.2.20 ags lico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.21 ags lift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.2.22 ags log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.2.23 ags mpty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464.2.24 ags mult . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474.2.25 ags multval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484.2.26 ags putCM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 3

Page 7: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.27 ags putX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504.2.28 ags scan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524.2.29 ags shift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 534.2.30 ags subval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544.2.31 ags title . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554.2.32 ags tof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564.2.33 ags unav . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5 Examples 58

5.1 Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585.1.1 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 595.1.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

5.2 Capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 655.2.1 Data import and dead time correction . . . . . . . . . . . . . . . . . . . . 665.2.2 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 695.2.3 Flux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 715.2.4 Yield . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Appendix A symbols, nomenclature and abbreviations 79

References 82

4 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 8: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

1 Data reduction of TOF-experiments

In this section a brief overview of the time-of-flight technique and the data reduction of transmis-sion and reaction measurements is given. A more comprehensive review can be found in ref. [4]which discusses more in detail such measurements including a discussion on the uncertaintycomponents.

1.1 Time-of-flight technique

The TOF technique can be applied to determine the velocity v of a neutron from the time tit needs to travel a given distance L. Experimentally this time is derived from the differencebetween a stop and a start signal, represented by Ts and T0, respectively. At the GELINAfacility of the EC-JRC-IRMM [8] the start signal is produced when the pulsed electron beampasses through a coil just before the beam enters the uranium target. This signal represents thetime the neutron is produced. The stop signal or arrival time of the neutron in a transmissionexperiment is provided by the neutron detector. In a reaction cross section experiment thearrival time is obtained from the detection of the reaction products which are emitted in theneutron induced reaction. The observed TOF tm becomes

tm = (TS − T0) + t0, (1)

where t0 is a time offset. This time offset, which is mostly due to a difference in cable lengths,can be deduced from a measurement of the TOF of the γ-ray flash produced in the target.

The time-of-flight tm can be related to the velocity v of the neutron at the moment it leavesthe target and enters the detector or sample by

v =L

t=

L

tm − (tt + td), (2)

where L is the distance between the outer surface of the neutron-producing target and the frontface of the detector or sample, tt is the time difference between the moment of creation of theneutron and the moment it leaves the target and td is the difference between the moment theneutron enters the detector or sample and the time of detection. The kinetic energy of theneutron is given by

E = mnc2(γ − 1), (3)

where mn is the rest mass of the neutron and γ represents the Lorentz factor:

γ =1

1− (v/c)2, (4)

with c the speed of light. At low energies Eq. (3) can be approximated using a numerically morestable cubic expansion in (v/c)2:

E = mnc2

[1

2

(v

c

)2+

3

8

(v

c

)4+

5

16

(v

c

)6+ . . .

]

. (5)

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 5

Page 9: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

1.2 Total cross section measurements

In a transmission experiment the observed quantity is the fraction of the neutron beam passingthrough the sample without any interaction. For a parallel neutron beam, which is perpendicularto a homogeneous slab of material, this fraction or transmission T is

T = e−

k

nkσtot,k

, (6)

where σtot,k is the Doppler broadened total cross section and nk is the number of atoms per unitarea of nuclide k.

Experimentally the transmission Texp is obtained from the ratio of TOF spectra resultingfrom a sample-in Cin and a sample-out measurement Cout, after subtraction of the backgroundcontributions Bin and Bout, respectively [9, 10, 11]:

Texp = NTCin −K Bin

Cout −K Bout. (7)

The experimental spectra in Eq. (7) need to be corrected for losses due to the dead time inthe detector and electronics chain. All spectra need to be normalized to the same neutronintensity and TOF-bin width. To account for the uncertainty on the normalization due to thebeam intensity the factor NT is introduced. Its uncertainty depends on the stability of both theneutron monitors and the neutron transmission detectors. This uncertainty can be reduced byalternating sequences of sample-in and sample-out measurements. The factor K in Eq. (7) isintroduced to include a correlated uncertainty of the used model for Bin and Bout.

Eq. (7) reveals that the experimental transmission is deduced from a ratio of counting spectra.Therefore, it is independent of the detector efficiency and no absolute measurement of theneutron flux is required. The experimental observable Texp (Eq. (7)) is a direct measure ofthe theoretical transmission given by Eq. (6) if the measurements are performed in a goodtransmission geometry, i.e.:

• the sample is perpendicular with respect to a parallel incoming neutron beam;

• all neutrons that are detected have passed through the sample; and

• neutrons scattered by the sample are not detected.

In addition, it requires a constant homogeneous spatial distribution of the sample material. Theconditions of an ideal or good transmission geometry can be achieved by a proper collimationof the neutron beam at both the sample and detector position.

The background in a TOF transmission measurement can be considered as a sum of severalcomponents [4]:

B(t) = B0 +Bγ(t) +Bno(t) +Bns(t) +Bne(t) , (8)

where B0 is TOF independent and Bγ(t), Bno(t), Bns(t) and Bne(t) are TOF dependent. Formeasurements at a moderated neutron beam, the contribution Bγ(t) is primarily due to thedetection of 2.2 MeV γ-rays resulting from neutron capture in hydrogen present in the moderator[10, 9]. The time distribution of the 2.2 MeV γ-rays is directly related to the slowing downprocess of the neutrons in the moderator [10, 9]. Additional γ-ray background results fromhigh energy γ-rays and Bremsstrahlung scattered in the target-moderator assembly. Since theirenergy spectrum is dominated by Compton scattered γ-rays around 250 keV, their contribution

6 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 10: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

can be significantly reduced by a proper pulse height threshold. In addition, their arrival timecorresponds to the one of fast neutrons. The second time dependent component Bno(t) resultsfrom overlap neutrons, i.e. neutrons which are detected but have been produced in a previousneutron pulse. A third time dependent component Bns(t) originates predominantly from beamneutrons which are scattered inside the detector station. A small background component Bne(t)is due to neutrons scattered in the surroundings (environment) or at other flight paths in caseof a multi-user facility.

The background as a function of TOF can be determined by an analytical expression applyingthe black resonance technique [4]. The free parameters in the analytical expression are deter-mined by a least square fit to resonance dips observed in the TOF-spectra from measurementswith black resonance filters. The thickness of the filter is chosen to ensure that the transmissionthrough the filter at an element specific resonance energy is less than 10−4. Elements that canbe used as black resonance filters are e.g. Cd, Ag, W, Mo, Co, Al, Na and S. At higher energiesrelatively thick Si or Ti are applicable. Unfortunately, the presence of both the sample and blackresonance filter will alter the background. In particular, the time dependent components Bγ(t),Bno(t) and Bns(t) are very sensitive to the absorption and scattering characteristics of the filterand sample. To avoid bias effects in the background, the change in background level due to thepresence of the sample and the filters has to be taken into account [4]. The best accuracy of thebackground is obtained by measurements with fixed background filters in the beam. Using fixedbackground filters the impact of the material placed in the beam can be taken into account andthe stability of the background level can be controlled at any time. For samples which containisotopes for which some resonances are black, the corresponding transmission in the sample-inspectra can be used as self-indicating black resonance dips. In most cases the shape of the timedependent components can be considered as fixed, such that only the amplitudes are sensitiveto the presence of the filters and sample.

The contribution Bno(t) due to overlap neutrons can be estimated from measurements in thesame experimental conditions, however, at a lower operating frequency of the accelerator or byan extrapolation of the time response at the end of a cycle.

Functions that are quite commonly used as background corrections are sums of decayingexponential and power functions. A typical function for measurements with a Li-glass scintillatorat a moderated neutron beam is [11]

B(t) = a0 + a1e−λ1t + a2e

−λ2t + a3e−λ3(t+t0). (9)

a0 is the time independent component. The first exponential is due to the 2.2 MeV γ-rays, thesecond due to neutrons scattered in the surroundings and the third accounts for the contributionof overlap neutrons, which has been estimated by an extrapolation of the spectrum at the endof the cycle. The parameter t0 is related to the operating frequency of the accelerator.

1.3 Reaction cross section measurements

In a reaction cross section measurement the quantity of interest is the reaction yield, which isthe fraction of the neutron beam inducing a reaction in the sample. The theoretical reactionyield Yr,k resulting from a neutron induced reaction (n, r) with nuclide k, can be expressed as asum of primary Y0,k and multiple interaction events Ym,k [4]

Yr,k = Y0,k + Ym,k. (10)

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 7

Page 11: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

The latter are due to a (n, r) reaction after at least one neutron scattering in the sample.For a parallel uniform neutron beam and a homogeneous slab of material, which is placedperpendicular to the neutron beam, the primary yield Y0,k is given by

Y0,k =

(

1− e−

j

njσtot,j)

nkσr,k∑

j

njσtot,j, (11)

where σr,k is the Doppler broadened reaction cross section and nj is the number of atomsper unit area of nuclide j. Only for very thin samples and/or small cross sections, such that∑

j

njσtot,j ≪ 1 , the reaction yield is directly proportional to the reaction cross section, i.e.

Yr,k ≈ nkσr,k.The experimental yield Yexp, i.e. the observable of a reaction cross section experiment, is

defined as the total observed count rate Cr which is corrected for its background contributionBr and divided by the neutron flux at the sample position:

Yexp = NrCr −Br

ϕ′, (12)

where parameters related to the detection of the reaction product and the absolute value of theneutron flux at a given energy are lumped together into one normalization factor Nr. This factoris determined at an energy where the theoretical yield is well known and only the shape of theneutron flux, i.e. its relative energy dependence denoted by ϕ′, needs to be determined. Sucha procedure is only valid when the parameters related to the detection of the reaction productare energy and nuclide independent.

For the analysis of any reaction cross section measurement the absolute or relative neutronflux as a function of neutron energy is essential. Such measurements rely on neutron inducedreactions for which the cross sections are known. Since the accuracies of these cross sectionsdirectly translate into the accuracy of the experimental yield Yexp, reactions for which the crosssections are considered as a standard [12] are preferred.

A flux measurement based on such standard cross sections is nothing else than a reactioncross section measurement. Therefore, Eq. (12) becomes [4]

Yexp = N ′r

Cr −Br

Cϕ −KBϕ

YϕTϕ

, (13)

where Yϕ is the theoretical yield for the flux measurements, Tϕ is the transmission through theflux chamber, and Cϕ and Bϕ are the total and background count rate for the flux measurement.

To prevent artificial structures in Yexp, due to structures in Yϕ and the finite response ofthe TOF-spectrometer, standard reactions with a smooth cross section as function of neutronenergy, such as the 10B(n,α)7Li reaction in the region below a few hundred keV, are preferred.

The ratioYϕ

Tϕis given by

YϕTϕ

= enϕσtot,ϕ(1− e−nϕσtot,ϕ

) σr,ϕσtot,ϕ

, (14)

where nϕ is the total areal density of the active layer in the flux measurement, σr,ϕ the Dopplerbroadened reaction cross section used to determine the flux and σtot,ϕ is the Doppler broadenedtotal cross section for neutron induced reactions in the active layer in the flux measurement.

The background for the flux measurement Bϕ can be deduced using the black resonancetechnique in a similar way as it is done for total cross section measurements (see Section 1.2).

8 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 12: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Also for neutron induced fission or charged particle reaction cross section measurements thebackground Br is mostly approximated by the black resonance technique. In case of capturemeasurements the total background contribution Br of the observed count rate is derived fromresults of additional measurements without a sample and with a purely scattering sample. Br

can be expressed as [4]

Br(t) = b0 +K1C0(t) +K2Rn(t) [Cscat(t)− C0(t)] , (15)

where b0 is a time independent contribution. C0 is the TOF-spectrum resulting from measure-ments with no sample. The third term of the sum takes into account the neutron sensitivity ofthe detection system due to neutrons that are scattered from the sample. Cscat are the countsfrom measurements with an almost purely scattering sample such as 208Pb. The correction fac-tor Rn is the ratio of the neutron scattering yield of the sample of interest and the scatteringsample. The factors K in Eq. (13) and K1 and K2 in Eq. (15) are used to include a correlateduncertainty component due to the background model.

1.4 Dead time correction

All count rate spectra obtained from a TOF experiment require a correction due to the dead timeof the detection system consisting of the detector, electronics, digitizers and data acquisitionsystem. In case of a fixed (non-extendable) dead time, the correction is well understood.

In a dead time correction procedure the counts N0(i) of channel i are corrected based on thecounts in the previous channels j which fall in the range of the dead time. If an event in thesechannels occurred then the channel i is blocked due to the dead time of detection system.

In the publication of Moore [13] several models to correct for the dead time are given.Assuming a stable beam the corrected counts Nc(i) in channel i are given by

Nc(i) = N0(i)/

1−i−1∑

j=i0

N0(j)/Nb

, (16)

where Nb is the total number of bursts. The dead time of the detection system corresponds tothe difference in channels i− i0. In case of a varying beam intensity the corrected counts Nc(i)can be determined by

Nc(i) = Nb

− ln

1−N0(i)/Nb

[

1−i−1∑

j=i0

N0(j)/Nb

]

/

1− σ tanh

σi−1∑

j=i0

Nc(j)/Nb

, (17)

where σ2 is the relative variance of the beam intensity. Since the dead time correction ofchannel i depends on the counts in other channels the dead time correction is by definition nota channel-to-channel operation (see Section 2.2).

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 9

Page 13: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

2 Uncertainty propagation

2.1 Generalized law of uncertainty propagation

Suppose that a quantity ~Z is deduced from the spectra (~Z1, . . . , ~Zp) and the parameter vector~b = (b1, . . . , bq) through a function

~Z = f(~Z1, . . . , ~Zp,~b). (18)

The covariance matrix V~Zof ~Z can be derived by applying the generalized law of uncertainties

propagation (GLUP) as defined in the Guide to the Expression of Uncertainty in Measurement(GUM) [14]. This law is based on a first-order Taylor series. In case the spectra (~Z1, . . . , ~Zp)

and the parameter ~b are independent, the covariance matrix of ~Z becomes

V~Z=

p∑

j=1

Dh(~Zj)V~ZjDT

h (~Zj) +Dh(~b)V~b

DTh (~b), (19)

with Dh( ~Zj) and Dh(~b) being the sensitivity matrices with respect to ~Zj and ~b, respectively. Toapply Eq. (19) the full covariance matrices have to be stored and used in the calculations. Inaddition, the resulting covariance matrix V~Z

does not yield any information about the originaluncertainty components and no differentiation between correlated and uncorrelated componentscan be made.

2.2 AGS formalism for uncertainty propagation of TOF-cross section data

When the different steps involved in the measurement and data reduction process are fullyunderstood and documented, specific properties of the covariance matrix can be used and aconcept can be established such that the impact of each uncertainty component can be identifiedat all times [1, 2, 3]. In addition, the GLUP can be simplified in terms of data storage andarithmetics.

The result of a TOF experiment are usually counting histograms which can be representedby a vector ~Y of dimension m consisting of count numbers (y1, y2, . . . , ym). Since the numbersare the result of a counting experiment their uncertainties are not correlated. The covariancematrix U~Y

of such a histogram contains only diagonal terms and the full covariance information

can be stored into a vector ~U~Y. The elements of this vector are the estimates of the variances

~U~Y= (u2y1 , . . . , u

2ym) of the observed counts ~Y = (y1, . . . , ym). In most cases these estimates of

~U~Yare based on Poisson statistics.In the data reduction usually several operations are carried out involving initial counting

histograms and a parameter vector ~b. The uncertainty on the elements (b1, . . . , bk) introduces acorrelated uncertainty component in the uncertainty on the result of the data reduction. Theelements of ~b may be correlated with a covariance matrix V~b

which contains also non-diagonalelements. Such a covariance matrix is by definition symmetric and positive definite. In this casethe Cholesky transformation [1] can be applied. The matrix V~b

can be decomposed as

V~b= L~b

LT~b, (20)

where L~bis a lower triangular matrix of dimension (k × k) and LT

~bdenotes the conjugate

transpose of L~b.

10 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 14: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Consider now that the data reduction results in a quantity ~Z that is deduced from pcounting spectra (~Y1, . . . , ~Yp) and the parameter vector ~b through the functional relationship~Z = f(~Y1, . . . , ~Yp,~b). Each of the spectra has a dimension n. The dimension of the parametervector is m. Taking into account the specific property of counting spectra and supposing thatthe relationship f only involves channel-to-channel operations, the covariance matrix of ~Z canbe split into an uncorrelated and correlated component:

V~Z=

p∑

j=1

Df (~Yj)U~YjDT

f (~Yj)

︸ ︷︷ ︸

uncorrelated

+Df (~b)V~bDT

f (~b)

︸ ︷︷ ︸

correlated

, (21)

The first term is a diagonal matrix containing the uncorrelated component of the covariancematrix of ~Z and can be denoted by U~Z

. Application of the Cholesky transformation on the

covariance matrix V~b= L~b

LT~b

results in

V~Z= U~Z

+Df (~b)L~bLT~bDT

f (~b). (22)

By defining the S~Z(~b) matrix of ~b as

S~Z(~b) = Df (~b)L~b

, (23)

Eq. (22) can be replaced by

V~Z= U~Z

+ S~Z(~b)ST

~Z(~b). (24)

Eq. (24) reveals that the full covariance information of ~Z is contained in a vector ~U~Zwith

length n and a matrix S~Zof dimension (n x m). The former is the sum of all uncorrelated

uncertainty components, while the latter represents the contribution of each component resultingin a correlated contribution.

In the previous paragraph the quantity ~Z was derived in one step from a set of spectrabased on one functional relationship. The same principles can be applied in case ~Z is obtainedfrom successive operations on spectra. Let us assume that the spectra ~Z1 and ~Z2 have beenderived from a set of counting spectra through the relations ~Z1 = f1(~Y1, . . . , ~Yq,~b1) and ~Z2 =

f2(~Yr, . . . , ~Yw,~b2) and that ~Z is given by ~Z = g(~Z1, ~Z2,~c). The covariances of ~Z1 and ~Z2 aregiven by V~Z1

= U~Z1+ S~Z1

ST~Z1

and V~Z2= U~Z2

+ S~Z2ST

~Z2, respectively. If the counting spectra

~Y1, . . . , ~Yq, ~Yr, . . . , ~Yw and the parameter vectors ~c, ~b1, ~b2 are mutually not correlated then the

covariance matrix of ~Z, with application of GLUP, becomes

V~Z=

2∑

j=1

Dg(~Zj)V~ZjDT

g (~Zj) +Dg(~c)V~cDTg (~c). (25)

The covariance structure of Eq. (25) can only be used if the parameter vectors involved in thefunctional relationships are mutually independent and each spectrum ~Y is used in only onestep. For example, when in the data reduction of a transmission measurement the sample-inand sample-out background are the same, the background correction can not be done separately,but it has to be performed in one single step.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 11

Page 15: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Using the AGS notation of the covariance matrices of ~Z1 and ~Z2 and the Cholesky transfor-mation V~c = L~cL

T~c the covariance matrix V~Z

is then expressed by

V~Z=

2∑

j=1

Dg(~Zj)U~ZjDT

g (~Zj)

︸ ︷︷ ︸

uncorrelated

+2∑

j=1

Dg(~Zj)S~Zj(~bj)S

T~Zj(~bj)D

Tg (~Zj) +Dg(~c)L~cL

T~c D

Tg (~c)

︸ ︷︷ ︸

correlated

. (26)

The uncorrelated part of V~Zis again a diagonal matrix ~U~Z

while the correlated part can becombined into a new S-matrix by using the concatenation

S~Z=

[

Dg(~Z1)S~Z1Dg(~Z2)S~Z2

Dg(~c)L~c

]

. (27)

S~Zis a matrix with the dimension (n×m) with m = k+m1 +m2 where k, m1 and m2 are the

dimension of the parameter vectors ~c, ~b1, ~b2, respectively. Finally, the covariance matrix of ~Zbecomes

V~Z= U~Z

+ S~ZST

~Z. (28)

The covariance representation in Eq. (28) results in a substantial reduction of storage space whenthe dimension n of the spectra is much larger than the total number m of correlated uncertaintycomponents. The classical covariance matrix representation requires storage of n × (n + 1)/2numbers. The scheme of Eq. (28) needs only n× (m+ 1) numbers. The procedure also ensuresthat the covariance matrix is always well defined, i.e. symmetric and positive definite. Inaddition, the correlated and uncorrelated uncertainties are well separated and the impact of eachpart of the process resulting in a correlated uncertainty can be verified. The procedure, however,requires that all steps in the data reduction process are well understood and described, and thatthe data reduction starts from spectra which are only subject to uncorrelated uncertainties.

12 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 16: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

3 Data analysis

3.1 Parameter estimation

The results of a data reduction procedure of TOF data is commonly used for parameter estima-tion of nuclear reaction models using for example resonance shape analysis codes like REFIT [15].The estimated parameters can be obtained by a least squares adjustment, that is by minimizingthe expression

χ2(~θ) =(

~Zexp − ~Zm(~θ))T

V−1~Zexp

(

~Zexp − ~Zm(~θ))

, (29)

where ~Zm(~θ) is the model describing the experimental data ~Zexp, with covariance matrix V~Zexp,

and ~θ are the model parameters. The minimum condition of Eq. (29) is equivalent to a maximumlikelihood when the probability distribution of the observable is a normal distribution [16, 17].The fitted parameters, describing in the best way the experimental data, can be found in aniterative way by searching for the steepest decent. For a linear model the minimum is also foundfor

~θ =(

GT~θV−1

~ZG~θ

)−1 (

GT~θV−1

~Z~Zexp

)

, (30)

where the sensitivity matrix G~θhas as elements the partial derivatives of ~Zexp with respect

to ~θ. The quality of the fit can be verified by comparing the χ2 per degree of freedom withits expectation value in case the observable follows a normal distribution. For an adequatedescription of the data this value approaches unity for a large number of degrees of freedom ν[18].

Results of a least squares adjustment might be biased when the model is non-linear and theestimator of the covariance matrix is not well defined, e.g. due to the presence of a correlatednormalization component together with a strong scattering of the data around the estimatedvalue (see Becker et al. [3] and references therein). This problem, known as Peelle’s PertinentPuzzle (PPP), can be avoided by using only the uncorrelated uncertainty component of V~Zexp

in the calculation of Eq. (29) and (30) which is easily accessible when the AGS formalism (seeSection 2.2) is used in the data reduction.

3.2 Estimation of the total covariance of estimated parameters

If the result of the data reduction is used in parameter estimation by fitting, maintaining the sep-aration of the correlated and uncorrelated uncertainty components in the AGS format (Eq. (28))is convenient for the determination of the final uncertainty of the fitted parameters. The covari-ance of the final spectra can be propagated towards the covariance of the fitted parameters bymeans of conventional uncertainty propagation, Monte Carlo [19] or marginalization [20].

3.2.1 Conventional uncertainty propagation

Suppose that the parameter vector ~θ with p elements is determined in a least squares fit of amodel F (~θ) to the result of the data reduction ~Z. Following conventional uncertainty propaga-tion, the covariance of these estimated parameters is then

V~θ=

(

DTF (

~θ)V−1~ZDF (~θ)

)−1, (31)

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 13

Page 17: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

where the covariance matrix V~Zcontains both uncorrelated and correlated components. DF (~θ)

contains the derivatives of the model with respect to ~θ. If the data vector ~Z consists of a signif-icant number of elements n, then the inversion of its full covariance matrix V~Z

with dimension(n×n) in Eq. (31) is computationally very challenging. Using the AGS format of the covariancematrix given in Eq. (28) the inversion of the full covariance matrix can be avoided. IntroducingEq. (28) in Eq. (31) leads to

V~θ=

(

DTF (

~θ)(

U~Z+ S~Z

ST~Z

)−1DF (~θ)

)−1

. (32)

By using the Woodbury matrix identity [21] the inner term(

U~Z+ S~Z

ST~Z

)−1can be transformed:

(

U~Z+ S~Z

ST~Z

)−1= U−1

~Z−U−1

~ZS~Z

(

I+ ST~ZU−1

~ZS~Z

)−1ST

~ZU−1

~Z, (33)

with I being the identity matrix. On the righthand side of Eq. (33) only the uncorrelated part

of the covariance matrix and the term(

I+ ST~ZU−1

~ZS~Z

)

need to be inverted. The latter is a

(m×m) matrix with m being the number of correlated uncertainty components. The inversionof these two terms can be done significantly more efficient than inverting V~Z

. Inserting Eq. (33)into Eq. (32) gives

V~θ=

(

DTF (

~θ)U−1~ZDF (~θ)−DT

F (~θ)U−1

~ZS~Z

(

I+ ST~ZU−1

~ZS~Z

)−1ST

~ZU−1

~ZDF (~θ)

)−1

. (34)

A similar procedure called implicit data covariance method has also been applied in ref. [22].

Eq. (34) can be simplified by introducing K = DTF (

~θ)U−1~ZS~Z

which is a (p×m) matrix:

V~θ=

(

DTF (

~θ)U−1~ZDF (~θ)−K

(

I+ ST~ZU−1

~ZS~Z

)−1KT

)−1

. (35)

By defining the contribution of the uncorrelated uncertainty on the parameter covariance as

VU~θ=

(

DTF (

~θ)U−1~ZDF (~θ)

)−1(36)

and re-applying the Woodbury matrix identity one obtains

V~θ= VU

~θ+VU

~θK

(

I+ ST~ZU−1

~ZS~Z

−KTVU~θK)−1

KTVU~θ, (37)

where the second term is a correction ofVU~θdue to correlated contributions in the data covariance

matrix.

3.2.2 Monte Carlo

In case of a Monte Carlo uncertainty propagation, the representation of the correlated uncer-tainty in terms of the S-matrix is very practical. Since each column of the S-matrix denotes thesensitivity of the final spectrum to the uncertainty of a specific parameter, one can directly usethe S-matrix to sample the perturbation of the final spectrum under a first-order Taylor series

14 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 18: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

expansion assumption. Each column of the matrix is then multiplied with a Gaussian sampledrandom number. The qth sampled final spectrum ~Z(q) is obtained by

~Z(q) = ~Z + S~Z~r(q), (38)

where ~r is a vector of m Gaussian sampled random numbers. Note that in this approachsecond order effects are not taken into account. Every sampled spectrum is then used to fit theparameter vector ~θ(q). The final covariance matrix of the adjusted parameters is obtained usingthe total covariance theorem of Ref. [19] given by

(

VMC~θ

)

(i,j)= E

[(

VU~θ

)(q)

(i,j)

]

+ Cov[

θ(q)i , θ

(q)j

]

. (39)

The first term is the average of q covariance matrices due to only the uncorrelated uncertaintycomponent of the data. The second term is a correction of the average taking into account thevariation of the fitted parameters due to different samplings.

3.2.3 Marginalization

Using the AGS format of the covariance matrix is also convenient for the application of themarginalization procedure of Ref. [20]. If there is no correlation between the fitted parameters~θ and model/experimental parameters ~b, such as a normalization, the marginalized covariancematrix is obtained using

VMar.~θ

=(

DTF (

~θ)DF (~θ))−1

DTF (

~θ)(

DF (~θ)VU~θDT

F (~θ))

DF (~θ)(

DTF (

~θ)DF (~θ))−1

︸ ︷︷ ︸

uncorrelated

+(

DTF (

~θ)DF (~θ))−1

DTF (

~θ)(

DF (~b)V~bDT

F (~b))

DF (~θ)(

DTF (

~θ)DF (~θ))−1

︸ ︷︷ ︸

correlated

, (40)

where V~bis the covariance matrix of ~b. DF (~θ) and DF (~b) contain the derivatives of the model

with respect to ~θ and ~b. The parameter uncertainty due to the uncorrelated component of thedata covariance matrix if given by VU

~θand defined in Eq. (36). With

DF (~b)V~bDT

F (~b) ≈ S~Z

ST~Z

(41)

the marginalized covariance matrix is obtained by adding the covariance matrix evaluated afterthe fit VU

~θand the marginalized correlated uncertainty component:

VMar.~θ

≈ VU~θ+(

DTF (

~θ)DF (~θ))−1

DTF (

~θ)S~ZST

~ZDF (~θ)

(

DTF (

~θ)DF (~θ))−1

. (42)

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 15

Page 19: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4 The AGS code

The AGS concept of uncertainty propagation (see Section 2.2) has been fully implemented intothe AGS code. This code package has been developed at the GELINA time-of-flight facility [8]of the EC-JRC-IRMM as a tool to perform the data reduction of TOF data including a fulluncertainty propagation. The data reduction using the AGS code is conceptually broken downinto sequential operations. Each operation is performed with a stand-alone program which readsand writes into a common archive file. This archive file does not only contain all spectra anduncertainty components, but also keeps track of the operations, parameters and uncertaintiesthat have been used to produce a specific spectrum. Therefore, all intermediate results of a datareduction procedure are fully documented and can, if needed, be used for further analysis.

The AGS package contains all basic spectrum operations such as arithmetic operations andspectrum manipulations e.g. linear combination of different spectra. In addition, more advancedoperations such as dead time correction, least squares background fitting, reading of data his-tograms as well as of data files in ENDF format [23], conversion from time-of-flight to energy,projection of spectra on different time axes and bin averaging are included. The resulting covari-ance information can be displayed either in the AGS format (U~Z

and S~b – see Equation (24))or as a full covariance or correlation matrix. Table 1 and 2 summarize the available commandsordered alphabetically and in categories, respectively.

The AGS code package has been written in the programming language C. Every command isprogrammed in a separate file using a common set of header files. In these header files commonfunctions such as reading and writing to the archive file are defined. The compilation of thecode has been tested under Linux (32 bit) using the GNU Compiler Collection (gcc) and underWindows 7 (64-bit) using Microsoft Visual Studio 10. Note that the AGS code assumes that along integer has the length of 32-bit while a double has the length of 64-bit. This means thatcode can only be compiled on a 64-bit machine if the LLP64 data model is used and not LP64or ILP64.

In practice, the different steps of a data reduction are best composed into a script such asbash under Linux or batch scripting under Windows. This allows for an easy way to define inputparameters and data paths as well as to rerun a full data reduction procedure. In Section 5several scripts are given as examples of a full data reduction procedure.

4.1 AGS commands

A typical AGS procedure starts with the creation of an AGS archive file followed by the definitionof some experimental parameters (e.g. contents of scalers, dead time coefficient) and the readingin of one or multiple count-rate spectra. Subsequently multiple channel-to-channel operationare carried out on the spectra and the final result including the full covariance information inAGS format is printed out. The archive file stores the results of the operations in a well-definedand structured way, as will be explained in Section 4.2.

Table 1 and Table 2 give an overview of the available AGS commands in alphabetical orderand ordered in categories, respectively. In Section 4.2 the common syntax of the AGS commandsis explained. The syntax of each command is explained in sections 4.2.1 to 4.2.33.

16 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 20: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Table 1: Alphabetic list of AGS commands

Name Purpose section

ags addval Add a constant to a spectrum 4.2.1ags avrg Division of spectrum by bin widths 4.2.2ags divi Division of two spectra 4.2.3ags divval Division of a spectrum by a constant 4.2.4ags dtco Dead time correction 4.2.5ags ener Conversion of bin boundaries from TOF to energy 4.2.6ags exp Exponential of a spectrum 4.2.7ags fit Fitting a spectrum 4.2.8ags fpa Flight path adjustment 4.2.9ags func Generate spectrum using a function 4.2.10ags fxyp Special spectrum operation 4.2.11ags getA Import a spectrum from an AGS archive file 4.2.12ags getE Import cross section data from an ENDF formated file (file 3) in

energy4.2.13

ags getET Import cross section data from an ENDF formated file (file 3) inTOF

4.2.14

ags getH Import a histogram (integers) 4.2.15ags getW Import a weighted histogram 4.2.16ags getXY Import a spectrum 4.2.17ags getY Import a histogram 4.2.18ags inv Inverse a spectrum 4.2.19ags lico Linear combination of spectra 4.2.20ags lift Interpolate spectrum on different grid 4.2.21ags log Natural logarithm of a spectrum 4.2.22ags mpty Creation of an empty AGS archive file 4.2.23ags mult Multiplication of two spectra 4.2.24ags multval Multiplication of a spectrum with a constant 4.2.25ags putCM Print covariance matrix 4.2.26ags putX Print spectra and uncertainty components 4.2.27ags scan Print content of AGS archive file 4.2.28ags shift Shift grid boundaries 4.2.29ags subval Subtraction of a constant from a spectrum 4.2.30ags title Print title of AGS archive file 4.2.31ags tof Conversion of bin boundaries from energy to TOF 4.2.32ags unav Multiply spectrum with bin widths 4.2.33

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 17

Page 21: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Table 2: List of AGS commands by category

Name Purpose section

Creation of AGS library file and data import

ags getA Import a spectrum from an AGS archive file 4.2.12ags getE Import cross section data from an ENDF formated file (file 3) in

energy4.2.13

ags getET Import cross section data from an ENDF formated file (file 3) inTOF

4.2.14

ags getH Import a histogram (integers) 4.2.15ags getW Import a weighted histogram 4.2.16ags getXY Import a spectrum 4.2.17ags getY Import a histogram 4.2.18ags mpty Creation of an empty AGS archive file 4.2.23

Basic channel-to-channel, arithmetic operations

ags addval Add a constant to a spectrum 4.2.1ags divval Division of a spectrum by a constant 4.2.4ags multval Multiplication of a spectrum with a constant 4.2.25ags subval Subtraction of a constant from a spectrum 4.2.30

Channel-to-channel, spectrum operations

ags avrg Division of spectrum by bin widths 4.2.2ags divi Division of two spectra 4.2.3ags dtco Dead time correction 4.2.5ags ener Conversion of bin boundaries from TOF to energy 4.2.6ags exp Exponential of a spectrum 4.2.7ags fit Fitting a spectrum 4.2.8ags fpa Flight path adjustment 4.2.9ags func Generate spectrum using a function 4.2.10ags fxyp Special spectrum operation 4.2.11ags inv Inverse a spectrum 4.2.19ags lico Linear combination of spectra 4.2.20ags lift Interpolate spectrum on different grid 4.2.21ags log Natural logarithm of a spectrum 4.2.22ags mult Multiplication of two spectra 4.2.24ags shift Shift grid boundaries 4.2.29ags tof Conversion of bin boundaries from energy to TOF 4.2.32ags unav Multiply spectrum with bin widths 4.2.33

Output operations

ags putCM Print covariance matrix 4.2.26ags putX Print spectra and uncertainty components 4.2.27ags scan Print content of AGS archive file 4.2.28ags title Print title of AGS archive file 4.2.31

18 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 22: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2 Syntax

A typical AGS command starts with the name of the operation (executable), like “ags lico” in:

ags_lico jun1317,A01TOF1,B01FLUX /PAR=1.3,0.78 /ALIAS=COMBO /COV=0.01,-0.005,0.02

The first argument always contains the name of the AGS archive file, mostly followed by thenames of spectra to be used as operands. In case more than one operand or filenames arepresent, they should be separated by commas and not by embedded blanks. In the exampleabove the operands are the spectra A01TOF1 and B01FLUX which are stored in the AGS file“jun1317.ags”. The other arguments (2rd , 3th, 4th, etc.) are couples made of a literal Qualifierthat is preceded by a slash (e.g. /PAR and /ALIAS) and a numeric or literal Value string(e.g. 1.3, 0.78 and COMBO, respectively ). An equal sign (or in some cases a blank) is used toseparate the Qualifier and the Value string. The Value string consists of one or more literal ornumerical values separated by commas. Blanks are not allowed as separators in a Value string.The order of the qualifier/value couples in the command line is not important. Depending on thecommand, some qualifiers may be mandatory and others may be optional. In case the qualifieris optional, a default value will be assigned to the corresponding parameter that is used in theexecution of the command.

In the sections 4.2.1 to 4.2.33 the syntax of each AGS command is defined and explained.Optional qualifiers are put in square brackets [ ] and alternative qualifiers in curly parentheses{ .. — .. }. When the command produces one or more spectra as results, the names of theresulting spectra are built by the command. They always start with a prefix which is definedby the number of operations that have been performed before the current operation. The prefixwill be an A in case the command is the 1st operation, a B for the 2nd operation, etc.... Thisprefix will be followed by 2 digits which are always 01 (except in case of ags getW ) and furtherfollowed by a name inherited from a previous operation, generated by the command or requestedusing the /ALIAS qualifier. For example, if the command on the top of this page was the 6th

operation it will produce a spectrum with a prefix F and full name F01COMBO. The prefix inthe archive file is only incremented by operations that produce a new spectrum. For example thecommand ags putX only produces an output and no new spectrum. Hence, after the executionof this command the prefix will not be incremented.

When reading vectorized data from ASCII files using ags getW , ags getXY and ags getY

it is assumed that data have only uncorrelated uncertainties. Any possible correlation has tobe added using AGS commands. In case of ags getH (and under certain conditions also in caseof ags getW , ags getXY and ags getY – see command descriptions) the data in the files areassumed to be counting histograms implying that the uncorrelated uncertainty is given by thesquare root of the counts.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 19

Page 23: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.1 ags addval

Operation: Adds a constant value a to the spectrum ~Y :

~Z = ~Y + a

Syntax:

ags_addval <file>,<spect> /VAL=value[,uncertainty] [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /VAL (mandatory)value: mandatoryuncertainty: optional

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Examples:

• Assuming the second operation in the AGS archive file “archive” is

ags_addval archive,A01SIN /VAL=1.,0.01 /ALIAS=NET /DEBUG=0

the spectrum “B01NET” is added to the AGS archive file “archive”.

• Assuming the third operation in the AGS archive file “archive” is

ags_addval archive,A01SIN /VAL=1.,0.01 /DEBUG=0

the spectrum “C01SIN” is added to the AGS archive file “archive”.

20 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 24: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.2 ags avrg

Operation: Divides each value of ~Y by its bin width, i.e. difference of the X-bounds. Thedivision by a value specified by the qualifier /CMSC is optional.Syntax:

ags_avrg <file>,<spect> [/CMSC=position] [/ALIAS=..] [/DEBUG=..].

Operands: AGS spectrum <spect>

Qualifiers:

• /CMSC (optional) Position of a scaler used for normalization (usually Central MonitorSCaler). The scaler values are defined during the reading of the initial spectrum (usinge.g. ags getH or ags getW)

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Examples:

• Assuming the second operation in the AGS archive file “archive” is

ags_avrg archive,A01SIN /CMSC=1 /ALIAS=NET /DEBUG=0

the spectrum “B01NET” is added to the AGS archive file “archive”.

• Assuming the third operation in the AGS archive file “archive” is

ags_avrg archive,A01SIN /CMSC=1 /DEBUG=0

the spectrum “C01SIN” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 21

Page 25: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.3 ags divi

Operation: Divides spectrum ~Y1 by spectrum ~Y2:

~Z =~Y1~Y2

Division by zero gives zero.Syntax:

ags_divi <file>,<spect1>,<spect2> [/ALIAS=..] [/DEBUG=..]

Operands: two ags spectra:<spect1> : numerator<spect2> : denominator

Qualifiers:

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: DIVI).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the numerator.Examples:

• Assuming the third operation in the AGS archive file “archive” is

ags_divi archive,A01SIN,B01SOUT /ALIAS=NET /DEBUG=0

the spectrum “C01NET” is added to the AGS archive file “archive”.

• Assuming the third operation in the AGS archive file “archive” is

ags_divi archive,A01SIN,B01SOUT /DEBUG=0

the spectrum “C01DIVI” is added to the AGS archive file “archive”.

22 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 26: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.4 ags divval

Operation: Divides the spectrum ~Y by a constant a:

~Z =~Y

a

Syntax:

ags_divval <file>,<spect> /VAL=value[,uncertainty] [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /VAL (mandatory)value: mandatoryuncertainty: optional

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example:

• Assuming the second operation in the AGS archive file “archive” is

ags_divval archive,A01SIN /VAL=2.,0.01 /ALIAS=NET /DEBUG=0

the spectrum “B01NET” is added to the AGS archive file “archive”.

• Assuming the second operation in the AGS archive file “archive” is

ags_divval archive,A01SIN /VAL=2.,0.01 /DEBUG=0

the spectrum “C01SIN” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 23

Page 27: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.5 ags dtco

Operation: Calculates the dead time correction factor and applies this correction on a spec-trum.Syntax:

ags_dtco <file>,<spect> /BASE=<b1>,..,<bn> /DTIME=dt1,..,dtn /DTUNC=.. /LPSC=..

/TYPE=.. /COEFF=.. [/L_OR_D=..] [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /BASE (mandatory) Names of n spectra (1 ≤ n ≤ 7) holding all events to be consideredin the dead time calculation.

• /DTIME (mandatory) n values of the dead time for the /BASE spectra

• /LPSC (mandatory) Linac Pulse SCaler position in scaler sequence associated to the spec-trum during read-in (total number of bursts).

• /DTUNC (mandatory) Uncertainty on dead times

• /TYPE (mandatory) Type of dead time correction =1 or 2 (see additional information).

• /COEFF (mandatory if /TYPE=2) Coefficient for the type 2 correction. It is the relativestandard deviation of the beam intensity variation.

• /L OR D (optional) L or D indicating the format of the data (long or double). Default islong.

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: Dead time corrected spectra with a new prefix and with the name given by the /ALIASqualifier or inherited from the operand. The spectrum, named CSUM, contains the cumulativesum of the counts in the spectra specified in the /BASE qualifier. The spectrum, named DTCF,is the dead time correction factor that was applied.Examples:

• Assuming the fourth operation in the AGS archive file “archive” is

ags_dtco archive,C01SIN /BASE=A01BAS /DTIME=2050 /DTUNC=5. /TYPE=1 /LPSC=1 /ALIAS=DEAD

the spectra “D01DEAD”, “D01CSUM” and “D01DTCF” are added to the AGS archivefile “archive”. For the dead time correction Eq. (16) is used.

• Assuming the fourth operation in the AGS archive file “archive” is

24 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 28: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

ags_dtco archive,C01SIN /BASE=A01BAS /DTIME=2050 /DTUNC=5. /TYPE=2 /LPSC=1 /COEFF=0.05

the spectra “D01SIN”, “D01CSUM” and “D01DTCF” are added to the AGS archive file“archive”. For the dead time correction Eq. (17) is used. This correction accounts for a5% variation in the beam intensity.

Additional information: The dead time correction in AGS is based on Eq. (1) and Eq. (10)of the ref. [13] for /TYPE=1 and /TYPE=2, respectively. If /TYPE=1 then:

Nc(i) = N0(i)/

1−i−1∑

j=i0

N0(j)/Nb

,

where Nc(i) and N0(i) are dead time corrected and uncorrected counts in channel i. Nb is thenumber of bursts. The dead time is given in channels by the difference I − I0. If /TYPE=2then:

Nc(i) = Nb

− ln

1−N0(i)/Nb

[

1−i−1∑

j=i0

N0(j)/Nb

]

/

1− σ tanh

σi−1∑

j=i0

Nc(j)/Nb

,

where σ is the relative standard deviation of the beam intensity specified by /COEFF.Note that since the dead time correction of channel i depends on the counts in other channels

the dead time correction is by definition not a channel-to-channel operation.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 25

Page 29: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.6 ags ener

Operation: Converts the X-bounds ( ~XL and ~XH ) from a time scale to an energy scale usingthe flight path length specified in the qualifier /FPATH. Above 5 eV the calculation is fullyrelativistic, below 5 eV a cubic expansion in (v/c)2 up to the third order is applied. Thecontents of channels with a time-of-flight corresponding to a velocity larger than c are set to 0and the energy is set to -1.Syntax:

ags_ener <file>,<spect> /FPATH=.. [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /FPATH (mandatory) Length in meters of the neutron flight path

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Examples:

• Assuming the second operation in the AGS archive file “archive” is

ags_ener archive,A01SIN /FPATH=33.2 /ALIAS=ENY /DEBUG=0

the spectrum “B01ENY” is added to the AGS archive file “archive”.

• Assuming the third operation in the AGS archive file “archive” is

ags_ener archive,A01SIN /FPATH=33.2 /DEBUG=0

the spectrum “C01SIN” is added to the AGS archive file “archive”.

26 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 30: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.7 ags exp

Operation: Calculates the exponential of a spectrum ~Y :

~Z = e~Y

Syntax:

ags_exp <file>,<spect> [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Examples:

• Assuming the second operation in the AGS archive file “archive” is

ags_exp archive,A01SIN /ALIAS=NET /DEBUG=0

the spectrum “B01NET” is added to the AGS archive file “archive”.

• Assuming the third operation in the AGS archive file “archive” is

ags_exp archive,A01SIN /DEBUG=0

the spectrum “C01SIN” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 27

Page 31: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.8 ags fit

Operation: Fits parts of a spectrum with a non-linear function by χ2-minimization.Syntax:

ags_fit <file>,<spect> /FUN=.. {/GROUPS=..|ZONES=..}

/GUESS=.. [/FIX=..] [/LIKE=..] [/NITER=..]

[/CHIDIF=..] [/UNC=..] [/VERBOSE=..] [/ALIAS=..] [/POINTS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /FUN (mandatory) Character identifier of fitting function. The available functions aregiven in Table 3.

• /GROUPS (optional, supersedes /ZONES) defines the part of the spectrum that is usedfor the fit. The regions are defined by lower (xL,i) and higher (xH,i) boundaries on theX-values, which are defined by:

xL,1, xH,1,K1, xL,2, xH,2,K2, . . .

where xL,i and xH,i are floating point values and Ki is a positive integer.If Ki = 0 then all channels with xL,i < x < xH,i are averaged to one observation.If Ki = 1 then all channels in the group are taken individually.if Ki = n with n > 1 then the channels in the group i are averaged by subgroups of nchannels.

• /ZONES (mandatory in absence of /GROUPS) Defines the part of the spectrum that isused for the fit. The regions are defined by lower (chL,i) and higher (xH,i) boundaries onthe channel number (ch), which are defined by:

chL,1, chH,1,K1, chL,2, chH,2,K2 . . .

where chL,i and chH,i are integer zone limits and Ki is a positive integer defined like above.

• /POINTS (optional) Add additional data points for the fit. The data are read from a datafile, in the form /POINTS=filename,c1,c2,c3, where ’filename’ is the name of the file in thecurrent directory containing columns with data with (x, y, uy) in the columns (c1, c2, c3).If c3 is not given, uy is taken equal to 1. Lines starting with a ’#’ are not read.

• /GUESS (mandatory) Starting values of the fitting parameters. The code expects thecorrect number of parameters depending on the chosen function. Note that in case of/FUN=POLY the degree of the polynomial is chosen according to the number of givenparameters.

• /FIX (optional) The indexes of parameters which are kept fixed and are not adjusted. Theindex numbering starts with 1.

• /LIKE (optional) The name of the target spectrum that defines the x-values for which theanalytical function will be computed using the final parameters after the adjustment. Bydefault, the x-values of the operand are taken.

28 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 32: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

• /NITER (optional) Number of maximum iterations (default: 50)

• /CHIDIF (optional) Maximum difference of the χ2 at which the iteration will be stopped(default: 0.001)

• /UNC (optional) Additional fitting/output option:If /UNC=CHI: the uncertainties of the data points is multiplied by χ2 and the fit is redone.

• /VERBOSE (optional) If /VERBOSE=1, the data, parameters and covariance matricesare printed on the screen.

• /ALIAS (optional) Name to be given to the spectrum that is calculated with the finalparameters. If not present, no spectra will be added to the file.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand. A spectrum with the name RAWDAT containing the input spectraldata (condensed by /GROUPS). The fitted parameters are stored in a spectrum with nameFITPAR. A spectrum with the name FIT containing the expansion of the fitted function ontarget X-bounds.Example: Assuming the fourth operation in the AGS archive file “archive” is

ags_fit archive,C01SIN \

/ALIAS=BKGIN \

/FUN=E3P0 \

/FIX=3,4,6,7,8,9,10 \

/GUESS=8.5e-8,1.88818e-6,-3.1e-5,0.,2.91358e-7,-1.9e-7,0.,5.6e-8,-4.00e-6,0 \

/ZONES=19474,19839,4,31141,31388,8,33794,33820,0

the spectra “D01BKGIN”, “D01RWADAT” and “D01FIT” are added to the AGS archive file“archive”.Additional information: Only the diagonal of the covariance matrix is considered in theχ2-minimization, which is justified for most applications.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 29

Page 33: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Table 3: List of available functions

/FUN=..

POLY∑

k≥1

pk xk−1

E0P0 p1

E1P0 p1 + p2ep3(x+p4)

E2P0 p1 +1∑

k=0

p(3k+2)ep(3k+3)(x+p(3k+4))

E3P0 p1 +2∑

k=0

p(3k+2)ep(3k+3)(x+p(3k+4))

E0P1 p1 + p2 (x+ p4)p3

E1P1 p1 + p2ep3(x+p4) + p5 (x+ p7)

p6

E2P1 p1 +1∑

k=0

p(3k+2)ep(3k+3)(x+p(3k+4)) + p8 (x+ p10)

p9

E3P1 p1 +2∑

k=0

p(3k+2)ep(3k+3)(x+p(3k+4)) + p11 (x+ p13)

p12

E0P2 p1 +1∑

j=0p(3j+2)

(x+ p(3j+4)

)p(3j+3)

E1P2 p1 + p1ep2(x+p3) +

2∑

j=1p(3j+2)

(x+ p(3j+4)

)p(3j+3)

E2P2 p1 +1∑

k=0

p(3k+2)ep(3k+3)(x+p(3k+4)) +

3∑

j=2p(3j+2)

(x+ p(3j+4)

)p(3j+3)

E3P2 p1 +2∑

k=0

p(3k+2)ep(3k+3)(x+p(3k+4)) +

4∑

j=3p(3j+2)

(x+ p(3j+4)

)p(3j+3)

30 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 34: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.9 ags fpa

Operation: Performs a transformation of variables to change the flight path length and includesthe re-binning of a spectrum to the time-boundaries of a target spectrum. The transformationis based on:

L1

tm,1=

L2

tm,2

This operation should only be applied on raw (weighted) data.Syntax:

ags_fpa <file>,<spect> /LIKE=.. /FPATH1=.. /FPATH2=.. [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /FPATH1 (mandatory) Fligth path length of the original spectrum.

• /FPATH2 (mandatory) Fligth path length of the target spectrum.

• /LIKE (mandatory) Target spectrum defining the X-values to rebin the original spectrumafter the transformation.

• /ALIAS (optional) Name to be given to the imported spectra (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the second operation in the AGS archive file “archive” is

ags_fpa archive,A01SIN /FPATH1=25.0 /FPATH1=26.1 /LIKE=A01SIN /DEBUG=0

the spectrum “B01SIN” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 31

Page 35: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.10 ags func

Operation: Generates a spectrum using an analytical function and the input parameter vector~p.Syntax:

ags_func <file> /LIKE=.. /ALIAS=.. /FUN=.. /PAR=.. [/COV=..] [/DEBUG=..]

Operands: noneQualifiers:

• /LIKE (mandatory) The target spectrum defining the X-values that are used to calculatethe analytical function.

• /ALIAS (mandatory) Name to be given to the result.

• /FUN (mandatory) Character identifier of the function. The available functions are givenin Table 3.

• /PAR (mandatory) Vector of n parameters ~p = (p1, p2, . . . , pn). The code expects thecorrect number of parameters depending on the chosen function. Note that in case of/FUN=POLY the degree of the polynomial is chosen according to the number of givenparameters.

• /COV (optional) Covariance matrix V~p of the parameters. The number of covarianceterms must be either equal to n (diagonal covariance) or to n(n + 1)/2 (full covariancestored half-column wise). Half-column wise means:

/COV = (V~p)(1,1), (V~p)(1,2), (V~p)(2,2), (V~p)(1,3), (V~p)(2,3), (V~p)(3,3), . . . , (V~p)(n,n)

If there is no uncertainty on the parameters /COV may be omitted altogether.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier.Example: Assuming the second operation in the AGS archive file “archive” is

ags_func archive, /LIKE=A01SIN /FUN=E1P0 \

/PAR=1.0E-3,0.0046,6E-6,0.0 \

/COV=1.0E-8,0.0,0.0,0.0 \

/DEBUG=0

the spectrum “B01SFTH” is added to the AGS archive file “archive”.

32 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 36: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.11 ags fxyp

Operation: Performs user defined channel-to-channel operations using a set of input spec-tra (~Y1, . . . , ~Yn) and parameters defined in ~p. The input spectra should all have the sameX-boundaries. The operations are defined in the header file own.h.Syntax:

ags_fxyp <file>,<sp1>,<sp2>,.. /OWN=.. [/PAR=..] [COV=..] [/ALIAS=..] [/DEBUG=..]

Operands: ags spectra <sp1>,<sp2>, ..

Qualifiers:

• /OWN (mandatory) Identifier of the function.

• /PAR (mandatory If required by the function) Vector of n parameters ~p = (p1, p2, . . . , pn).

• /COV (optional) Covariance matrix V~p of the parameters. The number of covarianceterms must be either equal to n (diagonal covariance) or to n(n + 1)/2 (full covariancestored half-column wise). Half-column wise means:

/COV = (V~p)(1,1), (V~p)(1,2), (V~p)(2,2), (V~p)(1,3), (V~p)(2,3), (V~p)(3,3), . . . , (V~p)(n,n)

If there is no uncertainty on the parameters /COV may be omitted.

• /ALIAS (mandatory) Name to be given to the resulting spectrum.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier.Example: Assuming the fifth operation in the AGS archive file “archive” is

ags_fxyp archive,A01SIN,B01SOUT,C01BKGIN,D01BKGOUT \

/OWN=c02 /PAR=1.0 /COV=0.0009 \

/ALIAS=TX /DEBUG=1

the spectrum “E01TX” is added to the AGS archive file “archive”.

Additional information: The user can define channel to channel operations in a functionthat is specified in the file own.h. as own cX, where X is the number of the function. Thefunctions are then selected using the qualifier /OWN=cX. Up to 30 different functions can beprogrammed. The functions c01, c02 and c03 are predefined as:

• c01: calculation of the transmission ~T using:

~T =~Y1 − ~Y3~Y2 − ~Y3

,

where ~Y1,2,3 are input spectra.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 33

Page 37: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

• c02: calculation of the transmission ~T using:

~T =~Y1 − p1~Y3~Y2 − p1~Y4

,

where p0 is an input parameter and ~Y0,1,2,3 are input spectra.

• c03: calculation of the background ~B using:

~B1 = p1 + p2

(

~Y1 − p3

)

+ p4~Y2

[(

~Y3 − p5

)

−(

~Y1 − p3

)]

,

where p1,2,3,4,5 are input parameter and ~Y1,2,3 are input spectra.

34 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 38: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.12 ags getA

Operation: Imports a spectrum and its uncertainty components from an external AGS archivefile.Syntax:

ags_getA <file> /FROM=<ext.file>,<spec> /ALIAS=.. [/LIKE=..] [/DEBUG=..]

Operands: noneQualifiers:

• /FROM (mandatory) Name of the external AGS archive file <ext.file> (max 256 char,without suffix .ags), and spectrum name <spec>

• /ALIAS (mandatory) Name to be given to the resulting spectrum.

• /LIKE (optional) Name of the target spectrum from which the X-bounds will be taken

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier.Example: Assuming the first operation in the AGS archive file “archive” is

ags_getA archive /FROM=old_archive,L01NTX /ALIAS=TX

the spectrum “A01TX” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 35

Page 39: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.13 ags getE

Operation: Imports cross section data from an ENDF/B file (ASCII) and interpolates themon an existing energy grid.Syntax:

ags_getE <file> /FROM=<ENDF_file>,MAT,MT /ALIAS=.. [/LIKE=..] [/DEBUG=..]

Operands: none <spect>Qualifiers:

• /FROM (mandatory) Full name of the ENDF file, followed by the MAT number (material)and MT number (reaction) of the evaluation.

• /ALIAS (mandatory) Name to be given to the resulting spectrum.

• /LIKE (optional) Name of the target spectrum from which the energy bounds will betaken.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier andwith the same Xbounds as the /LIKE target spectrum. In absence of a target spectrum, theresult has the same single point X data (energy data) as the ENDF file.Example: Assuming the second operation in the AGS archive file “archive” is

ags_getE archive /FROM=endfB10,,525,1 /LIKE=A01CAPT /ALIAS=B10NT /DEBUG=1

the spectrum “B01B10NT” is added to the AGS archive file “archive”.

36 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 40: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.14 ags getET

Operation: Imports cross section data from an ENDF/B file (ASCII) and interpolates themon an existing time-of-flight grid. Above 5 eV the calculation is fully relativistic, below 5 eVa cubic expansion in (v/c)2 up to the third order is applied. The contents of channels with atime-of-flight corresponding to a velocity larger than c are set to zero.Syntax:

ags_getET <file> /FROM=<ENDF_file>,MAT,MT /ALIAS=.. /FPATH=.. [/LIKE=..] [/DEBUG=..]

Operands: noneQualifiers:

• /FROM (mandatory) Full name of the ENDF file, followed by the MAT number (material)and MT number (reaction) of the evaluation.

• /FPATH (mandatory) Length of the flight path (in meter).

• /ALIAS (mandatory) Name to be given to the resulting spectrum.

• /LIKE (mandatory) Name of the target spectrum from which the X-bounds will be taken.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier.Example: Assuming the second operation in the AGS archive file “archive” is

ags_getET archive /FROM=endfB10,525,1 /LIKE=A01CAPT /ALIAS=B10NT /FPATH=15.2 /DEBUG=1

the spectrum “B01B10NT” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 37

Page 41: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.15 ags getH

Operation: Imports a counting histogram from an ASCII file (.HST). The file consists of countsin the form of one column. The uncertainty is based on Poisson statistics, i.e. the square rootof counts.Syntax:

ags_getH <file> /FROM= <.....[hst]> /SCALERS=.. [/XCONV= ..]

{/ACCORD=..| /LIKE=..} [/ALIAS=..] [/DEBUG=..]

Operands: noneQualifiers:

• /FROM (mandatory) Name of the ASCII file (suffix .hst or HST) holding the histogramdata.

• /SCALERS (mandatory) Value of up to 32 scalers associated with the histogram

• /ACCORD (mandatory if /LIKE not present) Accordion pattern used as: z1, cf1, z2, cf2, . . .,where zi and cfi are length and compression factor of zone i, respectively.

• /LIKE (optional) Name of the target spectrum from which the X-bounds will be taken.When /LIKE is present, /XCONV and /ACCORD are ineffective.

• /ALIAS (optional) Name to be given to the imported spectra (Default: HIST).

• /XCONV (mandatory if /LIKE not present) Base channel width.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier.Example: Assuming the first operation in the AGS archive file “archive” is

ags_getH archive /FROM=sample.hst /ALIAS=SIN \

/ACCORD=1024,8,1024,4,4096,2,5120,4,5120,8,5120,16,5120,32,5120,64,5120,128 \

/SCALERS=97570690,20164978 /XCONV=0.5

the spectrum “A01SIN” is added to the AGS archive file “archive”.

38 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 42: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.16 ags getW

Operation: Import vectorized data from the standard input stream with the format:

[

~i, ~Y1, ~Y2, ~U~Y2

]

,

where ~i is a vector of values (e.g. row numbers) which are skipped in the reading. ~Y1 is ahistogram. ~Y2 is a data vector with the uncorrelated variance vector ~U~Y2

. The uncertainty of ~Y1is calculated based on Poisson statistics, i.e. the square root of counts.Syntax:

cat .. | ags_get_W <file> /SCALERS=.. [/GLOBAL=<const1>,<const2>,..]

[/LOCAL=..] {/ACCORD=.. | /LIKE=..} [/XCONV=..] [/ALIAS=..] [/DEBUG=..]

Operands: noneQualifiers:

• /SCALERS (mandatory) Value of up to 32 scalers associated with the histogram

• /ACCORD (mandatory if /LIKE not present) Accordion pattern used as: z1, cf1, z2, cf2, . . .,where zi and cfi are length and compression factor of zone i, respectively.

• /XCONV (mandatory if /LIKE not present) Base channel width.

• /LIKE (mandatory if /ACCORD and /XCONV are not present) Name of the targetspectrum from which the X-bounds will be taken

• /ALIAS (optional) Name to be given to the imported spectra.

• /GLOBAL (optional) Length in meters of the neutron flight path

• /LOCAL (optional) Name to be given to the resulting spectrum.

• /ALIAS (optional) Name to be given to the imported spectra (Default: WSUM).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: Two spectrum with a new prefix. <Prefix>01WSUM contains the unweighted spec-trum. <Prefix>02WSUM contains the weighted spectrum.Example: Assuming the first operation in the AGS archive file “archive” is

cat AGS_1.ags | ags_getW archive \

/ACCORD=1024,8,1024,4,4096,2,5120,4,5120,8,5120,16,5120,32,5120,64,5120,128 \

/SCALERS=97570690,20164978 /XCONV=0.5 /DEBUG=-1

the spectrum “A01WSUM” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 39

Page 43: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.17 ags getXY

Operation: Imports vectorized data from an ASCII file containing data with the format:

[

~XL, ~XH , ~Y , ~u~Y

]

,

where ~XL, ~XH , ~Y and ~u~Yare lower and higher bounds, spectrum and uncertainty, respectively.

Syntax:

ags_getXY <file> /FROM=.. [/LIKE=..] [{/SCALERS=..|/SCALERFILE=..}] [/ALIAS=..]

[/UNC=SQRT] [/DEBUG=..]

Operands: noneQualifiers:

• /FROM (mandatory) Full name of the datafile

• /LIKE (optional) Name of the target spectrum from which the X-bounds will be taken. Ifpresent, the first two columns of the data file are ignored.

• /SCALERS (optional) Value of up to 32 scalers associated with the data

• /SCALERFILE (optional) Name of the file containing scalers

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: ASC).

• /UNC (optional) Uncertainty of the data is assumed to be: ~u~Y=

~Y . The last columnof the data file is ignored.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orwith the default name ASC.Example: Assuming the first operation in the AGS archive file “archive” is

ags_getXY archive /FROM=data.txt /SCALERFILE=scal.txt /ALIAS=SIN

the spectrum “A01SIN” is added to the AGS archive file “archive”.

40 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 44: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.18 ags getY

Operation: Imports vectorized data from an ASCII file with the format:

[

~Y , ~u~Y

]

,

where ~Y and ~u~Yare spectrum and uncertainty, respectively.

Syntax:

ags_getY <file> /FROM= <....> {/SCALERS= ..|/SCALERFILE=.. } [/XCONV= ..]

{/ACCORD=..| /LIKE=..} [/ALIAS=..] [/UNC=SQRT] [/DEBUG=..]

Operands: noneQualifiers:

• /FROM (mandatory) Full name of the datafile

• /SCALERS (mandatory if /SCALERFILE not present) Value of up to 32 scalers associatedwith the data

• /SCALERFILE (mandatory if /SCALER not present) Name of the file containing scalers

• /ACCORD (mandatory if /LIKE not present) Accordion pattern used as: z1, cf1, z2, cf2, . . .,where zi and cfi are length and compression factor of zone i, respectively.

• /LIKE (optional) Name of the target spectrum from which the X-bounds will be taken. if/LIKE is present, /XCONV and /ACCORD are ineffective.

• /ALIAS (optional) Name to be given to the imported spectra (Default: ASC).

• /XCONV (mandatory if /LIKE not present) Base channel width.

• /UNC (optional) Uncertainty of the data is assumed to be: ~u~Y=

~Y . The last columnof the data file is ignored.

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier.Example: Assuming the second operation in the AGS archive file “archive” is

ags_getY archive /FROM=data.txt /LIKE=A01SIN /ALIAS=SOUT

the spectrum “B01SOUT” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 41

Page 45: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.19 ags inv

Operation: Calculates the inverse of a spectrum ~Y :

~Z = ~Y −1

Syntax:

ags_inv <file>,<spect> [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the second operation in the AGS archive file “archive” is

ags_inv archive,A01SIN /ALIAS=NET /DEBUG=0

the spectrum “B01NET” is added to the AGS archive file “archive”.

42 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 46: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.20 ags lico

Operation: Performs a channel-to-channel linear combination of n spectra ( ~Y1, ..., ~Yn) using aparameter vector ~p with dimension n, i.e., (p1, ..., pn):

~Z =∑

n

pn~Yn

Syntax:

ags_lico <file>,<sp1>,<sp2>,.. /PAR=.. [/COV=..] [/ALIAS=..] [/DEBUG=..]

Operands: ags spectra <sp1>, <sp2>, ..Qualifiers:

• /PAR (mandatory) Vector of n parameters ~p = (p1, p2, . . . , pn)

• /COV (optional) Covariance matrix V~p of the parameters. The number of covarianceterms must be either equal to n (diagonal covariance) or to n(n + 1)/2 (full covariancestored half-column wise). Half-column wise means:

/COV = (V~p)(1,1), (V~p)(1,2), (V~p)(2,2), (V~p)(1,3), (V~p)(2,3), (V~p)(3,3), . . . , (V~p)(n,n)

If there is no uncertainty on the parameters /COV may be omitted altogether.

• /ALIAS (optional) Name to be given to the resulting spectrum (Default : LICO).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orwith the default name LICO.Example:

• Assuming the third operation in the AGS archive file “archive” is

ags_lico archive,A01SIN,B01SIN2 /PAR=1,1 /COV=0.0001,0.0,0.0001 /ALIAS=SUM /DEBUG=0

the spectrum “C01SUM” is added to the AGS archive file “archive”.

• Assuming the third operation in the AGS archive file “archive” is

ags_lico archive,A01SIN,B01SIN2 /PAR=1,1 /COV=0.0001,0.0,0.0001 /DEBUG=0

the spectrum “C01LICO” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 43

Page 47: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.21 ags lift

Operation: Performs a linear interpolation (linear on the two axes) based on the X-boundariesof a target spectrum.Syntax:

ags_lift <file>,<spect> /LIKE=.. [/ALIAS=..]

Operands: AGS spectrum <spect>Qualifiers:

• /LIKE (mandatory) Name of the target spectrum defining the X-boundaries that are usedfor the interpolation.

• /ALIAS (optional) Name to be given to the lifted spectrum (Default: LIFT)

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the third operation in the AGS archive file “archive” is

ags_lift archive,A01SIN /LIKE=B01SIN2 /ALIAS=INT

the spectrum “C01INT” is added to the AGS archive file “archive”.

44 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 48: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.22 ags log

Operation: Calculates the natural logarithm of a spectrum ~Y .

~Z = ln ~Y

Syntax:

ags_log <file>,<spect> [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example:

• Assuming the second operation in the AGS archive file “archive” is

ags_log archive,A01SIN /DEBUG=0

the spectrum “B01SIN’ is added to the AGS archive file “archive”.

• Assuming the second operation in the AGS archive file “archive” is

ags_log archive,A01SIN /ALIAS=LOG /DEBUG=0

the spectrum “B01LOG” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 45

Page 49: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.23 ags mpty

Operation: Creates an empty AGS archive file.Syntax:

ags_mpty <file> [ Title - may be in several words ]

Operands: noneQualifiers: noneResult: A new AGS archive file.Example: The AGS archive file “archive” is created by

ags_mpty archive

46 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 50: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.24 ags mult

Operation: Multplies two spectra (~Y1 and ~Y2)

~Z = ~Y1~Y2

Syntax:

ags_mult <file>,<sp1>,<sp2> [/ALIAS=..] [/DEBUG=..]

Operands: ags spectra <sp1> and <sp2>Qualifiers:

• /ALIAS (optional) Name to be given to the resulting spectrum (Default:MULT).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orwith the default name MULT.Example: Assuming the third operation in the AGS archive file “archive” is

ags_mult archive,A01SIN,B01IMP /DEBUG=0

the spectrum “C01MULT’ is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 47

Page 51: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.25 ags multval

Operation: Multiplies a spectrum ~Y with a constant value a:

~Z = a~Y

Syntax:

ags_multval <file>,<spect> /VAL=value[,uncertainty] [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /VAL (mandatory)value: mandatoryuncertainty: optional

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the second operation in the AGS archive file “archive” is

ags_multval archive,A01SIN /VAL=1.0E-5,1.0E-6 /ALIAS=SIN2 /DEBUG=0

the spectrum “B01SIN2’ is added to the AGS archive file “archive”.

48 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 52: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.26 ags putCM

Operation: Prints the covariance matrix V of a spectrum ~Z:

V~Z= U~Z

+ S~ZST

~Z

Syntax:

ags_putCM <file>,<spect> {/GROUPS=..|ZONES=..} [/KIND]

Operands: AGS spectrum <spect>Qualifiers:

• /GROUPS (Optional) defines the part of the spectrum that is printed. The regions aredefined by lower (xL,i) and higher (xH,i) boundaries on the X-values, which are defined by:

xL,1, xH,1,K1, xL,2, xH,2,K2, . . .

where xL,i and xH,i are floating point values and Ki is a positive integer.If Ki = 0 then all channels with xL,i < x < xH,i are averaged to one observation.If Ki = 1 then all channels in the group are taken individually.if Ki = n with n > 1 then the channels in the group i are averaged by subgroups of nchannels.

• /ZONES (Mandatory in absence of /GROUPS) defines the part of the spectrum that isprinted. The regions are defined by lower (chL,i) and higher (chH,i) boundaries on thechannel number (ch), which are defined by:

chL,1, chH,1,K1, chL,2, chH,2,K2 . . .

where chL,i and chH,i are integer zone limits and Ki is a positive integer defined like above.

• /KIND (optional) ONE for single point spectra, if missing assuming spectra with binboundaries (TWO)

Result: noneExample: Assuming an operation in the AGS archive file “archive” is

ags_putCM archive,G01TX /ZONES=200,300,0 > CMout.dat

prints the covariance and correlation matrix of channels 200 to 300 of the spectrum G01TX intothe ASCII file “CMout.dat”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 49

Page 53: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.27 ags putX

Operation: Prints the values of a spectrum ~X on the screen together with the covarianceinformation in AGS-format.Syntax:

ags_putX <file>,<sp> [/GROUPS=..] [/ZONES=..] [/OPT=..] [/DEBUG=..] [/KIND=..] [/FORMAT=..]

Operands: AGS spectrum <spect>Qualifiers:

• /GROUPS (optional) defines the part of the spectrum that is printed. The regions aredefined by lower (xL,i) and higher (xH,i) boundaries on the X-values, which are defined by:

xL,1, xH,1,K1, xL,2, xH,2,K2, . . .

where xL,i and xH,i are floating point values and Ki is a positive integer.If Ki = 0 then all channels with xL,i < x < xH,i are averaged to one observation.If Ki = 1 then all channels in the group are taken individually.if Ki = n with n > 1 then the channels in the group i are averaged by subgroups of nchannels.

• /ZONES (optional, supersedes /ZONES) defines the part of the spectrum that is printed.The regions are defined by lower (chL,i) and higher (chH,i) boundaries on the channelnumber (ch), which are defined by:

chL,1, chH,1,K1, chL,2, chH,2,K2 . . .

where chL,i and chH,i are integer zone limits and Ki is a positive integer defined like above.

• /KIND (optional) ONE for single point spectra, if missing assuming spectra with binboundaries (TWO)

• /FORMAT (optional) Specify the format of the output as if it was a c-program (Default:“%16.8E”)

• /OPT Line Print options (Default XYA, see below)L : Low bound of zoneH : High bound of zoneX : Zone centerY : Average Y valueP : Relative uncertainty of Y in per centA : Absolute (total) uncertainties on YC : Covariance contribution: uncorrelated variance + correlated uncertainty on YU : Uncorrelated parts : Sammy format sorted by increasing TOF (max 64k channels)S : Sammy format sorted by increasing Energy (max 64k channels)r : Old REFIT format sorted by increasing TOF (max 64k channels)R : Old REFIT format sorted by increasing Energy (max 64k channels)O: Print in reverse orderT: No tab in output (useful for new refit format)

50 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 54: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: noneExamples:

• Assuming an operation in the AGS archive file “archive” is

ags_putX archive,G01TX /OPT=LHYAUC

prints the lower and higher bin boundaries, the spectrum, the absolute uncertainty, theuncorrelated uncertainty, the uncorrelated variance and the S-vector on the screen.

• Assuming an operation in the AGS archive file “archive” is

ags_putX archive,G01TX /OPT=LHYAUC > output.dat

prints the lower and higher bin boundaries, the spectrum, the absolute uncertainty, theuncorrelated uncertainty, the uncorrelated variance and the S-vector into a file called“output.dat”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 51

Page 55: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.28 ags scan

Operation: Printing of the AGS archive file contentSyntax:

ags_scan <file>

Operands: noneQualifiers: noneResult: noneExample: The operation in the AGS archive file “archive”

ags_scan archive

opens an interactive menu with information on the content of the archive file.

52 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 56: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.29 ags shift

Operation: Performs a transformation of variables based on a linear additive transformation ofthe X-bounds and a re-binning of the X-bounds of a spectrum. A linear additive transformationis performed based on

~tm,2 = ~tm,1 + (T2 − T1).

This operation should only be applied on raw (weighted) data.Syntax:

ags_shift <file>,<spect> /T1=.. /T2=.. /LIKE=.. [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /T1 (mandatory) Original position (T1)

• /T2 (mandatory) Target position (T2)

• /LIKE (mandatory) Name of the target spectrum defining the X-boundaries that will beused to rebin the data.

• /ALIAS (optional) Name to be given to the imported spectra (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the third operation in the AGS archive file “archive” is

ags_shift archive,A01FAST /LIKE=B01FAST /T1=-400.3 T2=-60.5 /DEBUG=1

the spectrum “C01FAST’ is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 53

Page 57: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.30 ags subval

Operation: Substracts a constant value a from a spectrum ~Y :

~Z = ~Y − a

Syntax:

ags_subval <file>,<spect> /VAL=value[,uncertainty] [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /VAL (mandatory)value: mandatoryuncertainty: optional

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the second operation in the AGS archive file “archive” is

ags_subval archive,A01SIN /VAL=0.0001,0.00001 /DEBUG=1

the spectrum “B01SIN’ is added to the AGS archive file “archive”.

54 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 58: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.31 ags title

Operation: Printing of the AGS archive file title.Syntax:

ags_title <file>

Operands: noneQualifiers: noneResult: noneExample: The operation in the AGS archive file “archive”

ags_title archive

prints the title of the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 55

Page 59: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.32 ags tof

Operation: Converts the X-boundaries from an energy scale (in eV) to a time scale (in ns)using a flight path lenght L. The calculation is fully relativistic. If the energy is zero or less,than the TOF is set to -1.Syntax:

ags_tof <file>,<spect> /FPATH=.. [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /FPATH (mandatory) The flight path length in meter.

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Result: A spectrum with a new prefix and with the name given by the /ALIAS qualifier orinherited from the operand.Example: Assuming the second operation in the AGS archive file “archive” is

ags_tof archive,A01SIN /FPATH=24.5 /ALIAS=TME /DEBUG=1

the spectrum “B01TME’ is added to the AGS archive file “archive”.

56 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 60: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

4.2.33 ags unav

Operation: Multiplies a spectrum ~Y with the channel width ( ~XH - ~XL) and the contents of ascaler. (inverse of ags avrg)Syntax:

ags_unav <file>,<spect> [/CMSC=position] [/ALIAS=..] [/DEBUG=..]

Operands: AGS spectrum <spect>Qualifiers:

• /CMSC (optional) Position of scaler used for normalization (usually Central MonitorSCaler)

• /ALIAS (optional) Name to be given to the resulting spectrum (Default: name of operand).

• /DEBUG (optional)-1: no debug output0: very limited debug output (default)1: full debug output

Examples:

• Assuming the second operation in the AGS archive file “archive” is

ags_unav archive,A01SIN /CMSC=1 /DEBUG=1

the spectrum “B01SIN’ is added to the AGS archive file “archive”.

• Assuming the second operation in the AGS archive file “archive” is

ags_unav archive,A01SIN /CMSC=1 /ALIAS=UNA /DEBUG=1

the spectrum “B01UNA” is added to the AGS archive file “archive”.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 57

Page 61: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5 Examples

5.1 Transmission

In this section an example of the analysis of transmission data is given as a Linux bash script(Section 5.1.1) and as a Windows batch script (Section 5.1.2). The scripts contain the followingsteps:

1. Executable and data paths are defined

2. An empty AGS archive file is created

3. Scaler, accordion, base channel width and dead-time are specified

4. Count histograms and histograms used for the dead time correction are read for sample-inand sample-out

5. Dead-time correction is performed

6. Bin averaged spectra are generated

7. The background is fitted using black resonance dips

8. The transmission is calculated

9. Print out of spectra

58 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 62: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.1.1 Linux

######################################################################

# #

# W sample; filter combination Na, Co #

# #

######################################################################

# #

# PRODUCE A TRANSMISSION SPECTRUM #

# #

######################################################################

# 1) definition of the paths (of AGS-package and DATA)

# 2) introduction of some identifications

# 3) creation of an empty AGS-file

######################################################################

AGS_PATH=./../../../AGS_linux/bin

data_path_SI=../data/SAMPLE_IN

data_path_SO=../data/SAMPLE_OUT

IDSI=w_fp2_t01_r01-02_METAL

IDSO=w_fp2_t01_r01-02_OPB

CUTSI=${IDSI}_AGS_1.hst

TCSI=${IDSI}_DT_tc.hst

ADCSI=${IDSI}_DT_adc.hst

CUTSO=${IDSO}_AGS_1.hst

TCSO=${IDSO}_DT_tc.hst

ADCSO=${IDSO}_DT_adc.hst

ags_output=ags_archive_W

echo "step 0 ---> create AGS archive file"

${AGS_PATH}/ags_mpty ${ags_output}

######################################################################

# Introduction of parameters necessary for data-reduction:

# i.e. accordeon, scalers, Time Coder Resolution, time offset,

# gamma flash position(s), dead time

######################################################################

acco=16384,1,10240,2,8192,4,8192,8,6144,16,6144,32,4096,64,4096,128,1024,256,1024,512

# Scalers are given in the following sequence:

# ...T0...,...CM3...

scal_SI=82490677,453367

scal_SO=81059326,445869

TCR=1.0 # Time Coder Resolution (ns)

DT=3134. # Dead time (ns)

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 59

Page 63: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# Import histogram(s) in ASCII format

######################################################################

echo "step A ---> import SO-histogram"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path_SO}/${CUTSO} \

/ACCO=${acco} /SCALERS=${scal_SO} /XCONV=${TCR} /ALIAS=SO /DEBUG=1

echo "step B ---> import SI-histogram"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path_SI}/${CUTSI} \

/SCALERS=${scal_SI} /ALIAS=SI /LIKE=A01SO /DEBUG=1

echo "step C ---> import histograms to correct SO for dead-time due \

to events producing a TOF and no amplitude"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path_SO}/${TCSO} \

/SCALERS=${scal_SO} /ALIAS=TCSO /LIKE=A01SO /DEBUG=1

echo "step D ---> import histograms to correct SI for dead-time due \

to events producing a TOF and no amplitude"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path_SI}/${TCSI} \

/SCALERS=${scal_SI} /ALIAS=TCSI /LIKE=A01SO /DEBUG=1

echo "step E ---> import histograms to correct SO for dead-time due \

to events producing a TOF and a amplitude"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path_SO}/${ADCSO} \

/SCALERS=${scal_SO} /ALIAS=ADCSO /LIKE=A01SO /DEBUG=1

echo "step F ---> import histograms to correct SI for dead-time due \

to events producing a TOF and a amplitude"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path_SI}/${ADCSI} \

/SCALERS=${scal_SI} /ALIAS=ADCSI /LIKE=A01SO /DEBUG=1

######################################################################

# Perform dead-time corrections

######################################################################

echo "step G ---> dead time correction for SO"

${AGS_PATH}/ags_dtco ${ags_output},A01SO /BASE=C01TCSO,E01ADCSO \

/DTIME=${DT},${DT} /DTUNC=0.,0. /COEFF=0.000 /TYPE=1 /LPSC=1 /DEBUG=1

echo "step H ---> dead time correction for SI"

${AGS_PATH}/ags_dtco ${ags_output},B01SI /BASE=D01TCSI,F01ADCSI \

/DTIME=${DT},${DT} /DTUNC=0.,0. /COEFF=0.000 /TYPE=1 /LPSC=1 /DEBUG=1

######################################################################

# Shift spectra

######################################################################

echo "step I ---> shift SO spectrum"

${AGS_PATH}/ags_shift ${ags_output},G01SO /LIKE=A01SO /T1=-10.0 /T2=-20.0

echo "step J ---> shift SI spectrum"

${AGS_PATH}/ags_shift ${ags_output},H01SI /LIKE=A01SO /T1=-10.0 /T2=-20.0

60 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 64: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# Generate a Counts/ns-spectrum normalized also to CM3

######################################################################

echo "step K ---> generate a time of flight spectrum for SO"

${AGS_PATH}/ags_avrg ${ags_output},I01SO /CMSC=2

echo "step L ---> generate a time of flight spectrum for SI"

${AGS_PATH}/ags_avrg ${ags_output},J01SI /CMSC=2

######################################################################

# Fitting the background both for SAMPLE-IN and SAMPLE-OUT

######################################################################

echo "step M ---> fit the background for SO-spectrum"

${AGS_PATH}/ags_fit ${ags_output},K01SO /FUN=E3P0 \

/GUESS=1.12E-05,3.236E-04,-4.955E-05,0.0,1.295E-05,-3.7E-6,0.0,1.075E-03,-3.791E-06,1.25E6 \

/FIX=1,3,4,6,7,8,9,10 \

/ZONES=5241,5380,100,24440,24810,50 \

/ALIAS=BGSO /NITER=100 /CHIDIF=0.00001 /DEBUG=1

echo "step N ---> fit the background for SI-spectrum"

${AGS_PATH}/ags_fit ${ags_output},L01SI /FUN=E3P0 \

/GUESS=1.12E-05,3.15E-04,-4.955E-05,0.0,1.9E-05,-3.7E-6,0.0,1.029E-03,-3.758E-06,1.25E6 \

/FIX=1,3,4,6,7,8,9,10 \

/ZONES=5241,5380,100,24440,24810,50,54438,54606,10 \

/ALIAS=BGSI /CHIDIF=0.00001 /NITER=100 /DEBUG=1

######################################################################

# Producing transmission spectrum

######################################################################

echo "step O ---> generate a net SO-spectrum (subtract background component)"

${AGS_PATH}/ags_lico ${ags_output},K01SO,M01BGSO \

/PAR=1.0,-1.0 /ALIAS=SONET

echo "step P ---> generate a net SI-spectrum (subtract background component)"

${AGS_PATH}/ags_lico ${ags_output},L01SI,N01BGSI \

/PAR=1.0,-1.0 /ALIAS=SINET

echo "step Q ---> generate TRANSMISSION spectrum"

${AGS_PATH}/ags_divi ${ags_output},P01SINET,O01SONET /ALIAS=TRANS

echo "step R ---> generate TRANSMISSION spectrum as function of energy"

${AGS_PATH}/ags_ener ${ags_output},Q01TRANS /FPATH=24.355 /ALIAS=ENE /DEBUG=1

######################################################################

# Copy the relevant spectra into an ASCII file

######################################################################

${AGS_PATH}/ags_putX ${ags_output},K01SO > SO.dat

${AGS_PATH}/ags_putX ${ags_output},L01SI > SI.dat

${AGS_PATH}/ags_putX ${ags_output},M01BGSO > BG_SO.dat

${AGS_PATH}/ags_putX ${ags_output},N01BGSI > BG_SI.dat

${AGS_PATH}/ags_putX ${ags_output},Q01TRANS > T.dat

${AGS_PATH}/ags_putX ${ags_output},R01ENE > T_E.dat

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 61

Page 65: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.1.2 Windows

@echo off

REM ######################################################################

REM # #

REM # W sample; filter combination Na, Co #

REM # #

REM ######################################################################

REM # #

REM # PRODUCE A TRANSMISSION SPECTRUM #

REM # #

REM ######################################################################

REM # 1) definition of the paths (of AGS-package and DATA)

REM # 2) introduction of some identifications

REM # 3) creation of an empty AGS-file

REM ######################################################################

set AGS_PATH=..\..\..\AGS_windows\exe

set data_path_SI=..\data\SAMPLE_IN

set data_path_SO=..\data\SAMPLE_OUT

set IDSI=w_fp2_t01_r01-02_METAL

set IDSO=w_fp2_t01_r01-02_OPB

set CUTSI=%IDSI%_AGS_1.hst

set TCSI=%IDSI%_DT_tc.hst

set ADCSI=%IDSI%_DT_adc.hst

set CUTSO=%IDSO%_AGS_1.hst

set TCSO=%IDSO%_DT_tc.hst

set ADCSO=%IDSO%_DT_adc.hst

set ags_output=ags_archive

echo "step 0 ---> create AGS archive file"

%AGS_PATH%\ags_mpty %ags_output%

REM ######################################################################

REM # Introduction of parameters necessary for data-reduction:

REM # i.e. accordeon, scalers, Time Coder Resolution, time offset,

REM # gamma flash position(s), dead time

REM ######################################################################

set acco=16384,1,10240,2,8192,4,8192,8,6144,16,6144,32,4096,64,4096,128,1024,256,1024,512

REM # Scalers are given in the following sequence:

REM # ...T0...,...CM3...

set scal_SI=82490677,453367

set scal_SO=81059326,445869

REM # Time Coder Resolution (ns)

set TCR=1.0

REM # Dead time (ns)

set DT=3134.

62 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 66: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

REM ######################################################################

REM # Import histogram(s) in ASCII format

REM ######################################################################

echo "step A ---> import SO-histogram"

%AGS_PATH%\ags_getH %ags_output% /FROM=%data_path_SO%/%CUTSO% ^

/ACCO=%acco% /SCALERS=%scal_SO% /XCONV=%TCR% /ALIAS=SO /DEBUG=1

echo "step B ---> import SI-histogram"

%AGS_PATH%\ags_getH %ags_output% /FROM=%data_path_SI%\%CUTSI% ^

/SCALERS=%scal_SI% /ALIAS=SI /LIKE=A01SO /DEBUG=1

echo "step C ---> import histograms to correct SO for dead-time due ^

to events producing a TOF and no amplitude"

%AGS_PATH%\ags_getH %ags_output% /FROM=%data_path_SO%\%TCSO% ^

/SCALERS=%scal_SO% /ALIAS=TCSO /LIKE=A01SO /DEBUG=1

echo "step D ---> import histograms to correct SI for dead-time due ^

to events producing a TOF and no amplitude"

%AGS_PATH%\ags_getH %ags_output% /FROM=%data_path_SI%\%TCSI% ^

/SCALERS=%scal_SI% /ALIAS=TCSI /LIKE=A01SO /DEBUG=1

echo "step E ---> import histograms to correct SO for dead-time due ^

to events producing a TOF and a amplitude"

%AGS_PATH%\ags_getH %ags_output% /FROM=%data_path_SO%\%ADCSO% ^

/SCALERS=%scal_SO% /ALIAS=ADCSO /LIKE=A01SO /DEBUG=1

echo "step F ---> import histograms to correct SI for dead-time due ^

to events producing a TOF and a amplitude"

%AGS_PATH%\ags_getH %ags_output% /FROM=%data_path_SI%\%ADCSI% ^

/SCALERS=%scal_SI% /ALIAS=ADCSI /LIKE=A01SO /DEBUG=1

REM ######################################################################

REM # Perform dead-time corrections

REM ######################################################################

echo "step G ---> dead time correction for SO"

%AGS_PATH%\ags_dtco %ags_output%,A01SO /BASE=C01TCSO,E01ADCSO ^

/DTIME=%DT%,%DT% /DTUNC=0.,0. /COEFF=0.000 /TYPE=1 /LPSC=1 /DEBUG=1

echo "step H ---> dead time correction for SI"

%AGS_PATH%\ags_dtco %ags_output%,B01SI /BASE=D01TCSI,F01ADCSI ^

/DTIME=%DT%,%DT% /DTUNC=0.,0. /COEFF=0.000 /TYPE=1 /LPSC=1 /DEBUG=1

REM ######################################################################

REM # Shift spectra

REM ######################################################################

echo "step I ---> shift SO spectrum"

%AGS_PATH%\ags_shift %ags_output%,G01SO /LIKE=A01SO /T1=-10.0 /T2=-20.0 /DEBUG=1

echo "step J ---> shift SI spectrum"

%AGS_PATH%\ags_shift %ags_output%,H01SI /LIKE=A01SO /T1=-10.0 /T2=-20.0 /DEBUG=1

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 63

Page 67: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

REM ######################################################################

REM # Generate a Counts/ns-spectrum normalized also to CM3

REM ######################################################################

echo "step k ---> generate a time of flight spectrum for SO"

%AGS_PATH%\ags_avrg %ags_output%,I01SO /CMSC=2

echo "step L ---> generate a time of flight spectrum for SI"

%AGS_PATH%\ags_avrg %ags_output%,J01SI /CMSC=2

REM ######################################################################

REM # Fitting the background both for SAMPLE-IN and SAMPLE-OUT

REM ######################################################################

echo "step M ---> fit the background for SO-spectrum"

%AGS_PATH%\ags_fit %ags_output%,K01SO /FUN=E3P0 ^

/GUESS=1.12E-05,3.236E-04,-4.955E-05,0.0,1.295E-05,-3.7E-6,0.0,1.075E-03,-3.791E-06,1.25E6 ^

/FIX=1,3,4,6,7,8,9,10 ^

/ZONES=5241,5380,100,24440,24810,50 ^

/ALIAS=BGSO /NITER=100 /CHIDIF=0.00001 /DEBUG=1

echo "step N ---> fit the background for SI-spectrum"

%AGS_PATH%\ags_fit %ags_output%,L01SI /FUN=E3P0 ^

/GUESS=1.12E-05,3.15E-04,-4.955E-05,0.0,1.9E-05,-3.7E-6,0.0,1.029E-03,-3.758E-06,1.25E6 ^

/FIX=1,3,4,6,7,8,9,10 ^

/ZONES=5241,5380,100,24440,24810,50,54438,54606,10 ^

/ALIAS=BGSI /CHIDIF=0.00001 /NITER=100 /DEBUG=1

REM ######################################################################

REM # Producing transmission spectrum

REM ######################################################################

echo "step O ---> generate a net SO-spectrum (subtract bg component)"

%AGS_PATH%\ags_lico %ags_output%,K01SO,M01BGSO ^

/PAR=1.0,-1.0 /ALIAS=SONET

echo "step P ---> generate a net SI-spectrum (subtract bg component)"

%AGS_PATH%\ags_lico %ags_output%,L01SI,N01BGSI ^

/PAR=1.0,-1.0 /ALIAS=SINET

echo "step Q ---> generate TRANSMISSION spectrum"

%AGS_PATH%\ags_divi %ags_output%,P01SINET,O01SONET /ALIAS=TRANS

echo "step R ---> generate TRANSMISSION spectrum as function of energy"

%AGS_PATH%\ags_ener %ags_output%,Q01TRANS /FPATH=24.355 /ALIAS=ENE /DEBUG=1

REM ######################################################################

REM # Copy the relevant spectra into an ASCII file

REM ######################################################################

%AGS_PATH%\ags_putX %ags_output%,K01SO > SO.dat

%AGS_PATH%\ags_putX %ags_output%,L01SI > SI.dat

%AGS_PATH%\ags_putX %ags_output%,M01BGSO > BG_SO.dat

%AGS_PATH%\ags_putX %ags_output%,N01BGSI > BG_SI.dat

%AGS_PATH%\ags_putX %ags_output%,Q01TRANS > T.dat

%AGS_PATH%\ags_putX %ags_output%,R01ENE > T_E.dat

64 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 68: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.2 Capture

In this section an example of the analysis of capture data is given as Linux bash scripts. Thedata reduction is broken down into several steps:

1. Data import and dead time correction (Section 5.2.1)

2. Background correction (Section 5.2.2)

3. Data import, dead time correction and alignment of flux measurement (Section 5.2.3)

4. Background correction of flux measurement (Section 5.2.3)

5. Calculation of the capture yield (Section 5.2.4)

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 65

Page 69: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.2.1 Data import and dead time correction

In the following a script is given which is used to import the counting spectra from a sample-inmeasurement and to perform a dead time correction. In a full analysis, this step has to beperformed for sample-in, scattering sample-in and open beam.

######################################################################

# #

# Au sample; filter combination B, S, Na #

# #

######################################################################

# #

# STEP 1 / 3 #

# sum of all ADC’s and perform DT correction on capture data #

# #

######################################################################

AGS_PATH=./../../../AGS_linux/bin

data_path=../data

cap_ses_name=Au197_0.53mm

ID=Au197

######################################################################

# Introduce values for scalers, accord, DT, T0 and TCR according to #

######################################################################

#CM1,CM3,T0,ACOF

scal_cap=58923655,1759362,63690028,55535639

acco_cap=4096,1,4096,2,4096,4,4096,8,4096,16,3072,32,3072,64,4096,128,7168,256

DTadc=2870. #Dead Time with only ADC

DTtc=2870. #Dead Time with only TC

TCR=1.0 #Time coder resolution

g_flash_m=80 #Measured Gamma Flash position

g_flash_t=43 #L/C [ns], --> L=12.938 m <--

######################################################################

# Define input data names #

######################################################################

ags_output=s1cw_${ID}.ags

ags_C6D6_WF_1=${cap_ses_name}_WF_1.dat

ags_C6D6_WF_2=${cap_ses_name}_WF_2.dat

ags_C6D6_DT_adc=${cap_ses_name}_DT_adc.hst

ags_C6D6_DT_tc=${cap_ses_name}_DT_tc.hst

######################################################################

# Create AGS archive file #

######################################################################

rm ${ags_output}

echo "-->Initialize ags file"

${AGS_PATH}/ags_mpty ${ags_output}

66 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 70: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# STEP A-B #

# Import AGL spectra for all (2) ADCs #

######################################################################

echo "-->step A : Import file C6D6 ADC1"

${AGS_PATH}/ags_getY ${ags_output} /FROM=${data_path}/${ags_C6D6_WF_1} \

/ACCO=${acco_cap} /SCALERS=${scal_cap} /XCONV=${TCR} /ALIAS=ADC1 /DEBUG=1

echo "-->step B : Import file C6D6 ADC2"

${AGS_PATH}/ags_getY ${ags_output} /FROM=${data_path}/${ags_C6D6_WF_1} \

/LIKE=A01ADC1 /SCALERS=${scal_cap} /ALIAS=ADC2 /DEBUG=1

######################################################################

# STEP C-D: #

# spectra for dead time correction from HST format: counts #

######################################################################

echo "-->step C : Import file C6D6 DEAD TIME ADC"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path}/${ags_C6D6_DT_adc} \

/LIKE=A01ADC1 /SCALERS=${scal_cap} /DEBUG=1

echo "-->step D : Import file C6D6 DEAD TIME TC"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${data_path}/${ags_C6D6_DT_tc} \

/LIKE=A01ADC1 /SCALERS=${scal_cap} /DEBUG=1

######################################################################

# STEP E: #

# sum of adcs spectra and averaging (div by channel time width) #

######################################################################

echo "c6d6 spectra sum"

${AGS_PATH}/ags_lico ${ags_output},A01ADC1,B01ADC2 /PAR=1.,1. /ALIAS=SUM

######################################################################

# STEP F: #

# dead time correction on the sum of adcs spectra #

# DT_adc.hist = sum of counts in both ADC #

# DT_tc.hist = sum of counts in both ADC when only time is recoded #

######################################################################

echo "dead time correction "

${AGS_PATH}/ags_dtco ${ags_output},E01SUM /BASE=C01HIST,D01HIST \

/DTIME=${DTadc},${DTtc} /DTUNC=5.,5. /TYPE=1 /LPSC=3 /DEBUG=1

######################################################################

# STEP G: #

# shift spectrum - brings Gamma flash at L/C #

######################################################################

echo "-->step F : Shift --> TOF"

${AGS_PATH}/ags_shift ${ags_output},F01SUM /T1=${g_flash_m} \

/T2=${g_flash_t} /LIKE=E01SUM /ALIAS=SFTD /DEBUG=1

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 67

Page 71: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# STEP H: #

# NORMALIZAITION TO A MONITOR #

######################################################################

echo "capture average divided by cm3 or ACOF"

${AGS_PATH}/ags_avrg ${ags_output},G01SFTD /CMSC=2

######################################################################

# saving .dat files these are not AGS steps #

######################################################################

echo "saving ASCII"

${AGS_PATH}/ags_putX ${ags_output},H01SFTD /OPT=LHXYA > gross_${ID}.dat

######################################################################

# #

# END OF THE SCRIPT #

# #

######################################################################

68 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 72: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.2.2 Background

In the following a script to perform the background correction of the sample-in spectrum isgiven. The background correction is based on Eq. (15). It reads the results of the first script(Section 5.2.1) used for the sample-in, scattering sample-in and open beam. In addition aneutron sensitivity correction factor is read. The background corrected capture spectrum iscalculated.

######################################################################

# #

# Au sample; filter combination B, S, Na #

# #

######################################################################

# #

# STEP 2 / 3 #

# background subtraction on capture data #

# #

######################################################################

AGS_PATH=./../../../AGS_linux/bin

ID=Au197 #sample

IDob=OPB4Au #open beam

YR=YR050.DAT

IDpb=Pb4Au #lead

scal_zero=0,0,0,0

######################################################################

# declare spectra for sample, OPB, Pb etc. produced in step 1 #

# define output name #

######################################################################

ags_gross=s1cw_${ID}.ags

ags_ob=s1cw_${IDob}.ags

ags_pb=s1cw_${IDpb}.ags

ags_output=s2cw_${ID}.ags

######################################################################

# Create AGS archive file #

######################################################################

rm ${ags_output}

echo "-->Initialize ags file"

${AGS_PATH}/ags_mpty ${ags_output}

######################################################################

# STEP A-B: Import sample and OPB spectra normalized over CM #

# #

######################################################################

echo "-->step A : Importing C6D6 averaged - sample spectrum per CM"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_gross},H01SFTD /ALIAS=SAMP

echo "-->step B : Importing C6D6 averaged - OPB per CM"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_ob},H01SFTD /ALIAS=OPB \

/LIKE=A01SAMP /DEBUG=1

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 69

Page 73: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

echo "-->step C : Importing C6D6 averaged - OPB per CM"

${AGS_PATH}/ags_getY ${ags_output} /FROM=${YR} /ALIAS=YR /LIKE=A01SAMP \

/SCALERS=${scal_zero} /DEBUG=1

echo "-->step D : Importing C6D6 averaged - Pb per CM"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_pb},H01SFTD /ALIAS=Pb \

/LIKE=A01SAMP /DEBUG=1

######################################################################

# STEP E-F: AMB and OPB subtraction from sample #

# #

######################################################################

echo "-->step E : calculate total background"

${AGS_PATH}/ags_fxyp ${ags_output},B01OPB,C01YR,D01Pb /OWN=c03 \

/PAR=5E-4,1,0,1,0 /COV=2.5E-9,0.0009,0,0.0025,0 /ALIAS=BKG /DEBUG=1

echo "-->step F : calculate net spectrum"

${AGS_PATH}/ags_lico ${ags_output},A01SAMP,E01BKG /PAR=1.0,-1.0 /ALIAS=NET

######################################################################

# saving .dat files these are not AGS steps #

######################################################################

echo "-->saving files..."

${AGS_PATH}/ags_putX ${ags_output},B01OPB /OPT=XYA > OPB_${ID}.dat

${AGS_PATH}/ags_putX ${ags_output},D01Pb /OPT=XYA > Pb_${ID}.dat

${AGS_PATH}/ags_putX ${ags_output},E01BKG /OPT=XYA > BKG_${ID}.dat

${AGS_PATH}/ags_putX ${ags_output},F01NET /OPT=XYA > net_${ID}.dat

######################################################################

# #

# END OF THE SCRIPT #

# #

######################################################################

70 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 74: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.2.3 Flux

The first of the following two scripts is used to perform the dead time correction of a fluxmeasurement with a double sided ionization chamber. Both spectra are then aligned by shiftingthem using the dip in the spectra caused by the 30.38 keV resonance of the sulphur filter. Thespectra are then added and projected on the capture flight path. The second script is used tofit the background of the flux measurement and to calculate the net flux spectrum.

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 71

Page 75: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Dead time correction and alignment

######################################################################

# #

# Flux IC; filter combination B, S, Na #

# #

######################################################################

# #

# STEP 1 / 2 #

# sum of all ADC’s and perform DT correction data #

# align adcs and shift to capture #

# #

######################################################################

AGS_PATH=./../../../AGS_linux/bin

flx_ses_name=FX_BSNa

agl_data_path=../data/

ID=BSNa

######################################################################

# Introduce values for scalers, accord, DT, T0 and TCR according to #

# ’an_rep’ output file from last AGL step #

# Divide CM3 value by 1E2 in both flux and capture !!!!!!!!! #

# #CM1 CM3 T0 ACO #

######################################################################

#CM1 CM3 T0 ACO

scal_flux=1012498868,29961122,1110043004,940560877

acco_flux=6144,1,4096,2,4096,4,3072,8,3072,16,3072,32,3072,64,3072,128

DTadc=3940. #Dead Time with adc

DTtc=3940. #Dead Time with only tc

TCR=4.0 #time coder resolution

fpl_f=12.12133 #FPL of flux

fpl_c=12.938 #FPL capture

TSc=5030.3 # position of 30.38 keV S resonance in capture (scaled by ratio of fps)

TS1=3960.3 # position of 30.38 keV S resonance in flux 1

TS2=3938.4 # position of 30.38 keV S resonance in flux 2

######################################################################

# Define input data names #

######################################################################

ags_output=s1f_${ID}.ags

ags_FLUX_1=${flx_ses_name}_AGS_1.hst

ags_FLUX_2=${flx_ses_name}_AGS_2.hst

ags_F_DT_ADC=${flx_ses_name}_DT_adc.hst

ags_F_DT_TC=${flx_ses_name}_DT_tc.hst

72 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 76: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# Get capture reference spectrum #

######################################################################

ags_capt=s1cw_Au197.ags

echo "--> getting ref. capture"

cp ../Au197/${ags_capt} .

######################################################################

# Create AGS archive file #

######################################################################

rm ${ags_output}

echo "-->Initialize ags file"

${AGS_PATH}/ags_mpty ${ags_output}

######################################################################

# STEP A-B #

# Import AGL spectra for ADCs (2 in FP5_10m) #

######################################################################

echo "-->step A : Import file from AGL FLUX1"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${agl_data_path}/${ags_FLUX_1} \

/ALIAS=FLUX /ACCORD=${acco_flux} /SCALERS=${scal_flux} /XCONV=${TCR}

echo "-->step B : Import file from AGL FLUX2"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${agl_data_path}/${ags_FLUX_2} \

/ALIAS=FLUX /LIKE=A01FLUX /SCALERS=${scal_flux}

######################################################################

# STEP C-D #

# Import dead time ADC and TC #

######################################################################

echo "-->step C : Import file from AGL FLUX DEAD TIME ADC"

# having 1 adc G and H are the same...beside amp windows on amp

${AGS_PATH}/ags_getH ${ags_output} /FROM=${agl_data_path}/${ags_F_DT_ADC} \

/LIKE=A01FLUX /SCALERS=${scal_flux}

echo "-->step D : Import file from AGL FLUX DEAD TIME TC"

${AGS_PATH}/ags_getH ${ags_output} /FROM=${agl_data_path}/${ags_F_DT_TC} \

/LIKE=A01FLUX /SCALERS=${scal_flux}

######################################################################

# STEP E-F #

# dead time correction for individual ADCs #

######################################################################

echo "-->step E : dead time correction FLUX1"

${AGS_PATH}/ags_dtco ${ags_output},A01FLUX /BASE=C01HIST,D01HIST \

/DTIME=${DTadc},${DTtc} /DTUNC=0.,0. /TYPE=1 /LPSC=3

echo "-->step F : dead time correction FLUX2"

${AGS_PATH}/ags_dtco ${ags_output},B01FLUX /BASE=C01HIST,D01HIST \

/DTIME=${DTadc},${DTtc} /DTUNC=0.,0. /TYPE=1 /LPSC=3

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 73

Page 77: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# STEP G #

# shift ADCs to account for time offset #

######################################################################

echo "-->step G : Shift flux 1 after DT corrections"

${AGS_PATH}/ags_shift ${ags_output},E01FLUX /T1=${TS1} \

/T2=${TSc} /LIKE=F01FLUX /ALIAS=ADC1SFTD

echo "-->step H : Shift flux 2 after DT corrections"

${AGS_PATH}/ags_shift ${ags_output},F01FLUX /T1=${TS2} \

/T2=${TSc} /LIKE=F01FLUX /ALIAS=ADC2SFTD

######################################################################

# STEP I sum ADCs #

# ADC2 5.5% thicker #

######################################################################

${AGS_PATH}/ags_lico ${ags_output},G01ADC1SFTD,H01ADC2SFTD, /PAR=1.,0.945 \

/ALIAS=FLUX

######################################################################

# STEP J-K rebin flux to capture #

# IMPORTANT:to do so, we need a capture spectrum #

# so first we have to create this spectrum from the s1cw script #

######################################################################

echo "-->step J : Import capture spectrum"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_capt},H01SFTD /ALIAS=SUM

echo "-->step K : Adjust flight path "

${AGS_PATH}/ags_fpa ${ags_output},I01FLUX /FPATH1=${fpl_f} /FPATH2=${fpl_c} \

/LIKE=J01SUM /ALIAS=FLXREB

######################################################################

# STEP L create spectrum nrml per cm3 or ACOF (still TOF) and #

######################################################################

echo "flux average divided by cm3 or ACOF"

${AGS_PATH}/ags_avrg ${ags_output},K01FLXREB /CMSC=2 /ALIAS=FLX

######################################################################

# saving .dat files these are not AGS steps #

######################################################################

echo "-->saving files..."

${AGS_PATH}/ags_putX ${ags_output},L01FLX /OPT=XYA > flux_gross_${ID}.dat

######################################################################

# #

# END OF THE SCRIPT #

# #

######################################################################

74 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 78: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Background

######################################################################

# #

# Flux IC; filter combination B, S, Na #

# #

######################################################################

# #

# STEP 2 / 2 #

# fit background and calculate net flux spectrum #

# #

######################################################################

AGS_PATH=./../../../AGS_linux/bin

ID=BSNa

ags_input=s1f_${ID}.ags

ags_output=s2f_${ID}.ags

######################################################################

# Create AGS archive file #

######################################################################

rm ${ags_output}

echo "-->Initialize ags file"

${AGS_PATH}/ags_mpty ${ags_output}

######################################################################

# STEP A #

# Import AGS gross flux #

######################################################################

echo "-->step A : importing gross flux"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_input},L01FLX /ALIAS=FLX

######################################################################

# STEP B #

# Fitting the background #

######################################################################

echo "-->step B : fit the background"

${AGS_PATH}/ags_fit ${ags_output},A01FLX /FUN=E2P0 \

/GUESS=6.56E-07,3.236E-04,-5.30E-05,0.0,5.29E-05,-2.33E-06,1.25E6 \

/FIX=1,4,5,6,7 \

/ZONES=2840,2905,10,9447,9565,10 \

/ALIAS=BKG /NITER=100 /CHIDIF=0.00001 /DEBUG=1

######################################################################

# STEP C #

# bkg subtraction #

######################################################################

echo "-->step B : calculating net spectrum"

${AGS_PATH}/ags_lico ${ags_output},A01FLX,B01BKG /PAR=1.0,-1.0 /ALIAS=NET

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 75

Page 79: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

######################################################################

# saving .dat files these are not AGS steps #

######################################################################

echo "-->saving files..."

${AGS_PATH}/ags_putX ${ags_output},B01BKG /OPT=XYA > flux_bkg_fct_${ID}.dat

${AGS_PATH}/ags_putX ${ags_output},C01NET /OPT=XYA > net_flux_${ID}.dat

######################################################################

# #

# END OF THE SCRIPT #

# #

######################################################################

76 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 80: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

5.2.4 Yield

In the following a script to calculate the capture yield is given. The calculation of the yield isbased on Eq. (13) and (14). The script reads the result of the second script (Section 5.2.2) aswell as the net flux spectrum (Section 5.2.3). In addition, the boron total and capture crosssections are read from a ENDF-6 formatted file. The final result is the capture yield as functionof TOF, neutron energy and in REFIT format.

######################################################################

# #

# Au sample; filter combination B, S, Na #

# #

######################################################################

# #

# STEP 3 / 3 #

# yield calculation from net flux counts and capture data #

# #

######################################################################

AGS_PATH=./../../../AGS_linux/bin

fpl_c_real=12.944 #FPL capture

ID_c=Au197 #sample

ID_f=BSNa #flux

scal_zero=0,0,0,0

path_ags_xsec=../X-SEC

b10_jeff22=10b.dat

IC_thick=4.79E-06 #thickness of IC, 10B in at/b at FP5_10m and FP15_30m

######################################################################

# declare spectra for flux and net capture produced in step 2 #

# define output name #

######################################################################

ags_capt=s2cw_${ID_c}.ags

ags_flux=s2f_${ID_f}.ags

ags_output=s3cw_${ID_c}.ags

######################################################################

# Create AGS archive file #

######################################################################

rm ${ags_output}

echo "-->Initialize ags file"

${AGS_PATH}/ags_mpty ${ags_output}

######################################################################

# STEP A-B: Import sample and flux net spectra #

######################################################################

echo "-->step A : Importing C6D6 averaged - sample spectrum per CM"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_capt},F01NET /ALIAS=CAPT

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 77

Page 81: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

cp ../flux/${ags_flux} .

echo "-->step B : Importing flux averaged - per CM"

${AGS_PATH}/ags_getA ${ags_output} /FROM=${ags_flux},C01NET /ALIAS=FLUX \

/LIKE=A01CAPT /DEBUG=1

######################################################################

# STEP C-D: Import 10B(n,alfa) and total cross section #

######################################################################

echo "-->step C-D : Retrieve 10B(n,alfa) cross section"

${AGS_PATH}/ags_getET ${ags_output} /FROM=${path_ags_xsec}/${b10_jeff22},525,107 \

/LIKE=A01CAPT /ALIAS=B10NAJEF /FPATH=${fpl_c_real}

${AGS_PATH}/ags_getET ${ags_output} /FROM=${path_ags_xsec}/${b10_jeff22},525,1 \

/LIKE=A01CAPT /ALIAS=B10NTJEF /FPATH=${fpl_c_real}

######################################################################

# STEP E-J: Building flux #

######################################################################

echo "-->step E-L : Building flux"

${AGS_PATH}/ags_multval ${ags_output},D01B10NTJEF /VAL=${IC_thick} /ALIAS=NSIGT

${AGS_PATH}/ags_exp ${ags_output},E01NSIGT /ALIAS=EXPS

${AGS_PATH}/ags_addval ${ags_output},F01EXPS /VAL=-1 /ALIAS=ABS

${AGS_PATH}/ags_divi ${ags_output},C01B10NAJEF,D01B10NTJEF /ALIAS=SIGR

${AGS_PATH}/ags_mult ${ags_output},G01ABS,H01SIGR /ALIAS=QY

${AGS_PATH}/ags_divi ${ags_output},B01FLUX,I01QY /ALIAS=FLUX

######################################################################

# STEP K-L: Calculating yield #

######################################################################

echo "-->step K-L : calculating yield"

${AGS_PATH}/ags_divi ${ags_output},A01CAPT,J01FLUX /ALIAS=Y

${AGS_PATH}/ags_divval ${ags_output},K01Y /VAL=7.927 /ALIAS=YN

######################################################################

# STEP M: Convert tof to energy #

######################################################################

echo "-->step M : convert tof to energy"

${AGS_PATH}/ags_ener ${ags_output},L01YN /FPATH=${fpl_c_real} /ALIAS=ENE

######################################################################

# saving .dat files these are not AGS steps #

######################################################################

echo "-->saving files..."

${AGS_PATH}/ags_putX ${ags_output},J01FLUX /OPT=XYA > Flux_for_Yield_${ID_c}.dat

${AGS_PATH}/ags_putX ${ags_output},L01YN /OPT=XYA > Yield_${ID_c}.dat

${AGS_PATH}/ags_putX ${ags_output},M01ENE /OPT=XYA > Yield_E_${ID_c}.dat

######################################################################

# #

# END OF THE SCRIPT #

# #

######################################################################

78 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 82: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

A symbols, nomenclature and abbreviations

Table A.1: Symbols

Symbol

tm measured TOFTs start signalT0 stop signalt0 time offsettt time difference between the moment of neutron creation and the moment

it leaves the targettd time difference between the moment the neutron enters the detector or

sample and the time of detectionv neutron speedc speed of lightL distance between the outer surface of the neutron-producing target and

the front face of the detector or sampleE neutron kinetic energymn neutron massγ Lorentz factor

T transmissionnk areal density of nuclide k [at/b]σtot,k Doppler broadened total cross section of nuclide kTexp experimental transmissionCin sample-in count rate in a transmission experimentCout sample-out count rate in a transmission experimentBin background contribution of sample-in count rate in a transmission ex-

perimentBout background contribution of sample-in count rate in a transmission ex-

perimentNT normalization of a transmission experimentK factor to introduce a correlated uncertainty due to the background model

of a transmission experimentB0 time independent background componentBγ time dependent background component due to 2.2 MeV γ-raysBno time dependent background component due to overlap neutronsBns time dependent background component due to scattered neutrons in the

detector stationsBne time dependent background component due to scattered neutrons in the

environment

Yr,k yield of nuclide k and of reaction rY0,k primary yield of nuclide kYm,k multiple interaction yield of nuclide kσr,k Doppler broadened reaction cross section of nuclide k and reaction rYexp experimental yieldCr reaction count rate of a reaction cross section measurement

Continued on next page

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 79

Page 83: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Table A.1 – Continued from previous page

Symbols

Br background contribution of a reaction cross section measurementϕ fluxNr normalization of a reaction cross section experimentCϕ count rate of flux measurementBϕ background contribution of the flux measurementYϕ yield of the flux measurementTϕ transmission of the flux measurementσr,ϕ Doppler broadened reaction cross section used to determine the fluxσtot,ϕ Doppler broadened total cross section used to determine the flux

N0(i) number of counts in channel iNc(i) dead time corrected number of counts in channel iNb number of bursts

Table A.2: Nomenclature

Symbol~Z spectrum vector (capital letter)~p parameter vector (small letter)M matrix (bold capital letter)

MT transposed of matrix M

M((i,j)) element (i, j) of matrix M

V~Zcovariance matrix of spectrum ~Z

U~Zcovariance matrix of spectrum ~Z containing only the uncorrelated un-certainty component

~U~Zvector of the uncorrelated covariance component: ~U~Z

= diag(U~Z

)

~u~Zvector of the uncorrelated uncertainty: ~u~Z

=√

~U~Z

Df (~b) sensitivity matrix: partial derivatives of the function f(x,~b) with respectto the parameter vector ~b with dimension m:

Df (~b) =

(∂f

∂b

)

=

∂fi/∂b1 . . . ∂f1/∂bm...

. . ....

∂fn/∂b1 ∂fn/∂bm

where ∂f1/∂bj is the partial derivative of f with respect to bj evaluatedat x = xi[

~b1,~b2,~b3, . . .]

concatenation of several vectors ~b1,~b2,~b3, . . . with the same dimension

into a matrix B =[

~b1,~b2,~b3, . . .]

. The concatenation of several matrices

with the same number of rows is symbolized in the same manner.

80 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 84: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

Table A.3: Abbreviations

Abbreviation

AGS Analysis of Geel SpectraGELINA GEel LINear AcceleratorEC European CommissionJRC Joint Research CentreIRMM Institute for Reference Materials and MeasurementsTOF Time-Of-FlightGLUP Generalized Law of Uncertainties PropagationGUM Guide to the Expression of Uncertainty in MeasurementENDF Evaluated Nuclear Data FileFWHM Full Width Half Maximum

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 81

Page 85: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

References

[1] C. Bastian, General Procedures and Computational Methods for Generating CovarianceMatrices, in Proc. Int. Symposium On Nucl. Data Evaluation Methodology, pp. 642–649,Oct. (1992).

[2] C. Bastian, AGS a set of UNIX Commands for Neutron Data Reduction, Proc. SPIE 2867

No. 611 (1997). DOI: 10.1117/12.267862

[3] B. Becker, C. Bastian, F. Emiliani, F. Gunsing, J. Heyse, K. Kauwenberghs, S. Kopecky,C. Lampoudis, C. Massimi, N. Otuka, P. Schillebeeckx, I. Sirakov, J. Instrum. 7,P11002,DOI: 10.1088/1748-0221/7/11/P11002 (2012).

[4] P. Schillebeeckx, B. Becker, Y. Danon, K. Guber, H. Harada, J. Heyse, A.R. Junghans,S. Kopecky, C. Massimi, M. Moxon, N. Otuka, I. Sirakov, K. Volev, Nuclear Data Sheets113, 3054 (2012). DOI: 10.1016/j.nds.2012.11.005

[5] N. Otuka, A. Borella, S. Kopecky, C. Lampoudis, P. Schillebeeckx, J. Korean Phys. Soc.59, 1314 - 1317 (2011). DOI: 10.3938/jkps.59.1314

[6] N. Otuka, S. Dunaeva, E. Dupont, O. Schwerer, A. Blokhin, J. Korean Phys. Soc. 59, 1292– 1297, (2011). DOI: 10.3938/jkps.59.1292

[7] Consultants’ Meeting, 8 to 10 October 2013, IAEA Headquarters, Vienna, Austria.https://www-nds.iaea.org/index-meeting-crp/CM-RF-2013/ (2013).

[8] W. Mondelaers, P. Schillebeeckx, Notiziario Neutroni e Luce di Sincrotrone 11 no.2, 19 (2006).

[9] D.C. Larson, N.M. Larson, J.A. Harvey, N.W. Hill, and C.H. Johnson, Application of newtechniques to ORELA neutron transmission measurements and their uncertainty analysis:the case of natural nickel from 2 keV to 20 MeV, ORNL Report, ORNL/TM-8203 (1983).

[10] S. Kopecky, I. Ivanov, M. Moxon, P. Schillebeeckx, P. Siegler and I. Sirakov, Nucl. Instr.Meth. B 267, 2345 – 2350 (2009). DOI: 10.1016/j.nimb.2009.04.010

[11] I. Sirakov, B. Becker, R. Capote, E. Dupont, S. Kopecky, C. Massimi, P. Schillebeeckx,Eur. Phys. J. A 49 144, 1- 10, (2013) DOI: 10.1140/epja/i2013-13144-2

[12] A.D. Carlson, V.G. Pronyaev, D.L. Smith, N.M. Larson, Z. Chen, G.M. Hale, F.-J. Hamb-sch, E.V. Gai, Soo-Youl Oh, S.A. Badikov, T. Kawano, H.M. Hofman, H. Vonach, S.Tagesen, Nuclear Data Sheets 110, 3215 (2009).

[13] M.S. Moore, Nuclear Instruments and Methods 169 No. 1, 245–247 (1980).DOI: 10.1016/0029-554X(80)90129-9

[14] Joint Committee for Guides in Metrology (JCGM/WG 1), Evaluation of Measurement Data– Guide to the Expression of Uncertainty in Measurement, JCGM 100:2008 (2008).

[15] M.C. Moxon, T.C. Ware, and C.J. Dean, REFIT-2009 A Least-Square Fitting Programfor Resonance Analysis of Neutron Transmission, Capture, Fission and Scattering Data –Users’ Guide for REFIT-2009-10, UKNSF(2010)P243 (2010).

82 AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014

Page 86: Analysis of Geel Spectra - AGS · NEA/DB/DOC(2014)4 Foreword This manual describes the AGS (Analysis of Geel Spectra) code (v.1.0.2), which has been devel-oped to transform count

NEA/DB/DOC(2014)4

[16] F.H. Frohner, Evaluation and analysis of nuclear resonance data, JEFF Report 18,NEA/OECD (2000).

[17] F.H. Frohner, Nucl. Sci. Eng. 126 1 – 18 (1997).

[18] D.L. Smith and N. Otuka, Nuclear Data Sheets 113, 3006 (2012).DOI: 10.1016/j.nds.2012.11.004

[19] C. De Saint Jean, G. Noguere, B. Habert, B. Iooss, Nucl. Sci. Eng. 161 No. 3, pp.363–370(2009).

[20] B. Habert, C. De Saint Jean, G. Noguere, L. Leal, Y. Rugama, Nucl. Sci. Eng. 166 No. 3,pp.276–287 (2010).

[21] K.B. Petersen, M.S. Pedersen, The Matrix Cookbook, Version 20121115, Technical Univer-sity of Denmark (2012) http://www2.imm.dtu.dk/pubdb/p.php?3274 (2014).

[22] N.M. Larson, Report ORNL/TM-9179/R8 and ENDF-364/R2, Oak Ridge National Labo-ratory, USA, (2008).

[23] M. Herman (Ed.), ENDF- 6 Formats Manual, Report BNL-NCS-44945-05-Rev (2005).

AGS – Analysis of Geel Spectra – Users’ Manual, c© OECD 2014 83