ML18054B060

From kanterella
Jump to navigation Jump to search
Rev 4 to Cpco Full Core Pidal Sys Software Description.
ML18054B060
Person / Time
Site: Palisades Entergy icon.png
Issue date: 06/05/1989
From: Baustian G
CONSUMERS ENERGY CO. (FORMERLY CONSUMERS POWER CO.)
To:
Shared Package
ML18054B058 List:
References
NUDOCS 8911010083
Download: ML18054B060 (150)


Text

    • THE CPCO FULL CORE PIDAL SYSTEM SOFTWARE DESCRIPTIO.~

G.A. Baustian Reactor En~ineering Palisades REV 0-0Ctober 20, 1~87 P*Z*INCA*871020 REV 1-Mey 26, 1~88 P*Z*INCA*871020 REV Z-January l~, 1~8~ P*C08*88003

(.

REV 3-March 27, 1~8~ P*PID*8~001 REV 4-June 05, 1~8~ P*PID*8~00Z ABSTRACT

  • This report provides a software description for the Palisades Incore Detector Algorithm, PIDAL. A detailed description of the full core PIDAL program and methodology is presented.

.~ -.

,. THE CPCO FULL CORE PIDAL SYSTEM SOFTWARE DESCRIPTION REV 4 TABLE OF CONTENTS 1- INTRODUCTION 2- DESCRIPTION of the l"iAIN PROGRAM and SUBROUTINSS 2.1 Program Section #1-- Input Collection 2.2 Program Section #2.-- XTG Theoretical Calculations 2.3 Program Section #3-- Calculation of Detector Powers 2.~ Program Section #4-- Full Core Radial Power Distribution Calculation 2.5 Program Section 115-- Full Core Axial Power Distribution Calculation 2.6 Program Section #6-- Calculations for Monitorin~ Technical Specification Compliance 2.7 Program Section #7-- Calculation of Exposures, Incore Alarm Limits and SumrnaI11 Output

(. 3- LIST of TABLES .. ' '

4- LIST of FIGURES 5- LIST of REFERENCES 6- GLOSSARY

Section l Pl REV 3 INTRODUCTION

  • The program PIDAL was developed by Consumers Power Company to calculate incore power distributions for the Palisades reactor based on measured signals from fixed Rhodium incore detect6rs. PIDAL was designed to produce full core power distributions, with the intent of having the PIDAL program and methodoloffi/

replace the older l/8th core INCA model which had been used for the first eiRht fuel cycles at Palisades.

For purposes of analysis, this report divides the PIDAL main program into seven major sections. Within each major section, a set of specific tasks are performed that to~ether complete a 1ogi cal step toward the completion of each PIDAL case.

Fi~e 1.1 shows the major data flow paths and seven sections of the main program as they will be divided for this report.

Section #2 of this report is divided into seven subsections, each of which correspond directly with one of the major proRram sections of fi~e 1.1. Within each of the seven subsections, the tasks performed and subroutines used are discussed in detail

  • Section Z PZ REV 3 DESCRIPTION of the MAIN PROGR.i\M and SUBROUTINES
  • Z.l Program Section #1 Program section #1 controls the input of most of the data used in the PIDAL calculations. The text that follows provides descriptions of the individual tasks performed by the PIDAL main program in program section #1.

The variables read in from the card image hand inputs are listed in Table #Z.O.l with a short description of each given. For a more descriptive discussion of the format of the hand inputs the reader should consult Ref #Z Attachment #1. Some important notes on these inputs are summarized as follows.

Card Image Hand Inputs The variables BLOCKs DTs TSTART and TENp are primarily used as input for an PIDAL exposure case. As inputs they have no significance for a power distribution case. The major difference bet.Ween a power distribution and an exposure case is that for an exposure cases PIDAL and XTG perform fuel burnup calculations based on the current power distribution and core thermal enerm,r given by variable DT. From the burnup calculationss PIDAL determines fuel cycle and batch average exposuress along with control rod exposures for inserted control rods. For a power distribution cases no burnup calculations are performed. The prim~ use for a power distribution run is to obtain an

  • L!P-to-date picture of the core power distribution and update the incore detector high alarm limits.

The optional report flag IPRIO (card Z) is used to produce maps of radfal and axial detector locationss assembly numbering schemes and assembly fuel type identification. If IPRIO>D.then Edits #3s4 and 5 are produced.

The flag IED (card Z) is used to notify PIDAL that non-default edits are being requested. If IED=l PIDAL will read in card 10 for edit processing.

If IED=O then PIDAL generates default edits.

  • The flag IXPOW notifies PIDAL to use XTG detector powers instead of powers from the incore detectors. See sections #Z.4.5 and #Z.4.11.

The flag IOUT (card Z) is used to activate the PIDAL statistical analysis routines BDZOIK and RECALC. These routine are used only when a detailed statistical anal~sis of the PIDAL solution is required. For more information see Reference #1.

The control rod positions and incore detector signals are normall~

supplied to PIDAL via the PIP inputs. Control rod positions mey be hand entered either indiviually or by group by setting RODSIN (card Z) and suppl~ing data on either card 4 or 5. Incore signals mey be entered via variable N (card 7) and b~ supplying data on card type 8. If a detector signal is overlaids then a corresponding flag in the arrey IFAIL is set to

"+".overlaid detector signals are reported b~ Subroutine OPTION

  • Section Z P3 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.l Program Section #1 Card Image Hand Inputs (continued)

Excore detector readings can be input to PIDAL to monitor excore quad-rant tilt and axial shape index by setting the flag I:XCORE (card Z) and

  • supplying values for. the variables XCORE and either XCPR or ASI on card t~es 3a and 3b. :XCPR is used for ~les 5 through 7 and ASI is used for cycles after cycle 7.

The variables IPTAPE, IPCTPW, DTEPAL and COMENT are not used by PIDAL for any calculations but instead serve as part of the case title. IPTAPE is used by the Retrieve support program to fetch the correct PIP information from the UNTRANS data file. These variables are read from card 1.

The variable RUNDTE (card 1) is the PIDAL computer run date and is optional because PIDAL will calculate it at run ti~e using the IBM TIMER routine.

If RUNIJTE is supplied, then that data becomes the run date for the PIDAL case.

The variables SOLBOR, CAL.POW, PSIA, O and TIN are optional hand inputs used to overide reactor operating characteristic values supplied by the PIP.

If no value is input for these variables, then the PIP equivalents will be used.

These values mey be input on card 6. See the discussion for Subroutine DECIDE,

  • Seetion Z.1.6, for further information on these variables
  • The flag IRAD (card 7) is currently unused.

Variable PMIN is the minimum acceptable detector power to be used ~

PIDAL. If any detector has a power less than PMIN (in MWth) then it will be failed in Subroutine Cl-IPMIN. The PMIN is not supplied on card 7 then it*s value defaults to 0.1 MWth.

The uncertainty factor UNUSER (card 7) is used to raise or iower the calculated peaking factor and LHGR values. It can effectively raise or lower incore detector high alarm limits. UNUSER is generally not used.

Variable RUNRQT (card ~ is used only for power distribution cases.

If a power distribution case is to mate (restart) with any exposure case other than the last one in the exposure file then RUNRQT must be set equal to the computer run date of the desired exposure case.

The variable HISTAT (card ~ specifies that the current PIDAL case is a BOC run. This forces the PIDAL restart to come from the first record of the exposure file which is generated by the Shuffle support program.

The flag TAPPUN (card ' ) is used to produce alarm 1 imi t set points. If TAPPUN=l then alarm limits will be written to FORTRAN uni t=40. If TAPPUN=O then alann limits will be written only for power distribution cases. If TAPPUN=-1 then no alarm limits will be generated

  • Section Z P4 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.l Program Section #1 Discussions of miscellaneous tasks performed within the main program follow.

Initialize Case Data This section of code initializes several PIDAL variables. This is also the point to which PIDAL returns if it is run usi~ the multiple case option.

(Multiple cases are run by supplying consecutive sets of hand input cards and PIP data on FORTRAN units 5 and 14 respectively)

Wprime Library Title The title record and control rod correction factors are read from the w*

1 i brary in the main program. The ti tl e i den tif i es the current generation of library and is edited b¥ Subroutine PAGElA. The control rod correction factors are used by Subroutine BXPWR.

Pl ant Computer (PIP) Data Input from the *variari Datalogger (PIP) Untrans data file contains plant operating data including incore detector: millivolt signals, sensitivities,

  • backround correction and flux scaling factors. Also included are control rod positions, primary and second~ loop flow conditions, reactor and steam generator powers and an identif¥i~ time for the data dump. Table #Z.O.Z is a list of all of the PIDAL variables read in from the Untrans data file on FORTRAN unit=l4
  • Sec~ion Z P5 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.l Program Section #1 Cycle Fuel Exposure Calculation After a restart from the Exposure data file is completed~ PIDAL performs a calculation of current cycle core exposure b~ utilizing the following equation:

CUREXP = TOTEP - 80CEXP + DT/(24.0

  • FUELM) (MWD/MTU) where:

TOTEP = Core average exposure from last case (MWDIMTU)

BOCEXP = Core average exposure at BOC (MWDII1TIJ)

DT = Energy distributed for this case (l'IWhrs) input on card #6 FllELl1 = Total fuel mass in core (MTU)

The calculated core exposure value is then used in the HF'P ARO critical Boron concentration calculation of Subroutine CBORON and as restart file input ti XTG via Subroutine PREXfG

  • TABLE 2.0.1 P6 REV 4 Variable Twe Description BLOCK INTEGER Identifying PIDAL case number
  • IPTAPE IPCTPW DTEPAL CCXiENT RUND TE IPR IO INTEGER INTEG-:::::R REAL DTEPl*L(4)

REAL COMENT (1 0)

INTEGER RUNJJTE(Z)

HITE GER Nurnber of datalo~ger dump to be used Reactor percent pow~r for current case Date of burnup or power distribution Free format com.~ent for PIDAL title pa.f!e Computer run date of the PIDAL case Oj:ltional PIDAL output report flag ROOS IN IN7EGER Hand input control rod position flag IXCORE INTEGER Hand input excore detector flag IOUT INTEGER Statistical analysis routine start flag IXPOW INTEGER XTG de tee tor powers f 1ag IfilJ INTEGER Oj:ltional edit input control flag REFROT INTEGER Quarter core symmetry control flag I EXPO n..rrnGER Not used by IBM version XCORE REAL XCORE(4,Z) Hand input excore detector readings XCPR REAL Hand input excore power ratio reading ASI REAL ASI(4) Hand input excore axial shape indices H PEAL H(45) Hand input rod positions by drive index ROOG REAL RODG(7) Hand input rod positions by group OT REAL Enerw in MWth for PIDAL case SCALE REAL Boronmeter scaling factor SOLBOR REAL Hand input Boron concentration in ppm CALPOW REAL Hand input reactor thermal power level z PSIA REAL Hand input primary pressure in psia z 0 REAL Hand input primary flow in l *. DE6 lbm/hr Z TIN REAL Ha'1d input primary inlet temperature z N INTEGER Number of hand input incore detectors IRAD INTEGER Unused DEV REAL Percent deviation for radial ratio check UN':JSER REAL Uncertainty factor for alarm limits PMIN REAL Minimum operable detector power in MWth SIGMA REAL Currently not used J INTEGER Hand input detector string number I INTEGER Hand input detector axial level number E REAL Hand input detector signal in mv TSTART INTEGER TSTART(4) Start date for PIDAL exposure case 3 TEND INTEGER TEND(4) End date for PIDAL exposure case 3 RUNRQT INTEGER RUNRQT(Z) Rtm date to mate power case with exposure HISTAT REAL BOC exposure file flag TAPPUN INTEGER Alarm 1 imi t output flag Notes:

1--If this value not positive~ then PIDAL uses the PIP equivalent Z--If these values zero then PIDAL uses the PIP equivalents 3--For a power distribution case TSTART and TEND are set equal to the datalogger dump date in subroutine GETEXP Table #2.0.l Variables read from PIDAL case card image input

TABLE Z.D.Z Pr PEV 4 Variable Twe Description


---~---------------

E REAL E(4-5,5) Incore detector mv si~nals 1

  • KSUBB KSUBP KSU2S MWTSGl MWTSGZ I~WTP..X TFWl REAL KSUBB(45,5)

RE.o\L KSUBFC45,5)

REAL KSUBS(Li-5, 5)

REAL REAL PEAL RE.o\L Incore detector bacKf:round corrections 1 Incore d~tector flux scalin~ factors Incore detector sensitivities Stearn generator #1 power in MWth Ste2.Ill gerierator i'f'Z poi,.1er in M'JU1 Reactor calorimetric power in liWth Steam eenera tor #1 fel~dwa ter teliQ, F 1

1 TFWZ RE.o\L Stearn ~enera tor #Z feed:..:a ter temp, F FWFLOl REAL Steam generator #1 feedwater flow Z F\<.'FLOZ REAL Steam 2enerator #Z feedwater flow Z PSGl P-EAL Stearn ~enerator #1 pressure, psia PSGZ REAL Stearn generator #Z pressure, psia PP..X RE..o\L Pressurizer pressure, psia FLORX PEAL Reactor fl ow Z TAVl REAL Prima.r~ loop #1 aver~e temperature, F TAVZ PEAL Prima!1{ loop #Z averaf!e te09erature, F DTEM?l REAL Prima!1{ loop #1 d~lta temperature, F DTEiiPZ P..EAL Prima!1{ loop #2. delta te09erature, F MWEG REAL

  • Ne2awatts electric gross, MWe MWENET RE.AL Megawatts electric net, M"l'le NIDO~ REAL ~'uclear power channel ~. psia PlTURB RE.AL Turbine s~e l pressure, psia 00.~N REAL Boronmeter Boron concentration, ppm STMFLl P..EAL Steam generator #1 steam flow, 1. OE6 lb/hr STIPLZ REAL Stearn generator #Z steam flow, 1. OE6 lb/hr VAC REAL Condenser vacuum, inches ~.
  • CHGFLO PERIOD SPAJ:IB RODPOS T/.PETM Notes:

REAL REAL REAL RE.o\L ROOPOS(4-5)

INTEGER*Z TAPETM(5)

Charging flow, gpm Reactor period Unused Control rod positions in inches withdrawn Date of Varian datalog~er data dump l~These values in PIP notation, l=top of core Z--These values converted from ADC counts to flows within PIDAL Table #Z. O.Z Variables read from Varian Datalogger UNTR.i\NS data file

Section Z P8 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z. l
  • l SUBROITT INE ZERO Omitted
  • Section Z P5' REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z. l
  • Z SUBROUTINE RBORON The purpose of SUBROUTINE RBORON is to read in the variables that are used in tl1e HF'P PRO critical Boron concentration calculation described in Section 2.1.16. The values are to be supplied on FORTRAN unit=lZ. If the allocated data set is empty, then the flag NOBOR is set to l causing Subroutine CBORON to be bwassed. If the data is successful l~ input, then NOBOR is set to 0 and the HFP PRO critical Boron concentration calculation will be performed. Table 2.1.2 describes each variable read in on unit=12 *
  • ,/

TABLE Z.l.Z PlO REV 3 Variable Twe Description BORTND REAL BORTND(l Z) Panvalet version of Boron data file NXEN INTEGER Number of Xenon vs Power data po in ts

  • NPOW INTEGER Number of power defect vs power lines NCON INTEGER Number of rod worth vs position points NBOR INTEGER Number of reciprocal Boron worth points XENDRO REAL XENDR0(30) Equilibrium Xenon worths XENPOW REAL XENPOW(30) Percent power correspondin~ to XENDRO POWEXP REM. POWEXP(l 0) Exposure points for power defect lines POWDEF REAL POWDEF'(l 0) 100fo power defects for POWEXP lines CONDRO REAL CONOR0(30) Group 4 control rod worths CONDIW REAL CCNDIW(30) Group 4 control rod positions for CONDRO REBRWH REAL REBRWH(l 0) Reciprocal Boron worth points RBWEXP REAL RBWEXP(l 0) C~cle exposures for REBRWH Boron points Table #2.1.Z Variables read in from Boron data file

Sect.ion Z Pll REV 3 DESCRIPTION of the NAIN PROGRAM and SUBROUTINES

  • 2.1.3 SUBROUTINE RODBYG The purpose of SUBROUTINE RODBYG is to unfold the hand input control rod positions entered by control rod group on card 5 to full core configuration using the conversion table documented in Ref #Z Attachment. #Z. The unfolded full core control posit.ions are stored in array H. RODBYG is called only if ROOSIN (card Z) is set to 1
  • Section 2 Pl2. PEV 4 D3SCRIPTI0!'1 of the MAIN PROGRA!1 and SU3~0UTINZS
  • 2..1.4 SUBROUTINE FLOWS The purpose of SU3ROUTINS FLOWS is to convert the PIP su;)plied reactor and f eedi..ia ter fl ow ADC counts to fl ow rates wi tl1 uni ts of 1bm/hr. The methodolomt is as described in Ref #3 pages Z-2.8 and 2-2.51. The equations can be written usin~ PIO.AL variables as:

CFLORX DR-'\Z 0 0 Reactor Flow 5 FLORX = SQ.~T(---- * - - - - )

  • 1518. (uni ts 1. OE6 lb:n/hr) 60Z3. l .E4 where:

CFLORX = FLORX - 1506.

reactor flow in counts DRXZOO = -51.60E-6

  • CTAVlZ**Z - 0.1455
  • CTAV12 + ~856.

primary coolant density CTAVlZ = 4.0 * (10.0

  • TAV12 - 45100.) I 0.6641Z aver~e primary temperature in counts TAVlZ = (TAVl + TAVZ) I 2.0 average prima.I1{ temperature in degrees F 0.043 60.0 Feedi-later Flow 3 F'WFLO = GPMFW * (1. * (TFW-430.)) * ---

+ ----

130. 7.48 where:

GPMFW = 14.242

  • S<;RT(CFV.'FLO I 6023.)

feedwater flow in ~allons per minute CFWFLO = FWFLO - 1506.

feedwa ter fl ow in raw counts

-2.6251E-5

  • CTFW**Z - 3.05E-3
  • CTFW + 6437.

DFW 100.

feedwater density CTFW = 8.0 * (TFW + 125.) I 0.66412 feedwater temperature in raw counts TFW = feedwater temperature in degrees F Note that the feedwater flow calculation is repeated for each of the steam generators. Note that the feedwater flow is calculated with uni ts of 1. OE3 lbm/hr and that comments in some PIDAL versions incorrectly stated tl1e uni ts to be 1. OE5 l bm/hr

  • Section Z P13 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • 2.1.5 SUBROUTINE ROIJFDL The purpose of SUBROUTINE RODFDL is to convert the PIP supplied control rod positions from the plants control rod drive s~stem indexing scheme to the indexing scheme used internall~ b~ PIDAL. The conversion table used is docurnen ted in Ref #2. Attachment #2 *
  • /

Section Z Pl4 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES

  • Z.1.6 SUBROlITINE DECIDE The purpose of SUBROUTINE DECIDE is to determine whether hand input or PIP supplied reactor and PCS parameters are to be used for the PIDAL case.

If hand input values for CALPOW, PSIA, 0 or TIN are supplied on input card #6, then those values override the PIP supplied equivalents.

I f any of the above hand inputs are omitted, then the PIP values, correspondini;;? to the omitted parameter, become the default.

Since the hand input values m~ be set to PIP values in DECIDE, they are first stored in variables ZS, EC, XP,, ZO and ET which correspond to SOLBOR,, CALPOW,, PSIA,, O and TIN respectively. These stored values are written on the exposure file in Subroutine PUTEXP for trending purposes.

Note tilatthe PCS boron concentration,, SOLBOR, must alweys be hand inputo The PIP values which correspond to CAL.POW,, PSIA, 0 and TIN are variables EEC, EEP, EEO and EET. These values are also saved for trending purposes. In addition,, EEC is equal to MWTRX,, EEP equals PRX,,

EEO equals FLORX/10 and EET equals the average of the two loop inlet temperatures. The equivalent values were read in from the PIP data in the main pro~ram. See Table #Z.O.Z *

  • Both the hand input and PIP values for each of the reactor parameters are edited by Subroutine PAGElA. The edit also indicates which of the input sources will be used by PIDAL for each parameter *

/,

Section Z Pl5 REV 3 DESCRIPTIOO of the MAIN PROGRAM and SUBROUTINES

  • Z.l.7 SUBROlITINE INVERT The purpose of SUBROUTINE INVERT is to convert the axial incore detector signals from PIP notation to PIDAL notation. This is necessar-Y because the PIP numbers detectors axially from top=l to bottom=5 while PIDAL uses the reverse.

Therefore, PIDAL inverts the "incore detector signals, detector sensitivities, detector backgro1.md correction factors and detector flux sealing factors after they are read in. The inversion affects PIDAL variables E, KSUBS, KSUBB and KSUBF.

After inversion, the contents of variable E (the detector millivolt signals) are copied into variable ERAW for future storage on the exposure file.

After the incore detector signals are stored in ERAW, PIDAL adjusts all of the detector signals so that their millivolt signals read aS they would have with respect to the reference detector at beginning of life. The adjustment for detector depletion takes the following form:

KSUBB(j, i)

E(j, i) = E(j, i) * (mv) depletion and background KSUBS(j, i) corrected detector signals where:

KSUBB(j, i) = detector background sensi ti vi t~ correction factor

  • for string j and detector level i
  • KSUBS(j,i) =detector depletion*sensitivit~ correction factor for string j and detector level i
  • ./

Section Z Pl6 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.1.8 SUBROUTINE DAT I f the computer run date for the PIDAL case is not supplied via variable RUNDTE on hand input card twe #1 then the IBM Subroutine TIMER is used to provide the current date and time of the run. Subroutine TIMER is described in Ref #6 section 4.1.4.4
  • The Gre~o:rian date is :returned b~ TIMER and stored in PID.i\L variable RUNOTE. RUNDTE is declared as:

INTEGER RUNDTE(Z) and the date of the computer run is stored using the notation RUNDTE(l) YYMNDD RUNDTE(Z) HHMMSSTTI (TTI is tenths of a second)

RUNDTE is also converted to a Julian date which is stored in variables Jl (month), JZ (day), J3 (¥ear), J4 (hours and minutes) and j5 (seconds) *

  • /

Section Z P17 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.l.~ SUBROUTINE GENTIT The purpose of SUBROUTINE GENTIT is to generate the case title from supplied input data.

The aver~e group 4 control rod position is calculated by finding the aver~e of the rod positions for rods 7, 11, 35 and 3~ (in PIDAL notation).

The aver~e rod position is used in the case title of a power distribution case and for determining a control rod defect for the HFP PRO critical Boron concentration calculation in Subroutine CBORON.

The case title contains information summarizing the plant operating conditions and computer run dates for each PIDAL run. The title formats for power distribution and exposure cases are slightly differento For a power distribution case, the title consists of the variables: DTEPAL, IG4ROD, IPCTPW, RUNDTE and R. For an exposure case the variables are: BLOCK, DTEPAL, IDT, IPCTPW, RUNDTE AND R. With the exception of the variable R, all of the title variables are described in Table .#Z.O.l.

The variable R is a fl~ used to note when the user has hand input the computer run date of the PIDAL case. If the user hand inputs RUNDTE (or if.

RUNDTE is supplied via a program which generates input card #1) then the

  • variable R is set to * *. If RUNDTE is not user supplied then PIDAL generates the computer run date and the variable R is set to *w. In a multiple case run, R is typically set for the second through the last case because RUNDTE
  • is only generated by the SAVE program, P4118Z5S~ for the first set of input cards. PIDAL sets R in Subroutine DATE.

The case title is constructed by writing the above variables and some unchanging data to the work file on FORTRAN uni t=Z~. The data written is then read back into a single variable TITLE. It is the variable TITLE that is then written to the PIDAL output file (FORTRAN uni t=6) at the beginning of each p~e.

Also included in the case.title, only on the first p~e of the PIDAL output file is the hand input variable COMENT from card #1

  • Section Z Pl8 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.1.10 SUBROUTINE ?AGElA (EDIT #1)

The purpose of SUBROUTINE PAGElA is to write the first half of EDIT #1 to output. Data written by PAGElA consist of:

1) The Panvalet version numbers of the datasets used by PIDAL which document the source code and input data used for each case. The PIDAL source code, Vendor Wprime Library, Boron data file source code versions are written. If the Boron data file is empty~ then it*s Panvalet version is not output.

Z) The hand input and PIP reactor operatin~ conditions are edi.ted.

This edit indicates whether hand supplied or PIP primary values (as determined by Subroutine DECIDE) will be used

  • Section Z Pl~ REV 3 DESCRIPTION of the NAIN PROGRAM and SUBROUTINES
  • Z.1.11 SUBROUTINE PAGElB (EDIT #1)

The purpose of SUBROUTINE PAGElB is to write the second half of EDIT #1 to output. Data written by PAGElB consist of:

l) The secondary plant parameters supplies by the PIP input.

At times some of these indicators may be somewhat erroneous due to faulty instrumentation.

Z) The date and time identifyin~ the PIP data dump bein~ used by the P IDAI.. case

  • Section Z PZO REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z. l.12 SUBROUTINE VERTAP (Edit #1)

The date and time of a PIP data dump bein~ used by an PIDAI.. exposure case is checked to be certain that it is representative of the time period bein~

covered by Ule case. The date of the PIP clump used -is stored in variables NODY and TAPETM. The dates of the PIDAL exposure case period are in variables TSTART and TEND. PIDAL verifies that NODY and TAPETI1 are between TSTART and TEND. If the datalom6er dump date is not between TSTART and TEND then a warnin~ mess~e is edited

  • Section Z P2.l REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z. l.13 SUBROUTINE OPTION (Edit #Z)

The purpose of SUBROUTINE OPTION is to report on the use of hand input detector signals and control rod positions.

If an~ hand overlaid incore detector signals were input to PIDAL, then the detector string and level number, along with the input signal provided, will be written out for each overley. Up to 40 hand input detector signals mey be supplied to PIDAL via card t~e~s '111 and #8. The detector signals are input in PIP notation (l=top 5=bottom) and are reported in PIDAL notation (l=bottom 5=top) b~ Edit #Z. For the c~cle 8 version of the code, the allowable number of hand input detector signals was increased to ZZ5. This was to aid in a study on the effects of failing large numbers of incore detectors.

If hand input control rod positions are used for a PIDAL case then. a message stating their use is edited. The method of input, either b~ position or b~ group, is not identified

  • Section Z PZZ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.1. 14 SUBROUTINE ADJROD (Edi t #2.)

The purpose of SUBROlITINE ADJROD is to verify that inserted control rod groups can be properly modeled given the W and peaking data supplied 9

in the PIDAL W9 library.

Central Rod Correction Factor Calculation I f the central control rod is the only group three rod inserted past the 10.0 cm dead band at the top of the active fuel height then PIDAL calc-ulates a rod correction factor to account for center rod perturbation effects on power shape. The rod correction factor concept is outlined in Ref #4 on page III-ZZ.

The central control rod correction factor is found to be the average.

of the r.od correction factors supplied for octant locations ZZ, 23 and 26 which are farthest from the core center on the diagonal. The factors for these octant locations are supplied by the fuel vendor and are read in from the Library data file.

Withdrawl of Non-Group 4 Control Rods

  • Because of limitations to the recent versions of the fuel vendors w*

1 ibrary, onl~ the group 4 and central control rods are modeled b~ PIDAL. All other control rods are automaticall~ withdrawn. For each control rod that PIDAL withdraws, a warning message is written to the output file giving the original rod position and the new, full~ withdrawn position of the rod. At this point in the main program, PIDAL also converts the rods positions from inches from core bottom to centimeters from core bottom. An adjustment for the actual axial position of the poison in the control rod is also made by using the following equation:

H(i) = (H(i) + 0.8)

  • Z.54 (result in centimeters) where:.

H(i) =rod position of rod i (of 45 rods) using PIDAL rod indexing 0 .8 = It is assumed that at zero inches withdrawn the tip of the poison is 0.8 inches up from the bottom of the active fuel Prior to removal of an~ inserted non group 4 rod banks, the positions of these banks are stored in variable XROD for use b~ Subroutine PREXTG. See Section #2..Z.5.

It should be noted that the positions of.the four part~length control rods are negated by PIDAL for ~ identification on the PIDAL rod map produeed b~ Subroutine ROIJEXP

  • Section Z PZ3 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z. 1
  • 15 SUBROUTINE GETEXP (Edi t #2.)

The purpose of SUBROUTINE GETEXP is to insure that the current PIDAL case collects proper restart data from the PIDAL exposure data f i 1e. GETEXP scans the exposure file in search of the correct mating or previous PIDAL cases out-put records. The search is based on the BLOCK number and plant operation dates suppl ied by the user for the current PIDAL case.

For a power distribution run, PIDAL will normally mate with the last expo-sure case run. It is possible for the user to overide this feature and mate a power distribution case with any previous exposure case via the hand input variable RUNRQT.

For an exposure case, PIDAL again will nonnally mate with the last exposure case run. PIDAL exposure cases are kept track of via their BLOCK numbers and operation dates. I f an exposure case is rerun, i.e. BLOCK number duplicated, then on 1y the most recent case wi th the dupl i ca te BLOCK wi 11 be considered current.

When an exposure case search is initiated, PIDAL either searches for the last occurance of the current BLOCK number minus one, or for the last occur-ance of the current BLOCK number. I f the current case is a re-run then the mate will have the same BLOCK number, otherwise the mates block number must equal the current BLOCK number minus one

  • Once a suitable mate based on BLOCK number has been found, the operation date of the mate is checked to insure that the PIDAL cases mate based on real plant operation time. If this check passes, then the mate is good and control returns to the main prowam. If an error with the BLOCKS or dates on the exposure file is detected then the PIDAL run is halted and a warning message is produced *

. Table #2.l.15 contains a list of variables returned to the main prowam when a mate for the current PIDAL case is found

  • TABLE Z. l .15 PZ4 REV 3 Variable Twe Description FUEXPB REAL FUEXPB(Z04,Z5) BOC 3-D exposure distribution

!START INTEGER TSTART(4) Exposure period starting date TEND INTEGER TEND(4) Exposure period ending date RUNDTE INTEGER RUNDTE(Z) Computer run date of current case l'1RUNOD INTEGER MRUNOO(Z) Date of computer run used as exposure base BLOCK INTEGER BLOCK Number of exposure case OT REAL OT Effective full power d~s of exposure case CALPOW REAL CAI.POW Calorimetric power for current case INPLITD INTEGER INPUTD(Z) Computer run date of original case if this case was a rerun F3DZ5 REAL F3DZ5(204,Z5) Measured 3-D power distribution for case x REAL X(80) Trend data for case AO REAL AO Axial offset for case ERAW REAL ERAW(45,5) Unadjusted detector signals for case ETHOUR REAL Ellapsed time for exposure case, hours PEFF REAL Enermir for exposure case in MWhr TOTEP REAL Core average exposure MWD/l111J FllEXP REAL FUEXP(Z04,Z5) 3-D fuel exposure distribution ROOEXP REAL RODEXP(45,25) 3-D control rod exposure distribution KSUBS REAL KSUBS(45,5) Detector sensitivities for case OLDK REAL OLDK(45,5) Detector sensi ti vi ties for last case LHGRA REAL UIGRA(204,25) All pins nodal 1 inear heat rate X'l'G3D REAL XTG3D(51,12) XTG 3-D normalized power distribution EXPLIB INTEGER Exposure file FORTRAN unit number Table #2.1.15 Variables accessed on the exposure file b::t Subroutines GETEXP and PUTEXP

Section Z PZ5 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.1.16 SUBROUTINE CBORON (Edit tl'l)

The HFP ARO critical Boron calculation is optional and is done onl~

when data can be input from the Boron data file on FORTRAN uni t=lZ in SUBROUTINE RBORON. (Section Z.l.Z)

The equation used for the HFP ARO critical Boron calulation is:

F1JPOBO = BORDIF - 80RROD + SOL80R (ppm for HFP Afro) where:

BORDIF = (DIFREA + DELXEN)

  • DELBC ppm Boron adjustment for power and Xenon defects BORROD = CONWOR
  • DELBC ppm Boron adjustment for inserted control rods SOL80R =Core measured ppm Boron concentration either from hand inputs or PIP data The components of the BORDIF equation can be broken down as follows:

DIFREA =DEFECT * (l - PERPOW/100) power defect adjustment ~ delta rho)

  • where:

DEFECT = Interpolation of POWDEF and POWEXP from Boron data file as a function of CllREXP PERPOW = Reactor percent power for current case DELl<EN = XENCON(l) -.XENCON(Z)

Xenon defect adjustment ~ delta rho) where:

XENCON(l) = Xenon worth for core at full power.

XENCON(Z) = Interpolated Xenon worth for core at current operatinQ power.

These values interpolated from XENPOW and XENDRO Boron data file data as functions of reactor power PERPOW b~

usinQ Function CONINT.

DELBC = Interpolated core reciprocal Boron worth as a function of exposure CUREXP. Interpolated from REBRWH and RBWEXP data of the Boron data file.

The components of the BORROO equation can be broken down as follows:

CONWOR = Interpolated worth of control rod data CONDIW and CONDRO from Boron data file usinQ Function CONINT. Interpolated as a function of ~roup 4 rod position G4ROD.

  • DELBC = Interpolated core reciprocal Boron worth as a function of exposure CUREXP. Interpolated from REBRWH and RBWEXP data of the Boron data file.

Section Z PZ6 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.1.16 FUNCTION CONINT The purpose of FUNCTION CONINT is to interpolate arr~s of data for the predicted HFP PRO critical Boron concentration calculation. Specifically, CONINT 1 inearly interpolates control rod and xenon worth data based on group four control rod positions and reactor thermal power levels respectively.

If an input rod position or reactor power level is before the first rod worth or Xenon worth data point then no interpolation is done and the value returned by CONINT is equal to the first data point.

If the input rod position or reactor power level is within the range of rod worth or Xenon worth data available then the following equation is used to perform the interpolation.

(X(i) - D)*Y(i-1) + CD - X(i-l))*Y(i)

X(i) - X(i-1) where:

D = input rod position or reactor power level X(i-1) =rod position or power level less than D X(i) =rod position.or power level greater than D

  • Y(i-1) = rod worth or Xenon worth data point Y(i) 1 corresponding to X(i-1)

= rod worth or Xenon worth data point corresponding to X(i)

= index position in arr~s of rod position or power level point closest to and

~ter than input point D.

If the input rod position or reactor power level is beyond the range of rod worth or Xenon worth data availiable then the following equations is used for the interpolation.

(X(n) - D)*Y(n-1) + CD - X(n-l))*Y(n)

CON INT = ~~~~~~~~~~~~~~~~~~~

X(n) - X(n-1) where:

n = index position in ar~s of rod position or power level of the last good data point.

All other variables as described above Note that if a negative rod worth is calculated, then the rod worth is set to be zero

  • TABLE Z. l.16 PZ7 REV 3 Variable Twe Description INTEGER N Number of ~ood data points in arrays X(30) and Y(30) x REAL X(30) Arrey of abcissa values to be interpolated y REAL Y(30) Arrey of ordinate values to be interpolated D REAL X operand used to interpolate between arrey values for an unknown Y value CON INT REAL FUNCTION Result of interpolation~ contains the previously unknown Y value Table #Z.1.16 Variables used in FUNCTION CONINT
  • /

Section 2 P28 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlffINES

  • 2 .1. 1? SUBROUTINE DETAXL (Edit #3)

The purpose of SUBROUTINE DETAXL is to produce an edit identifyin~ the axial position of the incore detectors within the reactor core. The detector centers are located at 10, 30 ,50 ,?O and 510 percent of the active fuel heisht. The detector positions are siven both in feet arid centimeters.

The active fuel heisht is known to PIDAL via variable HA, which is set to 335.28 cm (132 inches) in the BLOCK DATA section of the code. Note that for recent cycles, the cold fuel heisht was actually 131.8 inches. It is not known whether axial fuel expansion was taken into account in determininll? the 132 inch hei~ht *

  • \_/

Section Z PZ~ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.1.18 SUBROlITINE CORMAP (Edit #4)

The purpose of SUBROUTINE CORMAP is to produce a radial core map of the reactor core showing the locations of the incore neutron detector strings.

This report shows each detector strings radial location in the full core configuration. The detector numbering is also given in Ref #Z. Attachment 3

  • Section Z P30 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • 2.1.1~ SUBROUTINE ASSMAP (Edit #5)

The purpose of SUBROUTINE ASSMAP is to edit maps showing the assembly numbering schemes used by PIDAL in full core, one-quarter core and octant core confi~ations. An octant core map showing the current fuel type loading is also produced from the data supplied to variable FUTYPE in the BLOCK DATA section of the code

  • Section Z P31 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES
  • Z. l .ZO SUBROlITINE RBANK (Edit #6)

The purpose of SUBROlITINE RBANK is to assi~n inserted control rods to PIDAL control rod bank re~ions and to verif~ that the control rod insertion pattern follows the sequence as designated in Section 3.10 of Ref '111.

PIDAL has the capabi lit~ of accommodating the four control rod Qroups that make up the Palisades regulating group. This al lows for up to five possible rod bank re~ions desiQnated b~ the note at the end of Table #Z.l.ZO.

If the Group 4 rods are full~ inserted in the core then there will be no rod bank l O region and BANK(l) will equal l. If there is an unrodded axial region then BANK(l)=l 0 and BANK(Z)=l.

In the current version of the PIDAL code, onl~ rod bank re~ions l 0 and l are supported as all non-group 4 rods are withdrawn from the core. If the vendor Libr~ data file is extended to contain wprime data for all rod banks (and Subroutine AOJROIJ is modified) no chan~es need be made to SUBROlITINE RBANK in order to allow for coveraQe of all five rod bank regions

  • TABLE 2.1 .20 P32 REV 3 Variable Twe Description S(l) REAL S(5) Aver~e group 4 rod position S(Z) REAL S(5) Ave~e group 3 rod position S(3) REAL S(5) Ave~e group 2 rod position S(4) REAL S(5) Aver~e group 1 rod position S(5) REAL S(5) Core active fuel height, 335.28 cm SNUM(l) INTEGER SNUM(4) Rod group number assignment, 4 SNUM(Z) INTEGER SNUM(4) Rod group number assignment, 3 SNUM(3) INTEGER SNUM(4) Rod group number assignment, Z SNUM(4) INTEGER SNUM(4) Rod group number assignment, l 8.ANK INTEGER BANK(5) Rod bank region numbers, see note l Not.es:

1-Rod bank region 10 reserved for an unrodded axial segment Rod bank region l is the rodded region for group 4Ts onl~

Rod bank region Z is the rodded region for groups 3+4 Rod bank region 3 is the rodded region for groups Z+3+4 Rod bank region 4 is the rodded region for groups 1+2+3+4 Table #Z.l.ZO Variables used in SUBROUTINE RBANK

Section Z P33 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.Z Pro~ram Section #Z Pro~ram section #Z controls the subroutines that perform the XTG three dimensional theoretical power distribution calculation. Theoretical couplin~

coefficients and boundary conditions are derived from the XTG solution.

The XTG pro~ram is supplied by Advanced Nuclear Fuels Corporation (ANF),

formerly E>o<on Nuclear. For all versions of PIDAL, the latest XTG version UJUN88 was incorporated. Sections Z.Z.l throu~h Z.Z.7 discuss how the new installation of XTG interfaces with PIDAL

  • Section Z P34 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z. Z.1 SUBROUTINE EXPAND The purpose of Subroutine EXPAND is to collapse the three-dimensional XTG power distribution from 51 bundles by 4 nodes/bundle by lZ axial nodes to 51 bundles by l node/bundle by lZ axial nodes. Theoretical detector powers are also calculated.

Collapse XTG Power Distribution The power distribution retl.n"'ned from XTG is a three-dimensional quarter core 51 bundle by 4 nodes/bundle by lZ axial nodes distribution. The XTG power distribution is stored in variable P. The XTG power distribution is collapsed by computing the aver~e normalized powers for each of the 51 assemblies lZ axial nodes and storing the results in variable XTG3D. Note that the XTG model assumes that axial node 1 is at the top of core and PIDAL assumes the opposite.

Therefore, the XTG power distribution is flipped during the collapse process and variables XTG3D and XTGAX assume axial node 1 to be at the bottom of the core.

Calculate Radial and Axial Power Distributions The radial theoretical power distribution is calculated by summing the

  • axial nodal powers in each assembly and then normalizing the resulting 51 integrated assembly powers by the core average assembly power. The radial power distribution is stored in variable XTGS and is calculated as follows.

XTGS(i) = XTGS(i)

SUM = SUM +

+ XTG3D(i,j)

XTG3D(i ,j)*4.

i=l to 51, j=l to lZ integrated assembl~.powers i=l to 51, j=l to lZ total core power SUM = SUM/Z04o core aver~e assembl~ power XTGS(i) = XTGS(i)/SUM normalized theoretical assembl~

powers The axial theoretical power distribution is calculated b~ summing the radial nodal powers in each of the lZ axial levels and then normalizing by the core aver~e level power. The axial power distribution is stored in variable XTGAX and is calculated as described below.

XTGAX(i) = XTGAX(i) + XTG30(1,j)*4. i=l to 51, j=l to lZ total power for level j SUM= SUM*l7. average power per axial level, SUM carried from radial calculation XTGAX(i) = XTGAX(i)/SUM normalized theoretical axial powers For both the radial and axial calculations, the multiplier 4 is used because 4 is the number of times a given assembly, i, appears symmetrically in the full coreo

Section Z P35 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROLITINES

  • Z.Z.l SUBROUTINE EXPAND (continued)

Calculation of Theoretical Detect.or Powers A theoretical axial power distribution consistin~ of 51 assemblies by lZ axial nodes was generated from XTG as described earlier in this section.

From this power distribution it is desired t.o calculate the theoretical inte~rated power seen by each of the five axial incore detect.ors in all 51 assembly 1oca ti ans.

The theoretical detect.or powers will be found by utilizing polynomial functions, fitted from the known XTG axial shapes. These functions are of the same form for each assembl~ location and therefore this discussion will deal with the methodolo~ used on a single assembl~ basis.

Because the computer has numerical limitations in raising numbers t.o hi~h powers, the polynomial fitting function is limited t.o seven terms. Therefore, the core is divided into three sections with a separate polynomial function calculated for each section. Section l consists of XTG nodes l throu~ 7 and covers detect.ors l and Z. Section Z consists of XTG nodes 4 throu~h l O and covers detect.or 3. Section 3 consists of XTG nodes lZ throu~h 6 and covers detect.ors 5 and 4. Refer t.o Figure #Z.Z.l for a graphical description of the detect.or and node locations *

  • form:

The polynomial equations used t.o model the axial power shapes are of the Power(x) = A1 + >..zx + A!,x'?. + Atx:?. + A5x "" + A<...x s. + A,.x G..

Where:

x = Axial hei~t A = Polynomial coefficients (unknown)

The known integral powers from XTG for each of the lZ axial nodes can be described bl{ an equation of the form:

x*

(' ~ ~ 3 ~ s ~

~;- (A I + AzX + A3X + ~x + Asx + Abx + A';/x-;dx Where:

1 = XTG axial node number x = Axial he1~t of Xl'G node 1 A = Polynomial coefficients (unknown)

Power.:, = Integrated power over XTG node 1 (known)

  • 1_

P36 Rev3 SECTION 2 DESCRIPTION OF THE MAIN PROGRAM AND SUBROUTINES 2.2.1 SUBROUTINE EXPAND (CONTINUED)

CALCULATION OF THEORETICAL DETECTOR POWERS This equation is integrated to yield:

X.1 Power.

1 Which can be reduced to:

Power. = [A (x.-x. ) + A 2 (x~-x~ ) + A 3 (x~-x~ ) + A4(x~-x~ ) +

1 1 1 1- 1 ~ 1 1-1 3"" 1 1-l '4"" 1 1-1 As(x~-x~

-s 1 1-

1) + As(x~-x~ 1) + A1(x?-x? l)]/(X. - X. 1)

-c; 1 1- ~7 1 1- 1 1-Since seven axial nodes will be treated at a time there are seven equations for Power, whose resulting values are known from XTG. There are seven values of A which are unknown. This system of seven equations and seven unknowns will be solved by subroutine DGELG, which is described in detail in-Reference 9. In matrix notation, the problem can be described as~

+

p = xl Where Power 1 Ai

_Power 2 A2 Powers As p = Power 4

+

A= A4 Powers As Power 6 As I Power 7

~

A1 2 2 s s 7 7 X1 - Xo XJ - Xo XJ - XQ XJ - XQ 2 3 ........ 7 X1 - Xo X1 - Xo X1 - Xo X1 - Xo 2 2 s s 7 7 X2 - X1 X2 - X] X2 - X] X2 - Xl.

x 2 3 ........ 7 X2 - X1 X2 - X1 X2 - X1 X2 - X1 7

2 2 s 3

-7 xs7 X7 - Xs X:z - Xs X:z 2 3 ..........

X7 - Xe X7 - Xs MI0786-00SOA-OP03

Section Z P37REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.Z.l SUBROUTINE EXPAND (continued)

Calculation of Theoretical Detector Powers The values returned from DGELG are the coefficients A. With these values known, the detector powers are determined by utilizing the following equation.

A2 2 2 Power. = [A1 (Top. - Bottom .) + - (Top. - Bottom.) +

J J J 2 J J Aa 3 3 A4 4 4 (Top. - Bottom .) + - (Top. - Bottom.) +

3 J J 4 J ' J As 5 5 As 6 6 (Top. - Bottom .) + - (Top. - Bottom.) +

5 J J 6 J J A7 7 7 (Top. Bottom.)]/(Top. - Bottom.)

7 J J J J

  • From this equation, the power in any arbitrary interval j, bounded by bottom.-

and top., can be determined.

J As stated previous!~, tile tileoretical detector power solution metilod chosen requires tilat tile core be split up into tilree separate axial ~ion J

calculations. The first calculation performed is for the bottom core region covering detectors 1 and Z. The solution method, as implemented in PIDAL is as follows.

PIDAL first generates tile Power and X matrices as described above and stores tilem in variables C and A respectively. U'le Power matrix C contains tile XTG normalized power distribution for the bottom seven nodes of tile core and all 51 assemblies. The matrix X contains tile dependent variable terms tilat resulted from tile integration. These terms are functions of core height and are calculated using:

X(i+l)**j - X(i)**J A(i ,j) i=l to 51 assemblies J*(X(i+l) - X(1)) j=l to 7 function terms Since only seven axial nodes are processed at a time, a relative axial indexing scheme was adopted in order to make tile curve fit exact. This scheme is detailed in Figure #2.Z.l and is implemented via the values in X*

Section Z P38 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.Z.l SUBROUTINE EXPAMJ (continued)

Calculation of Theoretical Detector Powers Subroutine DGELG solves for the solution matrix A which is returned in variable C. The detector power solutions for the bottom two detectors are then obtained b~ implementing the equations:

TOP(l)**j - BOT(l)**j PDQS(k, 1) = PDQS(k, 1) + C(j ,k)* - - - - - - - - - detector l j*(TOP(l) - BOT(l)) power TOP(Z)**j - BOT(2)**j PDQS(k,Z) = PDQS(k,2) + C(j ,k)* - - - - detector z.

J*CTOP(2) - BOT(2)) power where:

C(j ,k) = coefficient matrix 7 terms for each of 51 assemblies TOP(l) = top of detector 1 using relative indexing positions described~ variable X.

BOT(l) = bottom of detector 1 using relative indexing positions described~ variable X.

TOP(2) = top of detector 2 using relative indexing positions described~ variable X.

BOT(Z) = bottom of detector 2 using relative indexing positions described~ variable X.

j = function term loop control, 1 to 7 k = assembl~ loop control, 1 to 51 The matrix, DGELG and PDQS calculations are then repeated twice, once for the axial region containing detector 3 and then for the axial region con-taining detectors 4 and 5. After the theorectical detector powers for all five detector levels ~- calculated, they are stored in variable TDET for later use b~ PIDAI...

Theoretical Detector Power Normalization The theoretical detector powers are normalized~ calculating an average detector power for each of the five axial detector regions and then dividing each detector power b~ iVs respective level average. The equations for the level averages and normalizations are:

AVG(i) = AVG(i) + PDQS(j,i)*SYM(j)/204.

where:

AVG(i) = average detector power for axial level i

. PDQS(j,1) = theoretical detector power for octant J and axial level i

  • PDQS(j, 1)

SYM(j) = number of ~etric locations for octant in the ful 1 core

= PDQS(j, i)/AVG(i) result is level normalized j

I .

Section Z P35l REV 3 DESCRIPTION of Ule MAIN PROGRAM and SUBROUTINES

  • After the theoretical detector powers have been calculated, they are edited b::t incore detector level as EDIT tff. The actual generation of the radial detector power maps is performed by SUBROUTINE QTRMAP. See section Z.4.Z
  • TABLE Z.Z.l P4-0 REV 3 Variable T~e Description p REAL P(250 0) XTG 1/4- Core 3-D Power Distribution 51 bundles by 4- radial nodes/bundle by 12 axial nodes/bundle XTGS REAL XTGS(51) Normalized Radial XTG power distribution XTGAX REAL XTGAX(l2) Normalized Axial XTG power distribution XTG3D REAL XTG30(51,12) Normalized 3-D XTG power distribution XTG3D(x, 1) = bottom of core c REAL C(7 ,51) Temporary stor~e A REAL A(7,7) Temporary stor~e TOP REAL TOP(3) Detector tops using relative indexing BOT REAL BOT(3) Detector bottoms using relative indexing TDET REAL TDET(51,5) Theoretical detector power distribution PDQS REAL PDQS(5 l , 5) Theoretical detector power distribution normalized by axial detector level AVG REAL AVG(5) Axial detector level normalization factors Table #2.Z.l Variables used in SUBROUTINE EXPAND

Section Z P41 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z. Z. Z SUBROUTINE EXTRAP (Edi t #8)

The purpose of Subroutine EXTRAP is to calculate theoretical axial boundary conditions for each assembly in the core. The boundary condition is defined as the real core height as a fraction of the apparent core height. These boundary conditions are used later in PIDAL by the assembly power axial curve fitting routine in Subroutine ZIADAZ. It is assumed that the reader is fami 1 iar with the theory behind ZIAD.AZ and is directed to Sections #Z.5 and #Z.5.1 before readinQ further in this section.

Subroutine EXTRAP is the controllinQ subroutine for the boundary condition calculations, as the bulk of the work is done via the coding in Subroutine ERROR which is called ~ EXTRAP.

The method used in EXTRAP to determine the best bound~ condition for a given assembly is a simple iterative process. Several boundary condition values near the top and bottom of the core are assumed. A linear least squares computation is used to fit the known XTG assembly axial power distribution with a Fourier series. There is some squared sum error associated with the computed fit. The process iterates until the bound~ condition which results in the best fit (minimizes the square sum error) is foundo The initial bound~ condition for an assembly is assumed to be 1.0 (which means that the apparent core height equals the active fuel height) and the square sum error for this ~ess is calculated by Subroutine ERROR.

The error calculation is then repeated by decreasing the bound~ condition by steps of .05 (increasing the apparent core heiQht) until a minimum square sum error is found.

After a minimum error is found using the large iteration steps, the bound~ condition used for the minimum calculation is increased by 0.04 and the iteration process is repeated using smaller bound~ condition decrements of O. 01 until the minimum square sum error is found.

The entire iteration process is repeated for each of the 51 assemblies, after which all of the calculated values are written to the PIDAL output file as EDIT #8. The bound~ condition map is generated~ Subroutine QTRMAP described by section Z.4.Z.

It should be noted that if the bound~ condition reaches a values or 0.50 and has not conver~, then the iteration pro6ess is stopped and the bound~ condition is assumed to be 0.50 by PIDAL. This is an unrealistic value and the user should assume something is wronQ if a bound~ condition of 0.50 is used for any assembly. No warnings are given if this condition arises.

This discussion has not dealt with the actual calculations used in determining the square sum error in a given bound~ condition calculation.

For a discussion on this subject refer to Section Z.Z.3 on Subroutine ERROR

  • TABLE Z.Z.Z P4Z REV 3 Variable Twe Description POW REAL POW(51, lZ) XTG power distribution copied from array XTG3D.

IOCT INTEGER IOCT current assembly counter NOCT INTEGER NCC! current assembly counter TERR REAL TERR square sum error of the axial calculation in Subroutine APFS for last iteration SSE REAL SSE square sum error returned from APFS for current iteration TBC REAL TBC boundary condition used for the current iteration BC INC REAL BCINC boundary condition increment to be used be tween i tera ti ans PASSZ LOGICAL PASSZ Fl~ for determining whether to start using smaller iteration steps BC REAL BC(51) Final calculated boundary conditions for all 51 assemblies.

Table #2.2.2 Variables used in SUBROl.ITINE EXTRAP

Section Z P4-3 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.Z.3 SUBROC.ITINE ERROR Subroutine ERROR determines the square sum error associated with a 1 inear least squares fit of a fifth order sine function to the XTG axial power shape for a ~iven assembly and boundary condition. 1bis sine function used is the same as developed within the discussion of Subroutine ZIADAZ in Section #Z.5.1.

Subroutine ERROR performs three functions. First, ERROR determines the dependancy of the sine function on the current boundary condition for the assembly. This allows a sine series polynomial (consist.in~ of the expanded form of equation #Z.5.lf) for the assemblies current boundary condition to be represented by Function FFCTZ. A set of normal equations for a 1 inear least squares fit to the sine series polynomial are then set up by Subroutine APLL. Lastly, Subroutine APFS is used to solve the normal equations set up by APLt. and the square sum error associated with the least squares fit is determined.

1be dependancy of the sine series polynomial on the current boundary condition is ~iven by:

Z(i) = TBC

  • PI * ( - - - - 0.5) HP

+

13Z

  • where:

TBC =boundary condition for the current iteration PI = 3.1415,2654 HP = l

  • 57' 07'6327' DX = hei~t in inches of axial node boundary, i
  • bottom of node l i=l, DX=O.O top of node 1 -- i=Z, DX=ll.D bottom of node Z -- i=Z, DX=ll.D top of node Z -- i=3, DX=ZZ. D top of node lZ-- i=l3, DX=l3Z.D A discussion on the use of Subroutines APLL and APFS follows. For a complete discussion on their use the reader is directed to Ref #-'}.

Subroutine APLL sets up a matrix of normal equations based on the five mode Fourier sine function described by Subroutine FFCTZ. The matrix is then used by Subroutine APFS to determine the error in the current boundary condition iteration.

  • Section Z P44 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.Z.3 SUBROUTINE ERROR (continued)

Given the following equation, representing the power shape in an octant location as a function of core heieht:

  • P(Xj) = C1 G1 (xj) + C~G~(Xj) + c;_G3 (x;) + C~G¥(xi) + CsGs(Xj) where:

P(Xj) = theoretical power as a function of core height (known) *

  • c =Coefficients of linear combination (~own)

G(Xj) = five terms of sine series described b~

Function FFCTZ (known)

It is desired to calculate the set of coefficients C 1* through c5 such that the square sum error, using a least squares fit of the sine series function is minimi2ed. In mat.rix notation the problem is written as:

-..l> ~

AC=R and

  • -A is a 5 b~ 5 ~et.ric mat.rix with values onl~ on the upper side of the diagonal. It"s components are generated using the equation:

l"I..

a)~ == ~ WGT(Xj)Gk(x 1)G,(Xj) J=l to 5 sine series terms j.,.,, k=l to J where:

YGT(Xj) = Fraction of XTG node i which is moni tared ~

a detector G(x;) = five terms of FFCTZ sine series function PictoriallV the ~ mat.rix appears as:

12 12 12 I WGT(x.)G 1 (x.)G 1 (x.) I WGT(x.)G 1 (x.)G2(x.) ........ I WGT(x.)G 1 (x.)G 5 (x.)

i=l 1 1 1 i=l 1 1 1 i=l 1 . 1 1 12 12 .

I WGT(x.)G2(x.)G2(x.) ........ I WGT(x.)G2(x.)G 5 (x.)

. -1 1-1 1 1 . -1 1-1 1 1 12 I WGT(x.)G 5 (x.)G5(x.)

i=l 1 1 1

Section Z P45 REV 3 DESCRIPTION of tile MAIN PROGRAM and SUBROUTINES

  • Z.Z.3 SUBROUTINE ERROR

~

R is a 6 element vector ,,_ which is ~enerated usin~ tile equations:

r~ = ~* WGT(Xj)POW(Xj)G~(Xj) j=l to 5 sine series terms 1:. I l'L r" = ~ POW(xi)POW(Xj) 1.:.1 where:

POW(xj) = Power in node i of current assembly

.:i..

Pictorially tile R vector appears as:

r,

.,.). r-a.

R = r3 r'1 rs

- r"~

The !! matrix and R vector are Ulen _£Ombined to form a 6 by 6 matrix wi tl1.

tile rif5ht-hand-column consisting of tile R vector. The resul ti~ matrix is Ulen stored columnwise in tile one-dimensional arrey YORK and returned to ERROR by APU..

~

Subroutine APFS Ulen solves tile WORK matrix for tile unknown vector C and determines tile square sum error by utili2ing a least-squares fit of tile resultin~ linear combination. The square sum error is returned to ERROR from APFS in tile last element of tile WORK arrey. ERROR returns tile square sum error to EXTRAP via tile variable SSEo

  • I!' *.* ~

TABLE Z.Z.3 P46 REV 3 Variable T~e Description z REAL Z(l3) argument of the cosine function used in Subroutine FFCTZ TBC REAL TBC boundary condition used for the current iteration FFCTZ EXTERNAL FFCTZ subroutine that contains the integral of the 5th order sine series function p REAL P(6) arrey containing results of integration of Subroutine FFCTZ WORK REAL WORK(Zl) arrey returned by APlL containing coef-ficient matrix for least squares fitting routine APFS SSE REAL SSE square sum error returned from APFS for current iteration Table #Z.Z.3 Variables used in SUBROlITINE ERROR

Section z P47 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • 2.2.4 SUBROUTINE FFCTZ Subroutine FFCTZ contains the integrated pol~omial sine series function described by equation #2.5.lf. FFCT2 is used internally by Subroutine APU. to define a set of normal equations for a least squares fit of the given pol~omial to the XTG data. The arguments of the sine series, which are stored in variable Z, were calculated by Subroutine ERROR
  • Section Z P48 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.2.5 SUBROl.fIINE PREXTG The purpose of Subroutine PREXTG is to generate card image input for XTG to use during run execution. The cards generated control the XTG restart function and define the core operating conditions that the current PIDAL case assumes. The cards generated b::I PIDAL are the XTG 2-4, 3-1, 3-2, 10-0, 21-0 and -1 cards. For a complete description of the data required on these cards consult Reference #12.

2.2.6 SUBROUTINE AFTXTG Subroutine AFTXTG is a XTG post-processor which extracts data needed b::I PIDAL from the XTG storage vector. The data is merely copied from the XTG storage vector and placed into local PIDAL variables. The data extracted include the current case XTG power distribution, xenon, iodine, exposure, moderator densi W and flux distributions. AF'DITG is essential 1::1 a cow routine so no further description is warranted.

  • 2.2.7 SUBROUTINE CHKXTG The purpose of Subroutine CHKXTG is determine if PIDAL needs to activate XTG to predict the core power distribution. This routine was actuall::1 written for online use when PIDAL would be running continuously. Almost without exception, XTG will run with everv PIDAL case run with the IBM versiono CHKXTG will run XTG if an::1 of the following coditions are met:
1) The current PIDAL run is a single power distribution caseo
2) The current PIDAL case is an exposure case, either b::I itself (sin~le),

or part of a depletion run.

3) If reactor power, boron concentration or primary coolant pressure have varied b::1 greater than one percent from the previous case in a myltiple case PIDAL run. A rod position check will also be added.

If CHKXTG determines that XTG should run, then a message following Edit #6 is printed statin~ the reason for running XTG. CHKXTG then cal ls Subroutine PREXTG before passin~ control to XTG itself. Upon successful completion of XTG, CHKXTG resumes control and calls AFTXTG, EXPAND and EXTRAP in turn

  • Section Z P4-5J REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.3 Pro~ram Section #3 Pro~ section #3 controls six subroutines that convert the incore detector millivolt signals to detector powers. The conversion is done b~

utili2ing wprimes (W 9 ) which are detector si~nal to power couplin~ coef-ficients. Corrections to the detector si~als are also made which take into account inserted control rod perturbation effects *

.. **~.-**-

  • ./

Section Z P50 REV 3 DESCRIPTIOO of the MAIN PROGRAM and SUBROUTINES

  • 2.3.l SUBROUTINE OCTEXP (Edit #42)

The purpose of SUbroutine OCTEXP is to col lapse the full core PIDAL exposure distibution from 204 assemblies b~ Z5 axial nodes to an octant distribution of 28 assemblies b~ 25 axial nodes.

OCTEXP collapses both the BOC and current exposure distributions in arreys FUEXP and FUEXPB and stores the result in EXPO and EXPOB. The arreys EXPO and EXPOS are then used ~ Subroutine WCALC for interpolatinQ the WT librant.

Altematel~, an edit of EXPO and EXPOS can be made (Edit #42) ~ settin{;!

IFLAG=l. IFLAG is a parameter passed into OCTEXP ~ the subroutine cal 1. PIDAL normall~ produces this edit after callinQ Subroutine EXPOZF (section 2.7'.l) from the main program

  • Section Z P5l REV 3 DESCRIPTION of the MAIN PROGRAl1 and SUBROUTINES
  • Z.3.Z SUBROlITINE WCALC The purpose of Si..Jbroutine WCALC is to interpolate between the detector signal to power coupling coefficients or wprimes cw*) supplied in the fuel vendors library data file. AA interpolation of the supplied data, based on the current exposure of the fuel surrounding a detector, is necessary because the library is only complete for a few exposure points throughout a given cycle.

Calculation of Detector Exposures The total accumulated exposure in the region of each detector is found by taking the average of the exposures in the three axial fuel nodes closest to each detector. These exposures are calculated from the 3-D exposure dist-ribution variable EXPO and are stored in variable BU. The following table shows the relationship between the PIDAL axial fuel nodes and five detector levels. This data is represented graphically in Figure #Z.Z.l.

Detector Level PIDAL nodes covered l bottom of core Z,3,4 z 7,8,,

3 lZ,13,14 4 17 ,18,l' 5 top of core ZZ,Z3,Z4 The following equation is used to calculate the exposure in the region of detector l for any octant location, 1. This equation is applied in a similar fashion to the remainder of the detector levels. Note that these exposures are total accumulated assembly exposures since BOL for the given region.

EXPO(i,Z) + EXPO(i,3) + EXPO(i,4)

BU(i,l) = ---------------

3 Interpolation of W" Values The w* values are read in from the fuel vendor library data file by octarit location. There is a set of up to 25 W" points for each octant location.

After each read, the W" and exposure data in variables. Y and X respectively are interpolated based on the bundle exposures BU at each of the five axial detector levels. In this w~, W" values are generated for all ZS octant locationSby five axial levels. The interpolation is performed by Function XPINT which is detailed in Section z.3.3

  • Section Z P5Z REV 4 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • 2.3.Z SUBROUTINE WCALC (continued)

E.xpand WT Values to 45 Detector Strings Up to tl1is point, the WT values calculated have been stored by octant location and detector level. For use later in PIDAL it is necessary to expand the WT data to all 45 detector stri~s. This is done by associating each of the detector strings with tl1eir octant location via the arrey ID and copying the WPRIME values to their respective string locations in variable W.

During this step, the WPRINE values are adjusted by the reference d~tector sensitivity and a detector power to calorimetric power scaling factor is applied. The following equation is used for the expansion and adjustment:

CO.'\IST W(K,N) = WPRIME(IDD,N) - - -

SCAL where:

W(K,N) =reference sensitivity and power corrected WT for detector string K and axial level N WPRil1E(IDD,N) = interpolated w* from 1 ibra.cy for octant !DD

  • and axial level N (11Wth/(neutrons/sec))

CONST= constant for scaling detector powers with calorimetric power (neutrons/nv-sec-cm-milliohm) see Ref #10 SCAL =detector reference sensitivit~ per unit length (amp/nv-cm)

The variables CONST and SCAL are declared in the main program bloc~ data section and are derived from the WT discussion on p~e III-3 of Ref #4. The equations used to calculate their values are given as:

CALIB CONST = - - - - * - - -

L

  • R
  • l .OE+3 where:

CALIB = Rhodium activation due to unit Maxwellian flux impinging on the detector sheath, per Rh atom, neutrons/nv-sec L = incore detector length, cm R = irnpedence of load resistor, ohms l.OE+3 = 1000 milli-ohms/ohm Ks,ref SCAL = - - - -

L

  • where:

Ks,ref =detector batch reference sensitivity at BOC, L

arnp/nv

= incore detector ler1gth, cm

Section Z P53 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.3.Z SUBROUTINE WCALC Calculate remaining library exposure The final calculation in Subroutine WC.A.LC is of the rema1n1ng exposure for each octant level of thew~ data in the library data file. The equation used is:

DELEXP(i,l) = STOPER(i) - BU(i,l) where:

DELEXP(i_,l) = amount of w~ data remaining in MWD/MTU for a detector in octant, 1, at axial level, 1 STOPER(i) = last \iP exposure point in library for octant location, 1 BU(i,l) current PIDAL exposure for octant, i, axial level, l The remaining libral'1/ exposures are used later in PIDAL for determining the limiting number of effective full power days remaining before a new

\iP library must be inst.al led

  • TABLE Z.3.2 P54 REV 3 Variable Twe Description NPTS INTEGER NPTS Number of exposure points for rod bank 10 in library data file. NPTS <= 25 STOPER REAL STOPER(28) Maximum exposure in library data file for each octant location x REAL :X(28, 25) Exposure points for each octant location in w* librari/. Maximum of Z5 for each IWS INTEGER IWS Index number of first w* data point in libracy that is considered acctn'ate IWF INTEGER IWF Index number of W* data point used to extrapolate back if current exposure is before point IWS in library FUEXP REAL FUEXP(28 2 25) 3-D octant exposure distribution based on the mating exposure case found by GETEXP BU REAL BU(28,5) 3-D exposure distribution collapsed to five axial detector regions WPRIME REAL WPRIME(28 2 5) \.P values interpolated from the fuel vendor library based on exposure BU ID INTEGER !0(45) octant locations indexed by the incore detector string number CONST REAL CONST constant for sealing detector powers with reactor calorimetric power SCAL REAL SCAL detector reference sensitivit~ per unit length DELEXP REAL DELEXP(28,5) remaining exposure in the w* libra.I11 for each octant location and axial level Table #2.3.Z Variables used in SUBROC.rl'INE WCALC

Section Z P55 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.3.3 FUNCTION XPINT Function XPINT is used b~ Subroutine WCAf..C to interpolate WT data that is read in from the lib:ral1{ data file. A linear interpolation is used to determine the correct WT value.

If the exposure, BU, of the current octant location, I, is less than the first good data point, X(I, IWS), then a linear extrapolation back to the desired assembl~ exposure using the equation:

(X(I,IWF) - BU)*Y(IWS) + (BU - X(I,IWS))*Y(IWF)

XPINT =

X(I,IWF) - X(I,IWS)

If the exposure, BU, of the current octant location, I, is within the range of good exposure data then the linear interpolation uses the equation:

(X(I,j) - BU)*Y(j-1) + (BU - :X(I,j-l))*Y(j)

XPINT =

X(I,j) - :X(I,j-1) where:

j = data point sUbscript in arreys :X and Y corresponding to the first e><poSLrr"e value greater than or equal to exposure BU for octant location I*

If the exposure, BU, of the current octant location, I, is greater than the last data point :X(I,NPTS) then a linear extrapolation beyond the data is done using the equation:

(X(I,NPTS) - BU)*Y(NPTS-1) + (BU - :X(I,NPTS-l))*Y(NPTS)

XPINT =

X(I,NPTS) - :X(I,NPTS-1)

For all of the above methods of interpolation, the result is returned to WCALC via variable XPINT. The variables for the above equations are defined in Table #Z.3.3 *

  • /

TABLE Z.3.3 P56 REV 3 Variable T~e Description I INTEGER I octant location number of detector whose w*

value is bein~ determined BU REAL BU PIDM. exposure of octant location I NPTS INTEGER NPTS number of exposure data po in ts in l i bra.I'V for each octant location. NPTS <== Z5

x REAL :X(Z8,Z5) Exposure points for each octant location in w~ libra.I'V. Maximum of Z5 for each IWS INTEGER IWS Index number of first w* data point in libr8l'1{ that is considered accurate IWF INTEGER IWF Index number of w* data point used to extrapolate back if current exposure is before point IWS. in l ibra!11 y REAL Y(Z8) w* data for octant location I. There are NPTS good data points. The subscript Z8 should be a Z5.

Table #2.3.3 Variables used in FUNCTION XPINT

Section Z P57 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.3.4 SUBROUTINE COFCAL (Edit tf!J)

The purpose of Subroutine COFCAL is to retrieve and interpolate peaking factor and coupling coefficient data from the Library data file. Peaking factors calculated here include all pins, inner pins, narrow water gap pins and burnup peaking factors. The coupling coefficients calculated here are no longer used by PIDAL and are determined only for reference.

In an attempt to more accurately represent the peaking factor and coupling coefficient data, separate calculations are performed for each of the axial rod bank regions within a given octant location. This is done by determining average exposures for each axial rod bank region within an octant location, and then interpolating the peaking factor and coupling coefficient data based on these exposures.

Convert Library Data File Exposures The Library data file exposures (in variable X) are in MWD/11TU from BOL.

For use in COFCAL it is necessary to*convert these exposure values to MWD/11TU since BOC. This is done by subtracting the nodal octant location exposures, at the start of the current cycle, from the current respective octant location nodal exposures. The resulting cycle accumulated exposures are replaced into variable X.

  • Determine the Nodal Boundaries of Each Rod Band Region In order to accurately calculate the accumulated exposures in each of

, the rod bank regions, 1 t is necessary to determine the exact nodal boundaries for each region. Variables IZlS and IZZS contain the bottom and top axial nodes numbers, respectively, that are either partially or completely within each rod bank region. The variables RBS and RTS contain the fraction of the bottom and top nodes that are within each rod bank regioo.

Calculate Octant Exposures for each Rod Bank Region After the nodal boundaries for each rod bank region have been determined, it is possible to calculate the exposures for each octant location of each rod bank region. This is done by summing up the nodal exposures within each octant location and rod bank region, including fractional nodes, and then dividing by the total number the sums by the number of nodes in the rod bank

"!he following equations are used.

For the bottom fuel node in the rod bank region:

BEXPI(i,L) = (EXPO(i,IZl) - EXPOB(i,IZl)) * (1.-RB) where:

BEXPI(i,L) = fractional exposure in octant location 1, rod bank L, covered by bottom node IZl RB = fraction of node IZl contained in octant location i of rod bank L EXPO(i,IZl) = current exposure since BOL for octant location i and node IZl EXPOB(i,IZl) = current exposure since BOC for octant location 1 and node IZl

Section Z P58 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.3.4 SUBROUTINE COFCAL (continued)

Calculate Octant Exposures for each Rod Bank Region For the interior axial (non-fractional) nodes in a rod bank region:

BEXPI(i,L) = BEXPI(i,L) + EXPO(i,j) - EXPOB(i,j) j=IZl+l to IZZ where: BEXPI(i,L) = total exposure from bottom node IZl up to last node, IZZ, completl~ in the region L For the top fuel node, the following equation is used onl~ if the top node is partiall~ in the rod bank region:

BEXPI(i,L) = BEXPI(i,L) + (EXPO(i,IZZ+l) - EXPOB(i,IZZ+l)) *RT where: BEXPI(i ,L) = total exposure in all nodes of rod bank L and octant i RT = fraction of the top node IZZ+l in region L The average nodal exposure in rod bank region, L, and octant location i is then found using:

  • BEXPI(i,L) = BEXPI(i,L)/(IZZ - IZl + l - RB + RT)

It should be noted that the use or variable IZl and IZZ is somewhat tric~

in the actual coding and the reader is referred to the source code for the details. What is stored in varables IZlS and IZZS are the values IZl+l and IZZ+l respectivel~ and this is also what appears on the PIDAL output reports.

Calculation of Peaking Factors and Coupling Coefficients Once the av~e rod bank region exposures for each octant location are detemined, the fuel vendor lib~ data is interpolated for peaking factors and coupling coefficients. This data is interpolated as functions of octant location and rod bank region exposure. The interpolation is perfomed in Function XINT which is described in Section Z.3.5.

The following one-pin peaking factors are calculated:

T F.R. = peak pin or all pins peaking factor, maximum ratio of the power in an individual fuel rod to assembl~ average power F.sl.6"' = fnner pin peaking factor, maximum ratio of the power in a fuel rod not on the assemblies periphecy to assembl~ average power iN F~ =narrow water gap peaking factor, maximum ratio of power in a fuel rod adjacent to the narrow interfuel assembl~ water gap to assembl~

average power B

F9.. = burnup peaking factor, maximum ratio of exposure. in ~one pin in an assembl~ to assembl~ average exposure /

Section Z P5? REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.3.4 SUBROUTINE COFCAL (continued)

Output of Peaking Factors and Coupling Coefficients

. The peaking factors and coupling coefficients c;::alculated from the fuel vendors library are edited to the PIDAL output file~ rod bank region. Along with these values, the axial nodal point limits of each rod bank rei;sion are writ ten, as well as the assembl ~ exposures since BOC.

Again note that the coupling coefficients calculated from the fuel vendors librar~ are not used in PIDAL for ~ further calculations

  • TABLE Z.3.4 P60 REV 3 Variable T~e Description x REAL(Z8,Z5) exposure data po in ts from 1 i brary data file converted from MWO since BOL to MWO since BOC IBNK LOGICAL IBNK(lO) fl a.gs used to determine if error occurred while reading library data file FUEXP REAL FUEXP(Z8,Z5) 3-D octant exposure distribution based on the mating exposure case found by GETEXP FUEXPB REAL FUEXPB(Z8,Z5) 3-D octant exposure distribution for core at BOC BEXPI REAL BEXPI(Z8,10) average rod bank exposure for Z8 octants and up to 5 rod bank regions IZlS INTEGER IZlS(l 0) bottom node of rod bank region for up to 5 rod bank regions IZZS INTEGER IZZS(lO) top node of rod .bank region for up to 5 rod bank regions RBS REAL RBS(l 0) fraction of bottom node within each rod bank region for up to 5 rod bank regions RTS REAL RTS(l 0) fraction of top node within each rod bank region for up to 5 rod bank regions R REAL R(Z8,10) all pins peaking factor interpolated from library data file for each octant and rod bank region, F T REAL T(Z8,10) inner pins peaking factor interpolated from library data file, F TN REAL TN(Z8, 10) narrow water gap pins peaking factor interpolated from library data file, F PINEXP REAL PINEXP(Z8,10) burnup peaking factor interpolated from library data file~ F
  • DOWN RIGHT TOP REAL DOWN(Z8,l0)

REAL RIGHT(Z8,10)

REAL TOP(Z8,l0) fuel vendor coupling coefficient for bot tom neighbor assembly .

fuel vendor coupling coefficient for right neighbor assembl':/

fuel vendor coupling coefficient for top neighbor assembl':/

LEFT REAL LEFT(Z8,10) *fuel vendor coupling coefficient for left neighbor assembl':/

Table #Z.3.4 Variables used in SUBROUTINE COFCAL

Section Z P61 REV 3 DESCRIPTION of tile MAIN PROGRAM and SUBROUTINES

  • Z.3.5 FUNCTION XINT Function XINT is used by Subroutine COFCAL to interpolate peakin~ factors and couplin~ coefficients read in from the library data file. The method of calculation is a linear interpolation based on exposure and octant location.

If the exposure, BU, of the current octant location, I, is less Ulan the first ~ood data point, X(I,l), Ulen a linear extrapolation back to the desired assembly exposure using tile equation:

(X(I,Z) - BU)*YCl) + (BU - X(I,l))*YCZ)

XINT =

X(I,Z) - X(I,l)

If the exposure, BU, of tile current octant location, I, is within the range of good exposure data then the linear interpolation uses the equation:

(X(I,j) - BU)*Y(j-1) + (BU - X(I,J-l))*Y(j)

XINT =

X(I,j) - X(I,j-1) where:

  • J = data point subscript in arreys X and Y correspondinQ to the first exposure value wea_ter than or equal to exposure BU for octant location I
  • If the exposure, BU, of the current octant location, I, is greater than the last data point X(I,NPTS) then a linear extrapolation beyond the data is done using the equation:

(X(I,NPTS) - BU)*Y(NPTS-1) + (BU - X(I,NPTS-l))*Y(NPTS)

XINT =

X(I,NPTS) - X(I,NPTS-1)

For all of the above methods of interpolation, tile result is returned to COFCAL via variable XINT. The variables for the above equations are defined in Table #Z.3.5

  • TABLE Z.3.4 P6Z REV 3 Variable T~e Description I INTEGER I octant location of peaking factor or coupling coefficient being interpolated BU REAL BU c~cle exposure of octant location I for region covered b~ Ule current rod bank x REAL X(Z8,Z5) exposure data from l ibr~ data file for octant location I in MWD since BOC NPTS INTEGER NPTS number of good data points in arreys X Y. NPTS <= Z5 y REAL Y(Z8) peaking factor or coupling coefficient data to be interpolated. Z8 should be Z5 Table #ZQ3.5 Variables used in FUNCTION XINT

Section Z P63 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROl.ITINES

  • Z.3.6 SUBROUTINE BXPWR The purpose of Si.Jbroutine BXPWR is to calculate control rod correction factors for the detector sisnals. These factors are then applied, alonR with the W" values calculated in SUbroutine WCAf..C, to the detector si~nals in order to obtain detector powers.
  • The concept of correcting the detector siQnals for. control rod perturb-ations is outlined in Ref #4 page III-ZZ. In short, two rod corrections are accounted for in PIDAL. One is for rod patterns with the nearest. rod inserted with the other being for rod patt.erns with the non-nearest rod insert.ed. The correction factors for these patt.erns, assuming the rods to be full~ shadowing the detectors, are supplied ~ the fuel vendor in the Libra.rv data file.

In the current versions of the Lib~ data file, the coefficients for the near rod patt.erns are supplied and read in on variable M. The values for the non-nearest rod patt.erns are assumed to be negligible and thus values of :zero are supplied for variable BB.

PIDAL also performs a calculation in order to det.ermine the fractional amount that a detector is shadowed ~ the nearest and non-nearest control rods. This allows for further correction to the data supplied in M. (and BB if this data were supplied)

  • A table look-up is performed to find the index.nUillber of the nearest control rod to the current detector string via variable INDEX. There is no near rod for strings #l ,13 and 45. If a near rod is present, then the frac-tion of the detector shadowed ~ the near rod is calculated for each detector in the string and a near rod correction coefficient is calculated using:

RODEFF = M(k)

  • WP where:

M(k) = full~ shadowed det.ector rod correction factor for det.ector string k from Libra.rv data file WP = fraction of .current detector shadowed b~ nearest rod to the detector This process is then repeated for the non-nearest rod to the detector.

This results in two rod correction factors, one for near and one for non-near control rods. The det.ector powers in MWth are then calculated using:

P(k,n) = W(k,n)*(l. -AMAXl (BB(k)*WP ,RODEFF)*E(k,n) where:

W(k,n) = W" values calculated in subrouint.e WCALC E(k,n) = Incore detector millivolt signals from the Varian Datalo~

RODEFF = near rod correction factor BB(k)*WP = non-near rod correction factor

Section Z P64- REV 3 DESCRIPTIOO of the MAIN PROGRAM and SUBROUTINES

  • Z.3.6 SUBROUTINE BXPWR (continued)

The maximum correction factor, either near or non-near, is used to adjust the detector si~als. Since current!~ BB(k) is zero for all detector stri~ss the near rod correction factor is the onl~ one applied if any.

One final comment is that a sli~htly different calculation for the fractional insertion shadowing factor WP is done if a part-length rod is the most inserted rod. Insertion of a part-length rod during power operation is current!~ a violation of Technical Specifications. Therefore 3 the part length calculation should never be performed by the code *

  • ../

TABLE Z.3.6 P65 REV 3 Variable T~e Description I(l[]EX INTEGER I(l[]EX(45) Table of nearest rods to each of 45 detector strings E REAL E(45,5) Incore detector signals, mv p REAL P(45,5) Incore detector powers, MW th w REAL W(45,5) Incore detector w* from WCALC H REAL H(45) Control rod positions, cm withdrawn Hl REAL Hl Position of near or non-near rod WP REAL WP Fractional insertion shadowing factor ZM REAL 211(45,5) Incore detector powers, MW th M REAL M(45) Near full~ shadowed rod correction coefficient from Libr~ data file BB REAL BB(45) Non-near full~ shadowed rod correction coefficient from Lib~ data file ALPHA REAL ALPHA(5) Top of axial detector regions from core bottom, cm BETA REAL BETA(5) Bottom of axial detector regions from core bottom, cm Table #Z.3.6 Variables used in SUBROUTINE ID:PYR

Section Z P66 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.3.7 SUBROUTINE DETSIG (Edit #10)

Subroutine DETSIG is an editint;? routine that i&enerates the log of detector signals and powers that appears in the PIDAL output report. This report arrani&es the detectors strini&s in i&roups of eii&hth core or octant sytnme tr i c de tee tors.

  • For each detector strini&, the Rhodium depletion and baclq;:round corrected millivolt detector signals and \*P corrected detector powers in MWth are edited for each detector. These values come from the variables E and P respectivel~.

Subroutine DETSIG performs no calculations

  • Section Z P67 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES
  • Z.3.8 SUBROUTINE CHPMIN (Edit #11)

The purpose of Subroutine CHPMIN is to verify that the incore detector powers returned from BXPWR in arrey P have powers greater thari the hand input value PMIN (card 7). If an~ detector power is less than PMIN, then that detectors millivolt siQnal and power, in~ E and P respectivel~, are set to zero. In addition, the corresponding flag, IFAIL, for the failed detector is set to ***.

If ~ detectors are failed due to low power, then a report containing a list of all of the failed low power detectors~ string and axial level is

~enera ted under Edit #11

  • Section Z P68 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUfINES
  • Z.4 Program Section tl4 Program section #4- controls the subroutines that calculate the full core power distribution and quarter core tilts for PIDAL. This pro~ram section is controlled entirel~ ~Subroutine PIDAL which is in turn called~ the main pro~ram.

The original methodolo~ used in pro~ section #4 was based on the Combustion Engineering method CECOR which is documented in Reference #11.

o.ter the course of development, several enhancements were made to this methodolom,r. In general, PIDAL departs from CECOR in the wey that the intra-assembl~ coupling is performed. This will be discussed in detail later.

The underl~ing assumption in the CECOR method is that the power in ~

assemblV K can be given b~ the equation (not using PIDAL variables) :

m 2::.P(m,j)

P(K,J) = (equation Z.4a)

CC(K,j) where:

P(K,J) = power in assembl~ K, axial level J P(m,J) =power in assembl~ m, axial level j. Assembl~

m is adjacent to assembl~ K.

CC(K,j) = assemblV average coupling coefficient for assemblv K, axial level J.

Using algebra, CC(K,j) is defined as:

rn L P(m,J)

(equation Z.4b)

CC(K,j) = - - - - -

P(K,j)

In the Palisades core, there are Z04 assemblies (K=Z04) and thus the dimension on CC is also Z04. Obviousl~, P(K,j) is onl~ known for assemblies which contain an operable incore detector. Therefore, a ~thesis method is used to detemine powers for each of the uninstrumented locations.

It is necessal1{ for the CC(K,J) to be defined or known for al 1 core locations. The CE:COR method precalculates the CC(K,j) from planar depletion studies and fits these values based on burnup. This would be similar to calculating the CC(K,J) based solel~ on the XTG predicted solution.

The problem with this method is the CC(K,j) are based onl~ on predicted and that the final full core solution is greatl~ biased ey the predicted solution. Therefore, it was detemined that the preferred method would be to somehow infer the CC(K,j), based on measurement, as well. The method for doing this will be described in sections Z.4.4 throu~ Z.4.11 *

  • /

Section Z P651 R&V 3 DESCRIPTION of the MAIN PROGRAI1 and SUBROUTINES

  • Z.4 Program Section tl4 (continued)

Once the CC(K,j) are known, the problem consists of determining the P(K,j) for uninstrumented assemblies. Equation Z.4a can be reWr-i tten as:

..J P(K,j)

  • CC(K,J) = t.P(m,J) (equation Z.4c)

If equation Z.4c is written for each uninstrumented assemblbf, K, then a set of equations on the order (Z04-45) for each detector level result. If the P(m,J) which are unknown are subtracted over to the left hand side of each equation and the known P(m,J) remain on the right, then a vecy sparse but Sb'IJll'lletric matrix of equations appears on the left and a known vector appears on the right. Remember (or assume) that the CC(K,J) are known.

~ing that locations 4 and ' (usi~ the full core assemblb' numbering scheme of Edit #5") are instrumented, the first 5 equations would be written for each detector level J, in expanded matrix-vector notation as:

PlCCl -PZ -0 -0 -0 -0 -0 -0 -0 -0 =~

-Pl +PZCCZ -P3 -0 -0 -0 -0 -PlO -0 -0 = 0.

-o -PZ +P3CC3 -0 -0 -o -0 -0 -Pll -0 = P4

-0 -0 -o +p5CC5 -P6 -0 -o -0 -o -0 = P4+Pl3

    • A is Because assemblies 4 and ' are instrumented, rows and columns 4 and

'were omitted from the set of equations. The corresponding matrix equation for the above set of equations is written as:

A P =S

..:ii.

(equation Z.4d) a coefficient matrix consisting or the CC and -:l multipliers to the P(m,J). The unknown P(K,J) and P~,j) (on the l_g[t hand side) are

~licallb' contained in the vector P. The vector S, or known vector, consists of the column of sums on the right hand side. What must be found is the solution . to the vector P.

As eluded to ~ C.E. in Ref #11, the i matrix is vecy sparse and in our case ~etric. Therefore, an efficient wey or solving the above set or simultaneous equations should be emplcyed. C.E. claims the~ use something cal led the conjugate gradient method, but after scanninQ their reference, nothing~ this name was found. Thus, a trustworthb' Gaussian elimination routine for ~etric sparse matrices was empl~d. The routine was part of the YN..E Sparse Matrix Package available in the public domain.

~

After the vector P has been determined, it is recombined with the known values of P(K,j) and the full core radial power solution for each detector level is obtained.

The fol lowing sections desribe the subroutines that perform the tasks or determinQ the CC(K,J) and setting up and solving the simultaneous equations

  • Section Z P70 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES
  • Z.4.1 Subroutine COUPLE (Edit #lZ)

The purpose of Subroutine COUPLE is to calculate the assembly average coupl in~ coefficents based only on the XTG calculated detector powers. These coeffi'cients are used by Subroutine QUARTI1 in the process of calculating coupling coefficients based on a one-quarter core measured/inferred radial power distribution.

The definition of the assembly average coupling coefficient is given as:

FOQS(i,.j) where:

a.JP(i,.j) =assembly average coupling coefficient for assembly i,. detector level j.

PDQS(IBUD,.j) = theoretical detector power in assembly !BUD which is adjacent to assembly 1 detector level j .

PDQS(i,.j) = XTG calculated detector power for assembly i, detector level j .

!BUD = assembl~ nllllber of blmdle adjacent to assembly i.

There are four adjacent locations for each assembl~ i*

After the array CUP has been calculated, it is edited by detector level as EDIT #lZ. The quarter core coupling coefficient maps are generated ~

subroutine QTRMAP qf section Z.4.Z.

  • Section Z P7l REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
    • Z.4.Z Subroutine QTRMAP Subroutine QTRMAP is an editing routine which can edit quarter core radial power distribution maps of eitl1er one or two variables per location.

The twe of map edited depends on the value of variable IOPT passed into the routine. QTRMAP also has the capability of initiating limited incore detector.

operability verifications by calling subroutine CHKDEV. See section Z.4.10 for a discussion of CHKDEV.

The function of QTRMAP is determined by the input value of !OPT as fol lows:

!OPT= 0 No edit. Calculate a deviation between two power distribution maps at each location and perform a check on the deviations via Subroutine CHKDEV.

!OPT= 1 Edit a quarter core map with only one power distribution variable at each location. Perform no checking.

!OPT= Z Edit a quarter core map with two power distribution variables at each location. Also calculate deviatioris between the power maps at each location and edit Ulem. But, do not perform checking via subroutine CHKDEV *

!OPT= 3 Edit a quarter core map with two power distribution variables at each location. Also calculate deviations between the power maps at each location and perform incore detector operability verification by call ing subroutine CHKIJEV.

The following subroutines call QTRMAP and use it for Ule following options:

IOPT=O EJJTQTR (called b~ SOLVEQ)

IOPT=l EXPAND, EXTRAP, COUPLE, aJPDET IOPT=Z EDTQTR (called by SOLVEQ)

IOPT=3 EDTQTR (called by SOLVEQ)

Section Z P7'Z REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES

  • Z.4.3 Subroutine TILT The purpose of Subroutine TILT is to calculate the quarter core tilt for each detector level and the whole core based solel~ on measured incore detector powers. This is done b~ utilizin~ all operable two-way ~etric incore sets in the core to calculate six two-way tilt components for each detector level.

The two-way tilts are Ulen combined al~ebraicall~ resulting in values for quadrant power tilt.

Assume a quadrant numbering scheme as follows: 2..

3 4 Six intra-quadrant tilts can then be defined between each combination of two quadrants as: tilt 1-Zs tilt l-3s tilt l-4s tilt Z-3s tilt Z-4 and tilt 3-4.

With tilt defined as the power in the quadrant of interest divided ey the sum of the powers in all quadrants of interests the six intra-quadrant tilts are defined mathematical!~ as:

P(l) P(l)

  • tilt 1-Z: T(l) tilt 1-4: T(3)

=

=

P(l)

P(l)

+ P(Z)

P(l)

+ P(4) tilt 1-3: T(Z) tilt Z-3: T(4)

=

=

P(l) +

P(Z)

P(Z) +

P(3)

P(3)

P(Z) P(3) tilt Z-4: T(5) = tilt 3-4: T(6) =

P(Z) + P(4) P(3) + P(4)

Using the same definition of tilts but now expanding it to all four quadrantss quadrant tilt is defined as:

P(l) quadrant tilt l: TQ(l) =

P(l) + P(Z) + P(3) + P(4)

P(Z) quadrant tilt Z: TQ(Z) =

P(l) + P(Z) + P(3) + P(4)

P(3) quadrant tilt 3: TQ(3) =

P(l) + P(Z) + P(3) + P(4)

P(4) quadrant tilt 4: TQ(4) =

P(l) + P(Z) + P(3) + P(4)

Section Z P73 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.4.3 Subroutine TILT (continued)

~substituting in for the separate values of power using the six two-wey tilts, the quadrant tilts can be redefined as:

P(l)

TQ(l) =

l - T(l) l - T(Z) l - T(3)

P(l) + P(l) + P(l) + P(l)

T(l) T(Z) T(3)

P(Z)

TQ(Z) =

T(l) l - T(4) l -T(5)

P(Z) + P(Z) + P(Z) + P(Z) l - T(l) T(4) T(5)

P(3)

TQ(3) =

T(Z) T(4) l - T(6)

P(3) + P(3) + P(3) + P(3)

  • l - T(Z) l - T(4) T(6)

P(4)

TQ(4) =

T(3) T(5) T(6)

P(4) + P(4) + P(4) + P(4).

l - T(3) l - T(5) l - T(6)

The powers P(l), P(Z), P(3) and P(4) all cancel out which leaves us with expressions for fractional quadrant power tilts based onl~ on Ule six in t:ra-quad:ran t ti l ts.

The task of subroutine TILT is to determine Ule six intra-quadrant tilts and Ulen Ule quadrant power tilt for each incore detector level. The six tilts are found ~ averaging the tilt values from each of Ule operable incore detector sets for the current detector level.

There are ZZ possible two-wey ~etric incore detector combinations.

This is assuming one-quarter core rotational ~e~ as opposed to one-quarter core reflective ~etcy which would onl~ have 15 possible sets. Note that both quarter core rotational and reflective are octant ~tric so the choice is arbitrari/ for current one-eighUl core ~etric loadings. There is an obvious advan~e to using rotational ~e~ in the event that a quarter core loading pattern in required in the future. See Figures Z.4.3a and Z.4.3b for maps showing the reflective and rotational ~tric incore detector sets

  • Section Z F74 REV 3 DESCRIPTION of the MAIN PROGRAI1 and SUBROUTINES
  • Z.4.3 Subroutine TILT (continued)

TILT can function in either of two modes. The first consists of calc-ulating the quadrant tilt for one of the five detector levels. For this mode input variable J has the value 1 through 5. The other mode calculates the quadrant power tilt for the total core, averaging the five detector level quadrant tilts. This mode is performed when input variable J is set to 6 and may also produce EDITs #Z7 and #53.

The possible two-way ~etric sets are stored in variable TWO with the corresponding intra-quadrant twe (1 through 6) stored in variable TYPE.

The average intra-quadrant tilts for each of the six types are calculated and stored in variable T. If an~ of the intra-quadrant tilts for a given detector level are undefined, i.e. no operable detectors for that tilt, then the tilt calculation for that level is terminated and control is returned to subroutine PIDAL.

If all six tilts are defined for a given detector level, then the quadrant tilt for that level is calculated and stored in variable DETTLT.

Note the equations used are idetical to those given above except for the constant four(4) in each numerator which is a normalization factor to make the tilt values normal to unit~ *

  • If tilt was being calculated onl~ for a single detector level, ioe.

TILT was called ~ PIDAL while determining individual detector level power distributions then TILT returns to PIDAL at this point. If TILT was being called~ PIDAL for the final total core quadrant tilt then the five possible quadrant tilt values (four for each detector level) are averaged axiall~

in order to determine the total core, quarter core tilt. The total quarter core quadrant tilts are stored in variable QTILT and mey be edited as EDIT 1IZ1.

EDIT #53 will be automaticall~ produced if an~ of the quarter core tilts for a detector level are undefined. EDIT #53 is generated b~ Subroutine TLTERR and consists of a table showing all ZZ possible ~etric detector combinations and a status b~ level of how man~ of these combinations were operable. This edit is also a default edit but mey be over-riddeno

Section Z P75 REV 3 DESCRIPTION of the 11AIN PROGRAM and SUBROUTINES

  • Z.4.4 Subroutine COLAPS The purpose of Subroutine COLAPS is to collapse the full .core detector powers to an aver~e quadrant eitller using rotational or reflective S}/Illilletcy.

For current loadings, reflective ~etcy is used because one more quarter core assembly location is instrumented Ulan in tile rotationally S}/Illilletric case. If future loadings are rotationally symmetric, Ulen input variable REFROT in card #Z must be set. See section #Z.l.

When performing tile col lapse to quarter core, COLAPS has tile abi 1 i ty to correct for calculated quarter core tilts for each detector level. Whetller or not tile tilt correction is performed depends on input variable ITILT. If ITILT=O Ulen no tilt corrections are performed. If ITILT=l Ulen tile tilt for each detectors level and quadrant is divided out. In general, tilt corrections are performed only during tile final determination of tile quarter core power distribution for a detector level. i.e. after tile detectors have been verified for operability.

The collapsed quarter core detector powers are stored in variable DETPOW for later use in tile quarter core power distribution solution

  • Section Z P76 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.4.5 Subroutine XTGPOW The purpose of Subroutine XTGPOW is to replace all measured detector powers with theoretical detector powers calculated from the XTG solution. This was made possible so that the full core ~thesis routines could be verified.

By using the theoretical detector powers, the solution returned ~ full core routine should closel~ ~ee with the XTG solution.

XTGPOW is essential!~ a simple lookup and cow routine. A loop is run over all 45 incore detector strin~s (and all 5 levels). Within the loop, the theoretical detector powers which were normalized b~ axial detector level and stored in *a.rrey TDET ~ Subroutine EXPAND are copied into the appropriate location in ar~ DETPOW. Subroutine XTGPOW then returns to Subroutine PIDAL.

Note that XTGPOW is called onl~ if input flag IXPOW=l on input card Z*

Section Z P77 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlJI'INES

  • Z.4.6 Subroutine QUARTM (Edit #13)

The purpose of Subroutine QUARTM is to set up the general form of the one-quarter core coefficient matrix. The matrix is then used in determination of the quarter core radial power distribution for a detector levels from which coupling coefficients, base on this measured/inferred power distribution can be derived.

Subroutine QUARTM sets up the matrix in the same fashion as the ful 1 core matrix set up by Subroutine SETUPM of section Z.4.lZ. The only difference lies in the fact that the detector powers used are those collapsed from full core to quarter core by Subroutine COLAPS. QUARTM was written to be flexible enough to work for either quarter core reflective or rotational symmetrys depending on variable REFROT of input card #Z.. As an aid to the users it is possible to edit the general form of the quarter core matrix after set-up by selectinQ Edit #13. This forces QUARTM to call Subroutine EDMATQ which in turn produces the edit.

As an example, the first eleven terms of the general quarter core matrix assuming reflective symmetry is given below. Remember that this matrix is general and will be corrected for operable instrunent locations by Subroutine ALTERQ. See Figures Z.4.6a and Z.4.6b for maps showinQ the quarter core reflective and rotational assembly numbering schemes *

  • ccl-Z

-1 0

0 0

-1 ccZ-1 -1

-1 0

0

-1 0

0 cc3-l -1 0

0 cc4-l -1

-1 0

0 D

-0 cc5-l -1 0

D 0

0 0

0 0

0 0

0 0

D 0

-1 0

D D

0

-1 0

D D

D 0

0

-1 0

0 D D 0 D -1 cc6-l -1 D D 0 0 0 D 0 0 0 -1 cc7-l -1 0 0 0 0 0 D 0 D D -1 cc8-l 0 0 0

-1 0 0 D D 0 0 D cc,_l -1 0 0 -1 0 0 D D 0 0 -1 cclD -1 0 0 -1 0 0 D 0 0 0 -1 cell Note that for the first eight termss the top couples are with themselves and thus the value of one subtracted off the coupl inQ coefficient. It is advised that the reader write the actual coupling equations for these eleven assemblies in order to verif~ the process used for generatinQ this matrix.

  • /

Section Z P78 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.4.7 Subroutine QUARTV (Edit #14)

The purpose of Subroutine QUAATV is to set up the general form of the quarter core solution vector which corresponds .to the matrix Set up by QUAATI1.

The method of generating this *vector is completely anal~ous to that of the general full core solution vector created by Subroutine SE11JPV, Section Z.4.13.

In short, the value of the solution vector component for a single assembl~

is the sum of the detector powers which are located in the assemblies which are coupled with it. Therefore, a search is performed for each row of the general matrix and the sum of all detector powers indexed ~ a -1 couple becomes the solution vector component for that assembl~.

Two notes: first, since onl~ the upper triangle of the matrix is stored, because the matrix is symmetric about the di~onal, the solution vector components for two assemblies.are indexed by each -1 occurance in the matrix.

One corresponding to the row and one to the column of the -1 found. Secondl~,

remember that this is onl~ the general vector and components for operable instruments are removed b~ ALTERQ.

As with QUARTM, a satellite routine, EDVECQ exists which will edit the general vector as EDIT #14 if requested

  • Section Z DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.4.8 Subroutine ALTERQ (Edit #15)

The purpose of Subroutine ALTERQ is to adjust the ~eneral forms of the quarter core coefficient matrix and solution vectors, set up ~ routines QUARTM and QUAR1V respective!~, for instrumented quarter core assembl~ locations. This routine is anal~ous to Subroutine ALTER (section Z.4.14) which adjusts the full core matrix and vector for operable detectors.

The main idea is to eliminate rows and columns which correspond to instrumented quarter core assembl~ locations from the ~eneral coefficient matrix. In turn, vector components which correspond to instrumented assemblies (and are actuall~ the ri~ht-hand-side of eliminated matrix rows) are also deleted from the vector. At the same time, both the matrix and vector are compressed so that no "place-holders" for instrumented assemblies exist.

With.this in mind, if assemblies 1,3,4,7 and 10 were instrumented for the quarter core, the i;;ieneral matrix of Section Z.4.6 would be altered to the fol lowini;;i:

ccZ-1 0 0 0 0 0 0 cc5-l -1 0 0 0 0 -1 cc6-l 0 0 0 0 0 0 cc8-l 0 0 0 0 0 0 cc"J-1 0 0 0 0 0 0 cell After the i;;ieneral matrix and vector have been reduced, they~ be edited as Edit #15. Both mey be edited if the edit flai;;i is set to 3 or just the matrix (edit fl~=l) or just the vector (edit flai;;i=Z).

/

Section Z P80 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.4.5' Subroutine SOLVEQ (Edit #16)

The purpose of Subroutine SOLVEQ is to obtain and edit the solutions to the quarter core set of simultaneous equations which were set up b)/

Subroutine ALTERQ. This routine is anal~ous to Subroutine SOLVES described b~ section Z.4.15.

SOLVEQ reorders the equations in memoI11 and then calis the simulataneous equation solution routine SDRV. Up to now,, the upper triangle of the matrix was stored in the MATRIX arrey. SDRV onl~ requires stor~e of the non-zero matrix elements and their respective indices,, so within SOLVEQ,, a simple sto~e algorithm is emplo~d in order to prepare the matrix for solution in SDRV.

Upon completion of SDRV,, control returns to SOLVEQ which determines if an error occurred during solution of the simultaneous equations. If an error occurrs,, a warning mes~e with debug aids is edited.

If the SDRV solution is successful,, the solution to the matrix is reu.rr-ned to SOLVEQ in variable VECTOR. VECTOR is then combined with the original known detector powers in DETPOW to form a complete full core radial power distribution.

After the quarter core power distribution for the current detector level has been stored in DETPOW it is edited via Subroutine EDTQTR. EDTQTR also calls EDTMAP which mey call CHKIJEV to verif~ incore detecor powers for operabilit~. See sections Z.4.Z and Z.4.10 for discussions of EDTQTR and CHKDEV, respectivel~

  • Section Z P81 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.4.10 Subroutine CHKDEV (Edit #17)

CHKDEV is currentl~ the onl~ Subroutine in the PIDAL program which can fail detectors for reasons other than the minimum power check* in CHPMIN.

CHKDEV checks the deviation between PIDAL and XfG power distributions for each instrumented assernbl~ location. If the deviation is weater than the value DEV (default ZO~) input to PIDAL on card 7, then the detector is considered failed.

If a detector is failed, i Vs millivolt signal (~ E) and detector power (arrey P) are zeroed out. A message t.mder Edit #17 is also issued stating which detectors were failed for each level and the corresponding detector failure mode fl~ IFAIL is set to either a ..> .. if the detector was failed for reading high, or a ..< .. if the detector was failed for reading low.

Because the failed detector had an adverse effect on the PIDAL power distribution, the solution for that level must be re-determined. This is accomplished ~ setting the fl~ IDEV=l and re-running the quarter core solution sequence.

  • When control returns to PIDAL (through *completion of SOLVEQ) the IDEV=l fl~ causes the solution for the current level to start over with Subroutine TILT. Under normal conditions, when a detector must be failed, There should onl~ be a maximum of three passes through the quarter core solution sequence for a given detector level.

The first pass obtains the quarter core solution (not ti 1 t corrected) and identifies ~ detectors which need to be failed. If detectors are failed I then a second pass (not ti 1 t corrected) through the quarter core solution is made to veri f~ detectors again. A third pass (ti 1 t corrected) and final pass I through the quarter core solution sequence is then made. If no detectors are failed ~ the first pass then the second non tilt corrected pass is skipped

  • Section Z P8Z REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.4.11 Subroutine UJPDET (Edit #18)

Once the tilt-corrected quarter core radial power distribution solution is obtained for a detector level, Subroutine CUPDET is called to re-calculate the intra-assembly coupli~ coefficients for use in the full core solution.

These coupling coefficients are calculated identically to those derived in Subroutine COUPLE (section Z.4.1) except for the fact that these couples are based on the quarter core measured/inferred radial power distribution instead of the XTG calculated distribution.

After the new coupling coefficients are determined and stored in ar~

CUP, they mey be output as Edit #18. It is interesting to compare these with the calculated values of Edit #lZ.

As a final step before going to the full core solution for the detector level, the full core measured detector powers are re-stored in arrey DETPOW.

Incidently, if the input flag IXPOW was set, then XTG powers are placed in DETPOW instead of measured values. This is ~ain useful for debum~ing and testi~

  • Section 2 P83 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlrl'INES
  • 2.4.12 Subroutine SETUPM (Edit #l~)

The purpose of Subroutine SETIJPM is to set up the general form of the coefficient matrix A described in section 2.4. The matrix written in SETUPM is referred to as general because it assumes that all assemblies are not instrumented. This al lows for later deleting of instrumented rows and columns of the ma tr ix by Subroutine ALTER.

If the general matrix is written out, it can be seen that the assembly aveI"aRe coupli~ coefficients appear only on the diagonal elements. With the matrix being stored in array MATRIX, the element MATRIX(l, 1) gets the coupling term for assembly 1, element MATRIX(2,Z) gets the couple for assembly Z and so on. The assembly average coupling coefficients come from array CUP which was filled in Subroutine CUPDET. Remember that a.JP was generated for a quarter core and therefore a lookup is performed to assign the correct coef-ficients for each assembly.

Another property of the general matrix is that there are only four diagonals which contain values. These diagonals correspond to the four types of neighbors to each assembly: top, bottom, left and right. The diagonal elements consist of values of -1. The method used to fill the diagonal elements of MATRIX is nothing special. Since no good~ of doinQ this was obvious, the diagonals are filled one at a time by takinQ advantage of

  • knowinQ what the general fora is
  • Greater detail on what the general matrix looks like and how it is filled is left up to the codinQ. The general form can be edited out if desired via Edit #15' and Subroutine EDMAT. This edit is recommended for vecy infrequent use because large quantities of output are generated. It is highly recommended that the reader write the first 10 equations of the general matrix in order to completely understand this subroutine.

I

  • /

Section Z P84 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.4.13 Subroutine SETUPV (Edit #ZO)

Tue purpose of SUbroutine SETIJPV is to set up the general form of the solution vector which corresponds to the S vector of section Z.4. This turns out to be a vecy simple process after observing the characteristics of the general matrix.

Given an operable detector, the full core assembl ~ number of that detector is determined b~ a table lookUp. This assembl~ number (between l and Z04) is assumed to be a column number in the general matrix. A search is then performed for each row in the column corresponding to the detectors location.

I f a -1 is found in ~ row, then the detector power (corresponding to the column we are searching down) will appear in the summation of the same row in the general solution vector.

This mey be a little difficult to visualize. It is suggested that the reader trace SETUPV for the first l 0 assemblies (this covers detectors l and Z) and set up the vector. Tue vector should then be compared to the right.-

hand-side of the general assembl~ power equations desribed in section Z.4.

Tue general vector, which is stored in arrey VECTOR can be edited via Edit #ZO and Subroutine EIJVEC. EDVEC, like EDMAT also produces a significant amount of output

  • Section Z P85 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.4.14 Subroutine ALTER (Edit #Zl)

The purpose of Subroutine ALTER is to take the general forms of the full core equation matrix and vector and alter them based on which assemblies have operable detectors.

Recal 1 that the final set of simulataneous equations are to be written for only uninstrumented assemblies. Up to this point, the matrix (and vector to a certain extent) are general for al 1 locations. Thus the equations for the instrumented locations must be omitted.

The equations for the instrumented assemblies are omitted b::t simpl::,'

compressing the MATRIX and VECTOR arreys down. For example, if string l or assembly 4 is operable, then row and column 4 are deleted from the MATRIX and row 4 is deleted from the VECTOR. Actually, all rows and colUI1U1s are just shifted down so that the assembly 5 equation occupies the equation 4 location, and equation 6 occupies the equat-ion 5 location and so on.

<nee the final forms of MATRIX and VECTOR are completed, they mey be edited under EDIT #ZO, using EDMAT and EDVEC. This is done by setting the input flag for Edit #ZO to 3 (for both matrix and vector), to l (for matrix only) or to Z (for vector only). It is important that the user realize that the entire Z04*Z04 matrix (and Z04*1 vector) are edited, but onl::t the

  • first ROWCOL*ROWCOL (and ROWCOL*l) locations contain val id data. ROWCOC:. is simply the number of equations or uninstrumented assemblieso
  • /

Section Z P86 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.4.15 Subroutine SOLVES (Edit #ZZ)

The purpose of Subroutine SOLVES is to obtain and edit the solutions to the set of simultaneous equations which were set up in Subroutine ALTER.

SOLVES reorders the equations in memol'1/ and then cal ls the simulataneous equation solution routine SDRV. Up to now, the upper di~onal of the matrix was stored in the MATRIX a.rrey. SDRV onl~ requires sto~e of the non-zero matrix elements and their respective indexes, so within SOLVES, a simple

  • stor~e algorithm is emplo~ed in order to prepare the matrix for solution in SDRV.

Upon completion of SDRV, control returns to SOLVES which determines if an error occurred during solution of the simultaneous equations. If an error occurrs, a warning me~e with debug aids is edited.

If the SDRV solution is successful, the solution to the matrix is returned to SOLVES in variable VECTOR. VECTOR is then combined with the original known detector powers in DETPOW to fom a complete full core radial power distribution, which is stc:ired in variable POWMAP ey detector level.

After the full core power distribution for the current detector level has been stored in POWMAP it is edited via Subroutine EDTLVL. EDTLVL is

  • merel~ a preprocessor to the actual edit routine EDTI1AP *
  • /

Section Z P87 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.4.16 Subroutine SORV Subroutine SDRV is a routine supplied as part of the YALE Sparse Matrix Pack~e. SDRV solves a system of simultaneous linear equations using Gaussian Elimination. SDRV takes advan~e of the fact that the coefficient matrix is ver;; sparse and therefore only requires sto~e of the non-zero matrix elements. For a complete discussion of SDRV~ the reader is referred to the source code as the routine is trull{ self documenti~ *
  • /

Section Z P88 REV 3 DESCRIPTION of Ule MAIN PROGRAM and SUBROITTINES

  • Z.4.17 Subroutine SAVDE:V Deviations between measured and predicted powers for each full core assembly are calculated in Subroutine EDTMAP. These deviations are passed to Subroutine SAVDE:V which in turn saves Ulose deviations, for only tile instrumented locations, in variable DETDE:V. These are later used by Subroutine HISTOG
  • Section Z P8~ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.5 Program Section tl5 Up to this point, the core power distribution is given by a radial power distribution at each of five detector levels. The purpose of program Section tl5 is to perform axial curve fitting of the five known powers within each assembly. From the curve fitting, a continuous function for axial power shape within the assembly is defined. The continuous functions can then used to infer the axial power distribution in the regions not covered by incore detectors.

The method employed to perform the axial curve fitting was the same as used by the current CPCo l/8th core PIDAL system (also the CECOR method)o The general idea is to apply a five mode Fourier fit to the axial data for each assembly, resulting in a continuous function describing the axial distribution. In order to do this, two assumptions are made:

l) It is assumed that the axial power distribution shape is adequately approximated by the Fourier sine function. Thus the function mey be used for interpolating or extrapolating to compensate for the gross measurements.

Z) It is assumed that the power goes to zero near the top and bot tom of the active fuel height. This assumption allows us to add the points near the top and bottom to the five known points, effectively improving the curve fit.

From the continuous function, a distribution consisting of 51 axial nodal powers for each assembly is generated. This distribution is also collapsed to Z5 axial nodes and even further to a Z-D radial and a 1-D axial power distribution.

The following sections discuss each of the subroutines within program section tl5 in detail.

Note: The five mode Fourier functionalization used by PIDAL (and CECOR) is actually the first five terms of a sine series. A Fourier series generally contains both sine and cosine series~ for the functionalization

  • Sect!ion Z P'O REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.5.1 Subroutine ZIADAZ Subroutine ZIADAZ performs the axial fitting of the five detector powers within an assembl~, ~ielding values for point powers a.Sa function of axial position. For this discussion, point powers are the power at a given axial position as opposed to an integral power covering an axial iength.

The underl~ing assumption is that the axial power distribution within an assembl~ can be given b~ the sum of the first few Fourier modes. Written in equation form:

N P(z) = 2=_ ~sin(n'i'i B z) (equation Z.5.la)

V\: I where:

P(z) = point power as a function of core fractional core height N = number of Fourier modes (5 in our case) a11 = unknown coefficients (5 in our case) which are calculated within ZIADAZ B =axial boundacy condition, the real core height as a fraction of the apparent core height, B = W(H + ZS)

= fractional core height, h/H (between 0 and 1)

= extrapolation distance, the extra distance past the core edge where the flux apparentl~ goes to zero, (WZ)(l/B - 1)

  • h H

=axial position within core in inches

= core height (132 inches)

Equation Z.5.la is not precisel~ what is used to describe the axial power distribution~ PIDAL. Considering Fi~ #Z.5.1 and the definition of z, it should be clear that using Z.5.la to the describe the axial power shape (and impl ici tl~ the flux shape) assumes that the power (and flux) at h=O and h=H+Z ~ are zero. In fact, this is not correct. The flux actuall~ goes to zero at h=-b and h=H+~

  • Therefore, we shall re-define P(z) such that at the point where the flux goes to zero:

P(z) = "'

2:.

r\:. I

~sin(n'i"(Bzr) (equation Z.5.lb)

(Bz)* in this case is an adjusted value for Bz. The wave lengths of the sine functions have been increased to match the core height that has been increased cy the extrapolation distance, Zo. The term, B, serves this purpose. Also, the core height dimension, 2, must be biased to be consistent with the larger apparent core height. In effect, the sine function, which was lengthened b~ B, must be re-centered about the true center of core.

The term (Bz)* will be defined as Bz plus a co-ordinate translation function (for the re-centering). In equation form:

(Bz)* = 82 + T The boundacy conditions for determining the function Tare given cy assuming that at h=-6, (Bz)*=o and at h=H+c6, (Bz)*=1. This allows use of the entire positive half of the sine function for describing the power shape and is consistent with the general form of Z.5.la (B=l) shown cy the solid line of Figure #Z.5.1.

  • Section Z P~l REV 3 DESCRIPTION of the MAIN PRCGRAN and SUBROUTINES
  • Z.5.1 Subroutine ZIADAZ (continued)

T is determined for h=-b as fol lows:

Known: z=-J"/H, sin(n'i'I' (Bz)*) = O and b= (H.12)(1/B - 1)

Therefore, n'il' (Bz)* = 0 and (Bz)* = O (b~ taking the arc sine of each side of the above known equation)

Expanding (Bz) *, 8z + T *= 0 and T = -82 Substituting for 2, T = 8(a/H)

BH Substituting for b , T =- -(1/8 - 1)

HZ 8

Reducing, T =- (1/8 - 1) = (1 - 8)/Z z

The value, T, can then be verified for the other zero flux bound~o

  • Known: z=(H+6)/H, sin(n'i'I' (Bz)*) = 0 and &= (HIZ)(l/8 - 1)

Therefore, n 'O' (Bz) * = l and (Bz) * = l Expanding (Bz)*, 82 + T = l and T = l - Bz B(H+~)

Substituting for 2, T =l -

H Rearranging, T = l - B(l + ~)

H fVZ(l/8 - 1)

Substituting for &, T = l - 8(1 + )

H and reducing, T = l B/Z(l/B - l)

T = 1 - B - l/Z + BIZ T =. l/Z(l - 8) (equation Z.5.lc)

Section Z P~Z REV 3 DESCRIPTION of Ule MAIN PROGRAM and SUBROUTINES

  • Z.5.1 Subroutine ZIADAZ (continued)

Equation Z.5.lc is Ulen replaced back into equation Z.5.lb to ~ield Ule equation that PIDAI.. uses for P(2).

s .

P(2) = ~ ansin(n11' (82 + l/Z(l - B))) or

,µ. I s

P(z) = 2: al'l.sin(n'L'I' 8(2 - .5) + n'il1;z) (equation Z.5.ld)

"'=- \

From equation Z.5.ld, it is apparent that the unknowns are the five an coefficients. (The boun~ conditions are determined from XTG in EXTRAP.)

The powers seen ~ the incore detectors, which are integral powers, lend a convenient method for detemining the ati values.

Defining the inteQral power seen b~ an incore, i, as:

2:~,, +*!)

Poweri, = St.a"'sin(n~B(z - .5) + t\'il"/Z)dz (equation Z.5.le) i::.) b,. T\1111 ,./

and ~ defininQ: u = n~ B(z - .5) +*H;z and du = n'it B dz, allows transfomation of equation Z.5.le to:

t~.)., .. ~ du POWER~ = r+/-_a~sin(u)

...)~~1

__, B

~~l bt,-tl~"' Lii T IntegratinQ ~ields:

Substituting for u gives us:

s -a ~ :c~.)1'1.i" Power* = ~ --\'\ cos(n~ B(z - .5) + 111

/Z) I * (equation Z.5.1 f)

t. f\"' n 'i\1 B If equation Z.5.lf is writ~ in expanded fora for each of the five known axial powers in an assembl~, Ulen a ~tern or five equations and five unknowns results. This ~stem of eqliations can Ulen be solved simultaneousl~ for the an values. The resulting a are used in equation Z.5.ld, which can now describe the axial power profile in an assembl~ *

/

Section Z DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.5.1 Subroutine ZIADAZ (continued)

To summarize Subroutine ZIADAZ:

1) A loop is performed over each assembly in the core. Within the loop,,

Equation Z.5.lf is expanded to five terms for each of the five axial powers known for that assembly,, resulting in a system of five unknowns (the an) and five equations. The system is solved simulataneously and the combini~ coefficients,, an,, are saved.

Z) After the combining coefficients for all Z04 assemblies are known,,

a second loop over the assemblies is performed. In this loop,, the combining coefficients are used in equation Z.5.ld in order to determine point powers at 51 equally spaced axial positions in each assembly. When this loop is complete,, the full core thr-ee-dimensional power distribution consisting of 204 assemblies by 51 axial nodes is known

  • Section Z P5l4 REV 3 DESCRIPTION of Ule MAIN PROGRAM and SUBROUTINES
  • Z.5.Z Subroutine REDUCE The purpose of Subroutine REDUCE is to normalize the full core three-dimensional power distribution to the calorimetric core power. This is necess~ because the total integrated core power from the detectors does not usually add up to Ule calorimetric value due to Ule detector signal to power conversion method.

The full core three-dimensional power distribution consisting of 204 assemblies~ *51 axial nodes is stored in variable FllLL3D ~Subroutine ZIADAZ. The first step in REDUCE is to calculate the total integrated core power given by FlJLL3[). This is done by calculating the integrated power in MWth for each assembly and Ulen adding up all of the assembl~.

powers.

The integrated assembl~ powers are calculated ~ utilizing the trapezoidal rule which can be written formally as:

s~(x) J, >< ~ r~(,._)

  • 2 H*.) .. i ~ l*~} t .... "' 2. 5(x..,') .. -S (x:;]
a. . .

In the code, the trapezoidal rule is implemented for an assembl~ 1

~using one-half of Ule powers in the top and bottom nodes:

  • AXIAL= (FU[L3D(i,l) and then integrating up assembl~,

AXIAL = !Vl..IAL The /Vl.IAL values for each

+ Fl.J[L30(i,51))/Z

  • i, using:

+ FULL3D(i ,J) assembl~

J=Z to 50 are summed to generate the total core power:

CORPOW = CORPOW + /Vl.IAL In order to satisf~ Ule trapezoidal rule, CORPOW is then divided ~

50, which is equal to n given above. Note Ulat the integration limits are from O to 1. This is becai rse fractional core heights were used in the calculation of the FULL3D point powers. The reader should realize that the values in FU.L3D are point powers per unit length and are thus point linear heat generation rates.

Once the integrated full core detector power has been determined, a normalization factor, RATIO , is calculated.

RATIO = CORPOW/CALPOW RATIO is then used to normalize the full core 3-D detector power distribution to the calorimetric core power.

FULL3D(i,j) = FlJ[L3D(i,j)/RATIO

Section Z P~5 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.5.Z Subroutine REDUCE (continued)

The maximum value of FULL3D(i,j) after normalization is ~ved in variable PEAK. PEAK is actually the core nodal LHGR peaking factor.

At this point, REDUCE transforms tile point power distribution of FULL3D to 204 by Z5 integrated nodal powers. This is also done via tile trapeziodal rule. Each integrated nodal power (Z5 of tilem) is calculated by integrating over tile three nearest point powers defined by FUL30.

The equation used is:

F3DZ5(i,k) = (FULL3D(i,j) + Z*FULL3D(i,j+l) + FULL3D(i,j+Z))/4./Z5.

where:

F3025(i,k) = integrated nodal power, assembly i,node k k = axial node number, !=bottom to Z5=top FULL3D = Z04*51 point powers from ZIADAZ j = O<*Z)-1, axial node number, l=bottom to 5l=top The division by 4 is tile division by Z-ttn from the trapezoidal rule formal definition (n=Z). The di vision by Z5 is actually a multiplication by the quantity (b-a) which is tile core height of each integral node. Since the total assembly height is l, (remember the fractional heights in ZIADAZ),

then each of the Z5 integrated nodal powers cover l/Z5th of tile total core height.

The F3DZ5 Z04*Z5 integral nodal powers are summed up for tile entire core in order to determine tile total core power as before. This value should be very close to tile calorimetric power, but due to numerical errors in the integration procedure, small diferences occur. Therefore, the powers in F3DZ5 are also normalized to CAL.POW as was done above *

  • /

Section Z P~6 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.5.3 Subroutine RADIAL (Edits #Z3 and #24)

The purpose of Subroutine RDLAXL is to transform the three-dimensional Z04 assemblies by Z5 axial nodes power distribution (F3D25) calculated in Subroutine REDUCE to two-dimensions radially.

First, an integrated radial power distribution is generated cy summing the axial nodal powers in each assembly. This gives a gross indication of the total power generated in each assembl~ of the core. The equation used is:

FULLZD(i) = FULLZD(i) + F3025(i,j) j=l to Z5 where:

FULLZD(i) = integrated power for assembl~ i in MWth F3DZ5(i,j) = nodal integral power for assembl~ i, axial node J Second, a normalized radial power distribution is generated. This is done cy dividing each of the assembl~ powers from above b~ the core average assembl~ power. The equation used is:

FULNZD(i) = Fl.JI.L2D(i)/CALPOW*ZD4. i=l to Z04 where:

FULN2D(i) =normalized power for assembly i

  • FULLZD(i) = integrated power for assembl~ i in MWth Both the normalized and integrated assembl~ radial power distributions are edited using Subroutine EOTFUL under Edits #23 and #24, respectivelv.

Edit #23 also contains the X1'G normalized assembl~ radial power distribution and percent deviation between.Xl'G and PIDAL for each assembl~ ..

Section Z P~7 REV 3 DESCRIPTION of the NAIN PROGRAM and SUBROUTINES

  • Z.5.4 Subroutine HisrOG (Edit #5Z)

The purpose of Subroutine HISTOG is to produce a histogram of deviations between measured and predicted detector powers and to perform*some simple statistical analysis on these deviations.

The deviations which HISTOG uses are those saved by Subroutine SAVDFN of section Z.4.17. HISTOG ~enerates the histo~am of these deviations and also calculates the first four moments for the deviation data: the mean, standard deviation, skewness and peakedness. The equations used are the followi~:

Ml (mean ) n MZ (st. dev. ) = I'\

\"\ 3.

~ ( )( L. - f'\ .)

i.=- '

M3 (skewness ) =

  • If the absolute value of M3 is less than 0.5 the distribution mey be considered ~etric.

M4 (peakedness) n L,(¥~- n.)

i~ I Li M4 < 3 means a curve flatter than the normal distribution M4 = 3 (rou~hly) means a normal distribution M4 > 3 means a curve more peaked than the nomal Note that for all calculations, "n" weighting is used because no attempt is bei~ made to estimate the moments for an entire population of deviations

  • Section Z P~8 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.5.5 Subroutine OFFSET The purpose of Subroutine OFFSET is to collapse the 3-D full core power distribution radially to a 1-D axial power shape. In addition; the core axial offset (axial shape index or power split) are also determined.

The first step is to collapse the full core solution to an aver~e octant.

Only instrumented assemblies are collapsed. The assemblies with inferred powers are i.ni ti ally skipped. After the col lpase, a check is made to see if each octant location has values. If not then those locations were not instrumented in the full core. In order to fill these uninstrumented octant locations, all inferred powers symmetric to the uninstrumented location are aver~ed and used. The result is a 3-D octant power distribution which is stored in variable OCT3D.

OCT3D is then collapsed radially to obtain the ave~e core axial power shape which is stored in variable AC/>PS. The following equation is used:

ACAPS(j) = ACAPS(j) + OCT3D(i ,j)*SYMOCT(i) i=l to Z8 j=l to Z5 where:

ACAPS(j) = radially integrated planar power for axial plane j OCT3D(i,j) = nodal integral power for octant location i, axial node J.

  • SYI10CT(i) =number of symmetric assemblies to octant location i in the full core.

ACAPS(j) = ACAPS(j)*Z5./CALPOW where:

j = l to Z5 ACAPS(j) =normalized planar power for axial plane j The axial offset is determined by summing the top and bottom half core powers fractions from array ACAPS. The equations used for the summations are:

LOWER = LOWER + ACAPS(i) i=l to lZ UPPER = UPPER + ACAPS(i) 1=14 to Z5 where:

LOWER = total power fraction in the bottom half of the core UPPER = total power fraction in the top half of the core ACAPS(i) =power fraction for axial plane, i, from Subroutine RDLAXl..

The axial offset is the calculated as:

LOWER - UPPER LOWER + ACAPS(l3) + UPPER

Section Z P~~ REV 3 DESCRIPTIOO of the MAIN PROGRAM and SUBROUTINES

  • Z.6 Prowam Section #6 Tue purpose of program section #6 is to compare the core power distri-bution calculated b~ PIDAL ~ainst limits given by the Palisades Technical Specifications. Tue subroutines in this section perform the incore peaking factor and linear heat generation rate calculations. High alarm limit factors for the incores along with the allowable power level for operation with onl~

the excore monitoring ~stem are also determined.

Significant revisions to the Palisades Technical Specifications which dealt with core power distribution monitoring were made between EOC 7 and BOC 8. In general, the all pins and narrow water gap pins radial peaking factor monitoring requirements were removed. In addition, the inner pins and narrow water gap pin linear heat generation rate calculation requirements were removed, while the all pins calculations were modified. A change in the method of calculating allowable power level was also made.

Tue following sections discuss each of the subroutines within section #6 in detail. Tue discussions of the individual subroutines cover both the cycle 5 through 7 and cycle 8 Technical Specification calculation requirementso

Section Z PlOO REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.6.1 Subroutine CPEAK The purpose of Subroutine CPEAK is to calculate the assembl:V and pin peaking factors for the core and to save the maximum values b:i,i fuel t~e.

There are four peaking factors calculated b:V CPEAK: assembl:v radial, all pins, inner pins and narrow water gap pins peaking factors. From Ref #1 section 1.1, the following definitions appl~.

Assembl~ Radial Peaking Factor Maximum ratio of individual fuel assembl:V power to core average assembly power integrated over the total core height, including tilt.

All Pins Peaking Factor (total radial peaking factor)

Maximum product of the ratio of individual assembly power to core aver~e asembly power times the local peaking factor for that assembl:V integrated over the total core height, including tilt. Local peaking factor is defined as the maximum ratio of the power in an individual fuel rod to assembl:v average rod power.

Inner Pins Peaking Factor (total interior rod radial peaking factor)

  • Maximum product of the ratio of individual assembly power to core aver~e assembly power times the highest interior local peaking factor integrated over the total core height. An interior fuel rod is an:v fuel rod of any assembl:V that is not on the assembly*s periphecy.

Narrow Water Gap Pins Peaking Factor Maximum product of the ratio of individual fuel assembly power to core average fuel assembl:V power times the highest narrow water gap fuel rod local peaking factor integrated over the total core height including tilt. A narrow water gap fuel rod is a fuel rod adjacent to the narrow interfuel assembl:V water gap (a gap not containing a control rod).

For versions of PIDAL for Palisades cycle 8 and* beyond, onl:v the assembl:v radial peaking factor and inner pins peaking factors are calculated.

Therefore, PIDAL was modified to not perfom the all pins and narrow water gap pins p~ing factor calculations

  • Section Z PlDl REV 3 DESCRIPTION of the MAIN PROGRAI1 and SUBROUTINES
  • Z. 6 .1 Subroutine CPEAK (con t.i nued)

Subroutine CPEAK is called from PIDAL which is looping over each assembly.

PIDAL passes the assembly number (between 1 and ZD4) into CPEAK. Therefore, it should be clear that CPEAK operates on only one assembly at a time.

CPEAK first performs pin peaking factor integrations. A routine is used which determines the appropriate pin peaking factor for the axial nodes based on rod bank insertion.

The reader should recall that pin peaking factors may have been read in from thew* library for several possible rod bank insertion sequences by Subroutine COFCAL. Also, the current rod bank configuration was determined by Subroutine RBANK.

The following equations are used to integrate the nodal peaking factors over the core height:

AFRT = AFRT + F3DZ5(i,j)*R(ioct,m) j=l to Z5 IFRT = IFRT + F3DZ5(1,j)*T(ioct,m) j=l to Z5 NFRT = NFRT + F3DZ5(1,j)*TN(ioct,m) J=l to Z5 where:

AFRT = integrated power times the all pins peaking factor for assembly 1 IFRT = integrated power times the inner pins peaking factor for assembly 1.

NFRT integrated power times the narrow water gap pins peaking factor for assembly 1 F3DZ5 = nodal integral power for assembly i, axial node J from Subroutine REDUCE:

R(ioct,m) = all pins peaking factor for octant location ioct, and rod bank m.

T(ioct,m) = inner pins peaking factor for octant location ioct, and rod bank m.

TN(ioct,m) = narrow water gap pins peaking factor for octant location ioct, and rod bank m.

ioct = octant location (between l and Z8) for assembly i m = rod bank region number for current axial node J Peak rod powers are calculated from the integrated data using:

RODKWA(i) = AFRTINUI1ROD(ifut~)*l000.*UNUSER, kilowatts peak rod power, all pins peaking for assembly i ROIJKWI(i) = IFRT/NUI'IROD(ifut~)*lOOO.*UNUSER, kilowatts peak rod power, inner pins peaking for assembly 1 RODKWN(i) = NFRTINUMROD(ifut~)*lOOO.*UNUSER, kilowatts peak rod power, narrow water gaps pins peaking for assembly 1 NOTE: All pins and narrow water gap pins calculations performed only for cycles 5,6 and 7.

Section Z PlOZ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z. 6. 1 Subroutine CPEAK (continued)

The peaking factors are then divided b~ the core averat;?e assembl~ power in order to satisf~ the definitions given above.

AFRT = AFRT*ZD4./CALPOW*UNUSER IFRT = IFRT*ZD4./CALPOW*UNUSER NFRT = NFRT*ZD4 ./CALPOW*UNUSER where:

AFRT = total radial peaking factor for all pins IFRT = total radial peaking factor for inner pins NFR1' = total radial peaking factor for narrow water gap pins CM.POW = total core power in MWth UNUSER =optional user input uncertaint~ multiplier supplied via input card "/fl. (not usuall~ used)

At this point the assembl~ radial peaking factor is stored as:

AFR = FULNZD(i)*UNUSER where:

AFR = assembl~radial peaking factor FULNZD(i) = core nomalized power for assembl~ 1 calculated in SUbroutine RDLAXL

  • UNUSER = optional user input uncertaint~ multiplier supplied via input card "/fl. (not usual l~ used)

A check is then performed for each peaking factor in order to see if the current assembl~*s values are the maximum for the fuel twe. In the case of the all pins peakinQ factor, the maximum values are stored ~ fuel t~ as follows:

FRTA(i futw) = maximum total peaking factor for all pins for fuel t~ ifUt~. Maximum value of AFR'I'.

IFRTA(i fut~) = assembl~ number of the maximum AFRT for fuel twe ifutwo NUMROD(ifutw) =number of fuel rods in assembl~ of fuel t~ ifutw.

The analat;?ous variables for inner pins, narrow water gap and assembl~ radial peakinQ factors are left for the reader to find in CPE:AK

  • Section Z Pl03 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.6.Z Subroutine LHGR The purpose of Subroutine LHGR is to calculate nodal linear heat generation rates and allowed to measured linear heat generation rate ratios per Technical Specification (Ref #7) section 3.Z3.l. Subroutine LHGR is also called from the PIDAL loop over all Z04- assemblies. Like CPEAK, LHGR only operates on one assembly at a time.

LHGR*s mey be calculated for the three types of pin peaking factors; all, inner, and narrow water gap pins, based on the rod bank dependent peaking factors from thew* library described in the discussion of Subroutine CPEAK.

For Palisades cycle 5,6 and 7 all three types of pin linear heat generation rates were performed. For cycle 8 and beyond, onl~ the all pins LHGR calculations were performed.

The equations used are as follows:

LHGRA(i,j) = F3DZ5(i,j)*R(ioct,m)/RODLEN(ifutyp)*Z5.*l.INUSER*l000o LHGRI(i,j) = F3DZ5(i,j)*T(ioct,m)/RODLEN(ifutyp)*Z5.*llNUSER*lOOO.

LHGRN(i,j) = F3DZ5(i,j)*TN(ioct,m)/RODLEN(ifutyp)*Z5.*l.INUSER*l000o where:

LHGRA(i ,j) = peak pin lhgr for assembl~ i, axial node J for all pins peaking in KW/ft

  • UiGRI(i ,j) = peak pin lhgr for assembl~ 1, axial node j for inner pins peaking in KW/ft LHGRN(i ,J) = peak pin lhgr for assembl~ 1, axial node J for R,T,TN narrow water gap pins peaking in KW/ft F3DZ5(i,j) =nodal power in MWth for assembl~ 1, axial node J from Subroutine REDUCE

= pin peaking factors for octant ioct and rod bank m from Subroutine COFCAL RODLEN(ifutyp) = total length in feet of all fuel rods in an assembl~ of type ifutMJ ifutw = fuel tMJe for assembl~ i UNUSER =optional user input uncertainty multiplier supplied via input card tf1. (not usually used)

RODLEN/Z5. = fuel rod length in the axial region covered by node J

Section Z Pl04 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.6.Z Subroutine LHGR (continued)

Allowed to measured lhgr ratios are calculated in Subroutine LHGR in order to verify compliance with the limits established in Ref #1. The equations used come from Ref '111 section 3.Z3.l and are as follows:

P..ATIOA(i,j) = ALOCAL(j)*FBE*AKWFTL(ifut'){P)/LHGRA(i,j)

RATIOI(i,j) = ALOCIL(j)*IKWFTL(ifut'){P)/LHGRI(i,j)

RATION(i,j) = ALOCIL(j)*NKWFTL(ifut'){P)/LHGRN(i,j) where:

RATIOA(i,j) =allowed to measured linear heat generation rate based on all pins peaking RATIOI(i ,j) = allowed to measured linear heat generation rate based on inner pins peaking RATION(i ,j) = al lowed to measured 1 inear heat generation rate based on narrow water gap pins peaking ALOCAL(j) = allowable LHR for axial node j, Ref '111 Figure 3.23-1 ALOCIL(j) =allowable LHR for axial node J, Ref '111 Figure 3.23-3 FBE: = allowable LHR for peak pin burnup, assembly i, Ref '111 Figure 3.23-z. See Subroutine GETFBE:. For cycle 8 and beyond, FBE: is omitted from tile equation.

AKWFTL(ifut'){P) = allowed LHR in KW/ft for assembly type, ifut~

based on all pins peaking IKWFTL(ifut~) = allowed LHR in KW/ft for assembl~ t~e, ifut~

based on inner pins peaking NKWFTL(ifut~) = allowed LHR in KW/ft for assembl~ type, ifut~

based on narrow water gap pins peaking

  • /

Section Z Pl05 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES

  • Z.6.3 Subroutine GETFBE Tue purpose of Subroutine GETFBE is to calculate a burnup dependent linear heat generation rate penalty factor. The penalty factor is applied to the linear heat generation rates based on all pins peaking per Ref #'l section 3.Z3.l. For cycle 8 calculations and beyond, the burnup penalty was omitted and Subroutine GETFBE was deleted.

Tue LHGR burnup penalty factor, variable FBE, is calculated based on the peak pin aver~e nodal exposure for the assembly in question. Tue peak pin average nodal exposure is calculated based on the exposure pin peakin~

factor supplied to PIDAr. in the W library and the current nodal exposure 9

distribution in the assembly. The equations used are:

PPEXP = PPEXP + FUEXP(i ,j)*PINEXP(ioct,m) j=l to Z5 where:

PPEXP = intewa,l peak rod exposure for assembly i, MWD/MTU FUEXP(i,j) =nodal exposure for assembly 1, axial node J, MWD/MTU PINEXP(ioct,m) = exposure pin peakin~ factor for octant ioct, rod bank m The average nodal peak pin exposure is then calculated as:

PPEXP = PPEXP/Z5. ave~e peak pin nodal exposure in MWD/MTU Once PPEXP is known, it is passed to the ft.met.ion FBEF. FBEF returns

  • the correct FBE for the exposure PPEXP based on FiQUre 3.Z3-Z of Ref #'l
  • Both FBE and PPEXP are then returned ~ GEIFBE to the call i~ routine
  • Section Z Pl06 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.6.4 Subroutine LLHGR The purpose of Subroutine LLHGR is to find and save the limiting linear
  • heat generation rates by fuel type. Tue limiting values mey be found for each pin peaking type: all, inner, and narrow water gap pins. This subroutine, like CPEAK and LHGR, is called once for each assembly from PIDAL.

Tue allowed to measured linear heat generation rate arreys are searched, with each nodal value compared with the previously found limiting value for the fuel type. Tue most limiting value is simply the lowest ratio.

For all pins linear heat generation rates, the following variables are used:

LIMITA(ifutyp) = lowest allowed to measured ratio of all pins LHGR for fuel type ifutyp. Arrey searched is RATIOA calculated in Subroutine LHGR.

LAI(ifutyp) = assembly number of the peak all pins LHGR for fuel type i futyp LAJ(i futyp) = axial node number of the peak all pins LHGR for fuel type i futyp Tue analogous variables for inner pins and narrow water gap pins limiting linear heat generati ion rates were calculated for cycles 7 through 7' and mey be seen in the coding for those versions of Subroutine LUJGR

  • Section Z Pl07 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.6.5 Subroutine EDSOME (Edi ts #Z.5 to #Z"J)

The purpose of Subroutine EDSOME is to edit a variety of power distri-bution data. There are five edits that can be generated by EDSOME. Each is discussed by edit number as follows:

Edit #2.5 Edit #2.5 consists of the integrated detector core power and comparison with the calorimetric power. The variables CORPOW and RATIO, which are the inte~ted detector power and ratio to calorimetric, respectively, were calculated in Subroutine REDUCE.

Edit #2.6 Edit #2.6 consists of the core normalized peak node heat rate PEAKN ..

PEAKN, derived from the peak node heat rate PEAK calculated in Subroutine REDUCE, is referred to as the core peaking factor and is given by; PEAKN = PEAKICALPOW*Z04.

PEAKN along with it*s location is edited.

  • Also included in Edit #2.6 is the core total pin peaking factor F(Q)o F(Q) is the maximum all pins nodal linear heat generation rate from arrav LHGRA. It is derived as:

TPF = rJ-IGRA(i,j)*'ILICALPOW*lOOO.

where:

TPF = core total peaking factor UIGRA(i,j) = maximum all pins linear heat generation rate in the core (assembl~ i, axial node J).

TL = total rod length of al 1 rods in core, in feet CA£POW = total core power 1000 = number of killowatts per megawatt TPF is found and edited~ Subroutine GEI1'PF which is not otherwise mentioned by this manual. Also, note that the equation part TL/CAf.POW*lOOOo is the reciprocal of the core average linear heat rate in kw/ft.

Edits #'Q and #Z8 These edits consists of the incore quadrant tilts (from TILT) and mey contain excore tilt values i r excore readings were input on card t~e #3.

If excore detector readings were input, then excore tilts, and deviations between excore and incore tilts are edited. Also edited is the optional hand input tilt (or peaking factor) uncertainty UNUSER from card t~ '1/1.

Edit #Z8 is produced by Subroutine EDTILT

  • Section Z Pl08 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • 2.6.5 Subroutine EDSOME (continued)

Edit #Z"}

Edit #Z<J consists of the incore aver~e core axial power shape found in Subroutine RADIAL and stored in array ACN'S. The normalized axial shape values for each of the Z5 core planes are edited. Also edited is a plot showinQ the PIDAL calculated axial power shape (ACN'S) and XTG power shape in array XTGAX from Subroutine EXPAND. The core ave~e axial power shape is Qenerated via Subroutine PLOTER, which is also not discussed further in this manual

  • Section Z PlD? REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.6.6 Subroutine EDPEAK (Edit #30)

The purpose of Subroutine EDPEAK is to edit the calculated assembl~ and pin peakins factor data calculated in Subroutine CPEAK. For the most part, EDPEAK is an editing routine, but a small amount of limit searching is done which must be explained.

In CPEAK, the maximum ?SSembl~ peaki~ factor was saved ~ fuel t~e in arrey FFRA. It is desired to find the most limiting of these values based on -

allowed to measured assembl~ peaking factor ratios. Note that the allowed peaking factors mey be different for each fuel t~.

A loop is executed over the number of fuel t~es in the core. For each fuel twe, the allowed peaking factor is computed per Ref ti! section 3.23.z.

For cycles 5 through 7 the calculation was:

PJ.L<:1il = FRALIM(i)*(l.O + 0.5*(1.0 - CALPO'J/Z530.))

where:

N.LOW = allowed assembl~ radial peaking factor FRALIM(i) = assembl~ radial peaking factor limit for fuel t~e i declared in BLOCK DATA and specified ~ Ref ti!

= core calorimetric power in MWth For cycle 8 and b~d:

  • PI.L<:1il = FRALIM(i)*(l.O PJ.L<:1il

+

= FRALIM(i)*(l.15) 0.3*(1.0 - CALPOW/Z530.)) for CALPOW for CALPOW The measured assembl}{ radial peaking factor is then divided into N.LOW resulting in the minimum al.low to measured ratio for fuel t~ i. The

>= 50~

< 50~

minimum allowed to measured ratio and i Vs corresponding peaking factor, assembl}{ power, assembl}{ number and fuel t~ are then edited. Also, the minimum ratio and it*s corresponding assembl~ radial peaking factor for the entire core is edited separate!~.

For cycles 5 throUQh seven, the above procedure was repeated for the three t~ of' pin peaking factors: all, inner and narrow water gap pins.

For cycle 8 and beyond, the procedure was repeated for onl~ the inner pins peaking factors

  • Section Z PllO REV 3 DESCRIPTION of Ule MAIN PROGRAM and SUBROUTINES
  • Z.6.7 Subroutine EIJLHGR (Edit #31)

The purpose of Subroutine EDLHGR is to edit Ule calculated peak pin linear heat generation rates calculated and located in Subroutines LHGR and LLHGR, respectively.

EDLliGR is an editi~ routine only, witl1 no si~ificant calculations performed. In summary, Ule limiting linear heat generation rate, allowed to measured ratio, and location of the limiting node are edited by fuel twe for the appropriate pin linear heat generation rates *

  • ./

Section Z Plll REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.6.8 Subroutine CLIMIT (Edit #32)

The purpose of Subroutine CLIMIT is to calculate hiQh alarm limit ratios for the incore detectors. The Qeneral idea is to find the limitinQ linear heat generation rate margins by axial detector level. The individual detector signals will then be multiplied by the appropriate margin in order to define an upper LHGR limit for that detectors siQnal to reach. The detector signal upper limits are transferred to the plant computer (PIP) which monitors all the detectors for abnormally high signals.

An underlying assumption employed in the determination of the detector high alarm limits (and later in the allowable power level calculation) is that the linear heat generation rate is most l imi tinQ at locations of relative axial heat rate peaks. Thus,, alarm limits should be set based on 1 inear heat rates at relative axial heat rate peak locations.

Subroutine CLIMIT is actuall¥ veI"¥ simple. A loop is executed over each assembl¥ in which relative power peaks within the assembl¥ are identified.

The identification of relative power peaks is performed by Subroutine FINDPK.

After an assemblies relative peaks are identified,, Subroutine ALARMF checks to see if the peak location coincidentl¥ had a limiting alarm limit ratio.

If so, the limiting ratio is saved b¥ axial detector level. After completion of the loop, the five limiting hiQh alarm limit ratios (one for each detector level) are edited as EDIT #32 *

  • The reader is directed to the discussions of Subroutines FINDPK and ALARl1F for further detai 1 *
  • ./

/

Section Z PllZ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES

  • 2.6.~ Subroutine FINDPK The purpose of Subroutine FINDPK is to locate relative axial power peaks within a given fuel assembl~. Starting at the bottom of core, *the all pins linear heat generation rate of a node is compared to the linear heat gener-ation rates of the neighboring nodes. If that node is the site of a power peak, then a logical variable is set which corresponds to the peak nodes axial position. The search then continues up the assembl~ until top of core is reached.
  • As mentioned, the assembl~ number whose axial power peaks are to be determined is passed into FINDPK. The arrey LHGRA, which contains the axial all pins 1 inear heat generation rate distribution for all 204 assemblies, is searched from bottom to top for the desired assembl~.

The locations of the peak nodes in an assembl~ are returned to the calling routine via the logical arrey HEREPK. HEREPK has a dimension of 25, with each element corresponding to an axial node within the asseriibl~

(l=bottom of core and 25=top). Further description of this Subroutine is left to the coding *

  • /

/

Section Z Pll3 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROITTINES

  • Z.6.10 Subroutine ALARMF The purpose of Subroutine ALARl1F is to axially scan an assembly and determine which nodal linear heat generation rates are closest to their limits by detector level. The most limiting values by detector level for all assemblies ate then saved for _use in calculating high incore alarm set points.

The procedure is to first look at relative linear heat generation rate peaks (determined by Subroutine FINIJPK) for tile bottom detector level in tile assembly. If a relative peak location exists within tile bottom level, then the most limiting peak pin (eitiler all, inner or narrow water gap) linear heat generation rate from tile location of tile.

relative peak is saved. If no relative linear heat rate peak occurred in the bottom level, tilen the most limiting of tile pin heat rates is determined from the location of tile highest nodal all pins linear heat rate within the level.

The most 1 imi ting al 1owed to measured heat rate for the 1evel and assembly is then compared with the values from the other bottom level assembly 1 imi ting heat rates in the core, with the most limiting value for the entire core being saved. This procedure is then repeated for the other four detector levels in the core *

  • The variables used for determing tile most limiting peak pin linear heat generation rates are RATIOA, RATIOI and RATION for all, -inner and narrow water gap pin twes respectively. The peak all pins linear heat generation rates (for the case where no relative peaks occur in a given detector level) are from variable LliGRA. All four arrays were calculated in Subroutine LliGR.

The most limiting linear heat rates for the core~ detector level are stored in *array ALARM. The locations of the limiting nodes are stored in arrays IALARM and JALARM for the assembly and node numbers, respectively.,

For the cycle 8 Technical Specification revisions, Subroutine ALARMF was modified to only consider all pins LliGR margin ratios

  • Section Z Pll4 REV 3 DESCRIPTION of U1e MAIN PROGRAM and SUBROUTINES
  • Z.6.11 Subroutine GETAPL (Edit ff.33)

The purpose of Subroutine GETAPL is to determine the allowable power level for continued reactor operation, based on the current core conditions, in the event that the incore monitoring ~stem becomes inoperable. The calculation is performed per Technical Specification 3.11.Z (Ref #7).

The equation used for determining the allowable power level (APL) is given in Ref tl7 as:

APL =

  • Rated Power LHR(z)M....,..
  • V(z)
  • E (z)
  • 1. oz where:

LHR(z)M. = limiting LHR vs Core Height per Ref tl7 Section 3.23.1 LHR(2) 11 ~v = measured peak LHR vs Core Height including uncertainties V(z) axial variation bounding condition, Ref tl7 Figure 3.11-1 Ep(z) = factor to account for the reduction of al lowed LHR in the peak rod with increased exposure (Figure 3.23-Z) such that:

For fuel rod burnups less than 27.0 GW0/11T Ep = l. 0 For fuel rod burnups greater than Z7. 0 GWD/MT but less than 33. 0 GWD/11T

  • l. DZ E p = 1. 0 +
  • 0 064*LHR For fuel rod burnups greater than 33.D GWD/MT Ep = 1.0 + .OOlZ*LHR where LHR is the measured fuel rod average LHR in KW/FT.

For cycle 8 and beyond, Ep(z) was omitted from the equation ..

= an allowance factor for the effects of upburno Upburn accounts for variation of the values used in the APL calculation over the 30 days which the APL _may be applied.

The calculation is implemented in PIDAL. as follows. A loop is executed over all assemblies in the core. For each easembly: the nodal average peak pin (based on all pins peaking) linear heat rate, burnup penalW factor FBE, and burnup penalty ESU8P are calculated. FBE and ESUBP were used only for cycles 5 through 7.

Subroutine FINDPK is then called to identify the location of relative axial all pin linear heat generation rate peaks within the assembly. Subroutine AXLAPL is then called, in order to determine if the allowable power level is limiting, with respect to all other assemblies, at the locations of the relative axial linear heat rate peaks.

Note that the APL calculation for cycles 5 through 7 was performed for all three pin peaking (all, inner and narrow water gap) twes. For cycle 8 and beyond, only all pins was considered by AXr.APL. If a core limiting APL value is found, then the value, it~s location and pin peaking twe are saved.

The loop over the remaining assemblies then continues

  • Section Z Pll5 REV 3 DESCRIPTION of Ule MAIN PROGRAM and SUBROUTINES
  • Z. 6 .11 Subroutine GETAPL (continued)

After the loop over all assemblies is completed, Ule limiting APL value is verified to be less Ulan or equal to rated power. I f the APL is found to be greater than l 00 percent power then it is reset tO 100 percent.

The limiting APL is then edited along with the location of the limiting node and the twe of pin peaking factor applied under Edit #33.

A couple of general comments. The APL equation above was for the cycles 5 through 7 al 1 pins peaking factor case. For these cycles, the E p term was not included for 'the inner and narrow water gap pins cases. It is uncertain exactly why this was. Also, FBE only appears in the al 1 pins limit equation and appears to be accounting for the same burnup effect as Ep. Therefore, it is possible that a double hit was taken for burnup effects in the all pins case. The burnup effect accounts for fission gas releases in the fuel pin. It is desired to maintain the internal pin pressure below the moderator pressure

  • Section Z Pll6 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTil\IES
  • Z.6.lZ Subroutine AXLAPL The purpose of Subroutine AXLAPL is to check all pins linear heat generation rate relative axial locations within an assembl~ for limiting allowable power level (APL) values per Technical Specification (Ref tl7) 3.11.Z.

AXC.APL loops from the bottom node to top node for a single assembl~. If a relative axial all pins linear heat rate peak (as determined b~ Subroutine FINDPK) occurred at a given node, then the APL calculation for all, inner and narrow water gap pin linear heat rates is performed. If one of the APL values for the node turns out to be the limiting value so far for the core, then that value, it*s location and pin peaking twe are saved. Various other paramters used in the APL calculation are also saved depending on pin peaking twe.

A)[..AP[. is called once for each assembl~ in the core ~ Subroutine GETAPL.

  • The equations used to determine the allowable power level for each pin peaking* twe are as fol lows:

For All Pins Peaking (cycles 5 through 7)

ALOCAL(j)*F'BE*AKWFTL(ifutw)

APL=

  • 100 * /

LHGRA(i,j)*VZ(j)*ESt.lBP*l.OZ For Inner Pins Peaking (cycles 5 through 7)

ALOCIL(j)*IKWFTL(i fut~)

APL =

  • 100 ..

. UIGRI(i ,J)*VZCJ)*l .OZ For Narrow Water Gap Pins Peaking (cycles 5 through 7)

ALOCIL(J)*NKWFTL(ifut~)

APL=

  • lOOo UiGRN(i ,J)*VZCJ)*l. OZ For All Pins Peaking (cycle 8 and beyond)

ALOCAL(j)*AKWFTL(ifut~)

APL=

  • 100.

LHGRA(i,J)*VZCJ)*l.OZ

  • See Table #Z.6.13 for a description of the variables used in the previous equations.

TABLE Z.6.13 Pll7 REV 3 Variable Twe Description HEREPK LOGICAL HEREPK(Z5) location of relative all pins LHGR peaks

~ axial node from Subroutine FINDPK ALOCAf.... REAL ALOCAL(25) allowable LHR as a function of peak power location. Tech Spec Figure 3.23-1 FBE REAL FBE allowable LHR as a function of burnup from Subroutine GETFBE. Tech Spec Figure 3.23-Z Af....OCIL REAL ALOCIL(25) allowable LHR as a function of peak power location. Tech Spec Figure 3.23-3 Vl. REAL VZ(25) axial variation boundin~ condition for APL. Tech Spec Figure 3.ll-1 ESUBP REAL ESUBP LHR reduction factor for peak rod versus exposure. Tech Spec 3.11.Z AKWFTL REAL AKWFTL(,) allowed LHR ~ fuel twe for all pins Tech Spec Table 3.23-1. Set in BLOCK DATA IKWF1L REAL IKWFTL(,) allowed LHR b~ fuel twe for inner pins Tech Spec Table 3.23-1. Set in BLOCK DATA NKWF1L REAL NK\rlF'lL(~) allowed LHR b~ fuel twe for narrow water

~ pins. Tech Spec Table 3.23-1 UrnA REAL LHGRA(204,25) measured all pins linear heat rate from Subroutine LHGR LHGRI REAL LHGRI(204,25) measured inner pins linear heat rate from Subroutine LHGR LHGRN REAL LHGRN(204,25) measured narrow water~ pins linear heat rate from Subroutine LHGR APL.MIN REAL APLl1IN minimum allowable power level in percent reactor power for entire core

!APL INTECER !APL assembl~ number of APLl1IN location

  • JAPL Af'LV Af'LE APLF APLB APU.HR INTECER JAPL REAL APLV REAL AffE REAL APLF REAL APLS REAL APLLHR axial node number of APLl1IN location axial variation bounding condition for minimum allowable power level, Af'LMIN ESU8P for minimum APL all pins onl~

FBE for minimum APL al 1 pins onlv.

peak pin exposl..We for minimum APL all pins peak pin lhr for minimum APL all pins APLTST REAL APLTST t~e of peak pin for minimum APL

-narrow water gap +3=inner O=all Table #Z.6.13 Variables used in the Allowable Power Level Calculation

Section Z P118 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.6.13 Subroutine PEAKKW (Edi ts #34, #35 and #36)

The purpose of Subroutine PEAKKW is to generate full core radial maps of the axially collapsed assembly peak pin linear heat generation rates in kilowatts. These maps appear under edits #34, #35 and #36 for all, inner and narrow water gap peak pin assembly powers.respectively.

No calculations are performed in PEAKKW. The only operation is to determine which of Ule tl1ree edits are required and to call Subroutine EDTRAD which performs the actual editing. The Ulree arrays passed to EDTRAD are RODKWA, RODKWI and RODKWN for all, inner and narrow water gap peak pin powers. The arrays were calculated in Subroutine CPEAK

  • Section Z Pll, REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • z.6. llf. Subroutine PKKWFT (Edi ts #37, #38 and #3'j)

The purpose of Subroutine PKKWFT is to find and edit the peak axial nodal linear heat generation rates for each assembl}f. The linear heat rates are found for all, inner and narrow water gap pins and are edited under Edits #37, #38 and #3'J respective!}!.

For each assembl}f, an axial scan is performed and the peak node for all, inner and narrow water gap pin linear heat rate is found. The arreys searched are LHGRA, LHGRI and LHGRN which were calculated in SUbroutine LHGR.

PKKWF1' then determines which of the three edits are required and passes the linear heat rate data to Subroutine EDTRAD for editing. No calculations are performed

  • Section Z PlZO REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.6.15 Subroutine EDN040 (Edit #40)

The purpose of Subroutine EDNC>>.O is to produce edit #40 which consists of the entire linear heat ~eneration rate and al lowed to measured linear heat rate arreys. This edit was created for debu~i~ the Tech Spec linear heat rate calculations. Needless to sey, this edits produces lots of output.

The order of editi~ is as follows:

~ LHGRA all pins lhW in kw/ft from Subroutine LHGR Arrey RATIOA all pins allowed to measured linear heat rate ratios Arrey LHGRI inner pins ltlw in kw/ft from Subroutine LHGR Arrey RATIO! inner pins al lowed to measured linear heat rate ratios Arrey LHGRN inner pins ltlw in kw/ft from Subroutine LHGR Arrey RATION inner pins allowed to measured linear heat rate ratios Each of the arreys are edited b~ assembl:~ (Z04) and axial node (Z5),

Zl assemblies are edited per page for 30 pages of total output. For cycle 8 and be~d, this edit onl~ produces the all pins maps~*

  • /

Section Z PlZl REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.7 Program Section tl1 The purpose of pro~ram section tl1 is to calculate the current fuel and control rod exposures_, calculate the hi15h incore detector alarm set points and edi t various summa.I1{ data for the P IDAL case.

The followi~ sections discuss each of the subroutines within program section tl1 in detai 1 *

  • /

Section Z PlZZ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.7' 61 Subroutine EXPOZF (Edit #41)

Tue purpose of Subroutine EXPOZF is to calculate the current nodal fuel exposures. Tue total core, axiall~ collapsed assembl~, and batch aver~e exposures are also calculated, along with the fuel batch power* fractions for the current case. Tue following are the equati.ons util izedo Core ener~ for this case PEFF = DT total enermt to be distributed over the core for the current case in MWhr(thermal) from input card 116 DT = DT/(CALPOW*Z4.) effective full power days for the case based on the input calorimetric power Batch power fractions PA(n) = PA(n) + FULZD(i) i=l to Z04 assemblies where:

PA(n) = total power in Mwth for fuel tlt'()e n FULLZD(i) = integrated power for assembl~ i in 11Wth from SUbroutine RDLAXL n = fuel twe number for assembl~ 1

  • PA(n) = PA(n)/CAC.POW n=l to number to fuel twes in core (' maximum) where:

PA(n) = powel'.' fraction in batch n CALPOW = calorimetric total core power in MWth Nodal Fuel Exposure Distribution Fl.JEXP(1,j) = FUEXP(i,j) + F3DZ5(i,J)*DT*Z5./AM'IU(n) where:

FUE:XP(i ,J) = nodal fi..Jel exposure from last case updated to current in MWD/M'lU F3DZ5(i ,j) = nodal power in 11Wth from Subroutine REDUCE DT = effective full power deys for this exposure case calculated above AMTU(n) = total hea~ metal mass for assembl)l tMle n in MTU n = fuel t~ number for assembl~ i

  • Z5/AMTU = division b~ the fuel mass in the axial region covered ~ node J kxial 1~ Col lapsed Assembl~ Ave~e Exposure EP(i) = EP(i) + Fl.JEXP(i ,j) j=l to Z5 where:

EP(i) = integrated exposure for assembl~ i in MWD/MTU FUE:XP(1,j) = nodal exposure for assembl~ 1 and axial node J in MWD/11TU

  • EP(i) = EP(i)/Z5. i=l to Z04 where:

EP(i) = nodal average exposure for assembl~ i

/

Section Z Pl23 REV 3 DESCRIPTION or the MAIN PROGRAM and SUBROUTINES

  • Z$7 .1 SUbroutine EXPOZF (continued)

Batch Aver~e Exposure EBATCH(n) = EBATCH(n) + EP(i)*AMTU(n) i=l to 204 where:

EBATCH(n) = total batch enerm,r distributed for fuel twe n in l1WD EP(i) = assembl~ exposure in 11WD/l1TU AM'll.J(n) = mass for fuel t~ n (assembl~ i) in M'l'U EA(n) = EBATCH(n)/(AMTU(n)*COUNT(n))

where:

EA(n) = batch ave~e exposure for fuel tMJe n in 11WD/l1TU COUNT(n) = number of assemblies or fuel tMJe n in the core Total Core Exposure ETOTAL = ETOTAL + EBATCH(n) n=l to number of fuel tMJes ("J maximum) l1ASTOT = l1ASTOT + AM'll.J(n)*COUNT(n) n=l to number of fuel twes where:

ETOTAL = total core enerm,r distributed in l1WD l1ASTOT = total core mass in l1TU EBATCH(n) = total batch enerm,r distributed for fuel tMJe n in l1WD AMTU(n) = mass for fuel t~ n (assembl~ i) in l1TU COUNT(n) = number of assemblies of fuel tMJe. n in the core TOTEP = ETOTAL/l'IASTOT where:

TOTEP = current core ave~ assembl~ exposure in r'IWIJ/M'IU (not cycle ave~ assembl~ exposure)

It should be noted that the batch ave~e fuel exposures are further broken down ~ reload fuel cypes. i.e. I-FUEl. - I + ISP + IGAD. This coding is cycle dependent and w1l l not be discussed herein. See the source listing for a description.

The axiall~ collapsed assembl~ exposures (~ EP) are then edited under Edit #41. This is done~ passin~ the~ EP to Subroutine EDFID<P.

EDFEXP performs no calculations and wi 11 not be disci ISSed further. An edit of the octant collapsed exposure distribtuion (Edit #4Z) mey also be produced via Subroutine OC'l'EXP. See section Z.3.1

  • Section Z PlZ4 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.7.Z Subroutine EXPOZR (Edit #43)

The purpose of Subroutine EXPOZR is to calculate the tot.al accumulated exposure distributed to the control rods in MWD. The rod exposures are calculated b~ determining which fuel nodes were shadowed ~ rods, and then using the power seen in those nodes to the adjacent control rod exposure calculation. The equation used for calculating rod exposures is:

ROOEXP(i,L) = RODEXP(i,L) + (F3DZ5(ROIJ(l,i),j) + F3DZ5(ROD(Z,i),j) +

F3DZ5(ROD(3,i),j) + F3DZ5(ROD(4,i),j))*DT/4 where:

ROOEXP(i ,L) = nodal control rod exposure from last case updated to current in MWD. rod i, axial node L i=l to 45, L=l to (Z5-K+l)

F3DZ5(ROIJ(l,1),j) =nodal power in ffi.lth for assembl~ ROO(l,i) and axial node J, j=K to Z5 ROO(l,1) = number of the assembl~ to the north-west or rod i ROO(Z, 1) = number of the assembl~ to the north-east of rod i R00(3, i) = number of the assembl~ to the south-west or rod i R00(4,i) = number or the assembl~ to the south-east of' rod i

  • K H(i)

HA

= H(i)/HA*Z5. + l

=rod position in cm withdrawn for rod 1

= 335.ZB cm (active rod length)

The integral exposure for each control rod is then calculated as:

SUMEXP(i) = SUMEXP(i) + RODEXP(i ,J) J=l to Z5 where:

Sl.JMEXP(i) = inteQral control rod exposure for rod i in MWD ROOEXP(i,J) = nodal control rod exposure for rod i, node J For the above equations, the rods are indexed ~ PIDAL*s internal storage scheme which is different from the plants control rod indexing scheme.

See Ref #Z Attachment #Z for the control rod indexing conversion table.

The accumulated control rod exposures~ then be edited tmder Edit #43.

Included in the edit are: the PIDAL control rod number, the plants control rod drive index m.mlber, the current position of the rod in inches from the core bottom, the integrated control rod exposure, the maximum control rod exposure and the locatioo of the maximum exposure.

It should be noted that this author is not entirel~ convinced that the rod exposures are correct since some of the rods ~ have been shuffled or replaced with no modifications made to the PIDAL values. Also note that since the rod positions came from an instantaneous PIP data dump, the rod confi~tion of the dump may not have been representative of the entire exposure period

  • _/

Section Z PlZ5 REV 3 DESCRIPTION of the MAIN PROGRAl1 and SUBROlITINES

  • Z.7.3 Subroutine CORDAT (Edits .#44 and .#45)

Subroutine CORDAT is an editing routine which prints out core exposure and power distribution summaries. The summaI11 consists of: total core and cycle average exposure, current core power and axial offset, fuel batch aver~e exposures and powers, and the collapsed octant core PIDAL and XTG power distributions and percent deviations. The power distributions are actual!~ produced~ a call to Subroutine OCTANT.

The onl~ calculation performed in CORDAT is the cycle core average exposure, using the followi~ equation:

CYC = TOTEP - BOCEXP where:

CYC = cycle core average exposure in MWD/MTU TOTEP = total core average exposure in MWD/MTU from Subroutine EXPOZF BOCEXP = total core average exposure at beginning of current c~le in MWD/MTU from Subroutine GE:TE:XP The edits are self-explanatory so no further explanation will be given.

Subroutine CHKLIB is also called from CORDAT. Cl-IKLIB determines how much longer the current w~ library will be valid. See Section Z.7' .5 for further discussion of Subroutine Cl-IKLIB

  • Section Z PlZ6 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.7.4 Subroutine OCTANT (Edit #46)

Subroutine OCTANT is an editing routine which prints out the axially collapsed PIDAL and :xTG normalized power distributions and percent deviations between the two. The PIDAL octant power distribution is f,?enerated by collapsing the arrey FULNZD (from Subroutine RADIAL) from full core to l/8th core. Two methods were developed for this purpose, but only one was employed in this version of the code. The following discussion describes these methods.

The old method simply collapsed symmetric box powers in the full core to an avera.f;le *octant representation. Theoretically this is a valid approach, but by examining the technique used for determining assembly powers in non-incore instrumented locations, it was realized that the resultant octant distribution was greatly biased by the theoretical power distribution supplied by :xTG.

The new method employed consisted of collapsing only instrumented detector locations to an octant core. In other words, if an assembly contained even one operable incore detector, then the box power for that assembly would be used in the octant power calculation. For octant locations which contained no operable incores, then an avera.f;le of all symmetric full core locations would be used as the power for that octant location. The reader mey note that this method results in an octant solution which should be essentially the same as the solution determined by the original l/8th core PIDAL model. It is the new method which was employed in the current version of the full core model *

  • The l/8th core XTG power distribution used by Subroutine OCTANT is from arrey :xTGS (subroutine EXPAND). The percent deviation between PIDAL and :xTG octant avera.f;le locations is determined as:

XTG(i) - FXY(i)

DEV(i) = - - - - - - * -

  • l DO~ i=l to ZS FX'f(i) where:

DEV(i) = percent relative deviation between :xTG and PIDAL for octant location 1.

xTG(i) = :xTG normalized power for octant location i.

FX'f(i) = PIDAL normalized power for octant location i ..

From knowing the DEV(i) values for the octant, the root mean square deviation between the two power distributions is calculated as:

Zlil

~ rEV(i)~

ZS.

For the cycle 8 version of the code, the RMS without H-stainless steel bundles included in the calculation is also edited. This was due to problems early in

. cycle 8 with the H-ss Wpri!lles.

The RMS deviation is saved later on the second record of the PIDAf. exposure file.

Subroutine OCTANT produces Edit #46

  • Section Z PlZ7 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES
  • Z.7 .5 Subroutine CHKLIB (Edit #47)

The purpose or Subroutine Cl-IKLIB is to determine how man)! effective full power operati~ d~ worth of data remain in the PIDAf.. w* librar)I. First, the aver~e power seen by each incore detector is found usin~ the followin~

equation:

A(i,L) = (F3DZ5(1,J-l) + F3DZ5(1,j) + F3DZ5(i,j+l))/3.*ZS L=l to 5 where:

A(i ,L) = power seen by detector L (1 to 5) of assembl)I 1 in l1Wth F3DZ5(i,j) =power for assembl)I i node J in l1Wth from Subroutine REDUCE J = (L*5) - z L = detector level Then, the remaini~ effective full power ~ left in the \.P l ibrar)I for each detector is calculated as:

EX= IJEL.EXP(IOC'l',L)*Al11tl(n)/A(1,L)*CALPOW/Z530.

where:

EX = effective full power d~ of w* l ibrari/ data remaini~ for detector L of assembl)I i DELEXP(IOC'l',L) = exposure remaini~ in librar)I for octant location ioct and level L from Subroutine WCALC, HWD/tm.J AMTU(n) = heaV)I metal mass of assembl)I 1 which is of fuel tlll)e n, I1'llJ A(i ,L) = power seen ~ detector L of assembl~ i in MWth CALPOW = calorimetric core power in l1Wth Z530 = rated reactor power in MW th For the c~le 8 version of the code, the H stainless steel assemblies were not included in the CllKLIB calculations due to problems earl)/ in ~le 8 with the H-ss Wprimes.

The minimUlll value of EX for the entire core is saved and i Vs location .

and value are edited as EDIT #47 *

- W.Q.

Section Z PlZ8 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.7 .6 Subroutine Pl.ITEXP (Edit #48)

The purpose of Subroutine PUTEXP is to write the records for the current case onto the PIDAL exposure file. For an exposure case, four records are written whereas for a power distribution case, only two records are written.

The first record contains restart identification data for the case such as run date, burnup dates, the case number, reactor power and effective full power deys for the case. The second record contains the 3-D Z04 assembly by Z5 axial nodes power distribution, followed by 80 trend data elements.

The third apd fourth records, written only for cases where exposure is applied to the core contain fuel and rod exposure data, PIDAL detector.

sensi tiv:l ties and Xl'G restart data. All Xl'G data is on the fourth record.

The reader should consult Table #Z.1.15 for a detailed description of the data on the PIDAL exposure file *

., .- -~-

Section Z PlZ~ REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROLITINES

  • Z.7 .7 Subroutine EXMON (Edit #4~)

The purpose of Subroutine EXMON is to provide an edit of the excore monitorin12? systems allowable power level and tar12?et axial shape with respect to Technical Specification (Ref "lf1) 3.11.Z. This edit (#4~) is intended for use b~ the control room operators and is onl~ produced i f excore detector information is input to PIDAL via card t~e #3.

The allowable power level edited was determined b~ Subroutine GETAPL.

No further explanations are required

  • Section Z Pl30 REV 3 DESCRIPTION of the MAIN PROGRAr1 and SUBROUTINES
  • Z.7.8 Subroutine CALARl1 (Edit #50)

The purpose of SUbroutine CAL.ARM is to appl¥ the incore detector high alarm limit ratios calculated in Subroutine CLil1IT to the measured detector signals, resulting in new incore high alarm limits. CAL.ARM also calls Subroutine PTAPE which writes the alarm limits to an external device and calls Subroutine TSSUMM which generates a SUilllllaI1/ of Technical Specification parameters monitored~ PIDAL.

The following equations are used for determining the incore detector alarms.

The incore detector readings in flux units (nv) are calculated as:

E(1,J)

READNV = -----

KSUBF(i ,J)

The raw millivolt detector signals are backed out using:

KSUBS(i ,J)

EIJ = E(i ,j) * - - - - -

KSUBB(i,J)

The incore detector hiQh alarm in flux units are calculated as:

Finall~, the incore detector hiQh alarm in millivolts is calculated as:

Table 1'2.7 .8 contains a list of the variables used above and definitions for each.

If an incores detectors ALl1NV value is found to be less than or equal to zero, then that value is set to 870.0 which indicates that the detector is failed. The incore detector high alarm limit values are then converted to units required~ the Varian Data.logger (PIP) and stored for later use:

AI:..ARMl (Jj, i) = N.l:'NV/ .ZlZ5 + .5 where:

ALARMl (Jj, i) = alarm limit in PIP uni ts for detector JJ of string

i. For the above equations JJ is the detector number in PIP notation (l=top) and J is in PIDAL notation (5 = top), J=6-jj. The .5 is for roundoff error.

The calculated alarm limits along with the detector signal data for each detector are edited in PIP notation under edit #50. The equation used for the conversion, comes from Ref #3, Appendix A, INDEX t/1. When using the reference equation, note that ALl1NV is Y and ALARl11 is X. Also note the one

  • digit decimal positioning. Therefore the reference equation becomes:

Y = 0.531Z5

  • Z .* X
  • 10 = O.ZlZ5
  • X

Section Z Pl3l REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES

  • Z.7.8 Subroutine CALARM (continued)

If an alarm 1 imi t output is desired for input to the PIP, then Subroutine PT.APE is called. PTAPE is called if the input variable TAPPUN (card "#'1) is either set as TAPPUN=l or 1 f. TAPPUN=O and the case was a power distribution case (DT=O). I f TAPPUN is neither one or zero then PTAPE is not called. See Section 2.7., for additional discussion of Subroutine PTAPE.

Subroutine TSSUMM is alw~s called to summarize the Technical Specifi-cations monitored by PIDAL. Section Z.,.10 summari:zes TSSUMM *

  • ,/

/

TABLE Z.7.8 Pl32'. REV 3 Variable Twe Description READNV REAL READNV incore detector reading in flux (nv) units

  • EIJ ALMNV ALl1MV E(i ,j)

KSUBF' REAL EIJ REAL ALMNV REAL ALl1MV REAL E(45,5)

REAL KSUBF(45,5) incore detector reading in millivolts not corrected for sensitivity or background

  • incore detector high alarm in flux (nv) uni ts incore detector high alarm in millivolts depletion and background corrected detector millivolt signals from Subroutine INVERT detector flux scaling factor, mv/nv KSUBS REAL KSUBF(45,5) detector sensitivity factor, dimensionless KSUBB REAL KSUBF(45,5) detector background noise correction factor, dimensionless ALARM(j) REAL ALARM(5) incore detector high alarm limit ratios from Subroutine CLIMIT Table #Z.7'.8 Variables used in the incore detector high alarm limit calculations

Section Z Pl33 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROOTINES

  • Z.7.~ Subroutine PTAPE The purpose of Subroutine PTAPE is to write incore detector high alarm 1 imi t information to an external device. The data is written in a form suitable for input to the PIOAL support prowam P5Z71 OZP, which formats the alarms for punching on a punch paper tape that the PIP can read.

PTAPE is strictly an editi~ routine with no calculations performed.

The alarm 1 imi t data is edited in a human readable form, eight detectors (not strings) per line. Each line begins with the PIP~s starting address for the eight alarm limits that fol low. The alarm limit data is preceeded and foll owed by the PIDAL case run date and the date and time of the PIP data dump that was used as input to the PIOAL case. Further detail on the output format is left to the coding *

  • I

Section Z Pl34 REV 3 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • Z.7' .10 Subroutine TSSUMM (Edit #51)

The purpose of Suborutine TSSUMM is to fi!!enerate a summacy of all of the Technical Specification monitoring done b~ PIDAL. All of the data included in the summacy alreactt exists on another edit and onl~ minor calculations are performed. The Technical Specification Sununacy occurrs as Edit #51. The The following table list all of the variables edited and where the~ were calculated in the code.

Variable Originating Description SUbroutine TITI..E GENT IT PIDAL case title for current case NDETL CALARM number of operable incores ~ detector level and quadrant NDETQ CALARM number of operable incores ~ quadrant NDETC CM.ARM number of operable incores in the core AO TILTAO incore axial offset EXAO TSSUMM incore/excore axial offset deviatiori, cycles 5-7'

  • XCPR ASI AS ID IF APLMIN card #3a card #3b TSSUMM GETAPL EXAO = ABS(Z.O*XCPR - AO) excore power ratio recorder reading, cycles 5-7 excore axial shape indices, cycle 8 and ~end incore/excore ASI deviations, cycle 8 and be~nd ASIDIF(i) = ABS(ASI(i) - AO) allowable power level for excore UiGR moni taring AQUAD TSSUMM AQUAD(i) = (QTILT(i) - 1$0)*100.0 AZCCR TSSUl1M AZCCR(i) ~ (ZCORE(i) - l.0)*100.0 DIFTLT 'TSSUMM Absolute value of AQUAD(i) - AZCOR(i)

QTILT TILTAO Incore tilts for all four quadrants ZCORE EDTILT Excore tilts for all four quadrants ALLOWR EDPEAK allowed peaking factor for 1 imi ting assembl~ radial peaking factor measured limiting assembl~ radial peaking factor allowed peaking factor for 1 imi ting all pins total radial peaking factor PEAKA measured 1imi ting al 1 pins total radial peakinQ factor ALL<:MI al lowed peaking factor for limiting inner pins total radial peaking factor, cycles 5...,.7 PEAK I measured limiting inner pins total radial peaking factor, cycles 5-7' ALLOWN al lowed peaking factor for limiting narrow water gap pins total radial peaking factor, cycles 5-7' PEAKN EDPEAK measured limiting narrow water gap pins total radial peaking factor, cycles 5-7'

  • Table #Z.7".10 Variables appearing on the Technical Specification Summacy Sheet, Edit ;#51.

/

Section Z Pl35 REV 4 DESCRIPTION of the MAIN PROGRAM and SUBROUTINES

  • 2o7.ll Subroutine BDZOIK (Edit #Al)

The purpose of Subroutine BOZOIK is to all ow PIDAL to re-solve for the full core power distribution by alternately failing each operable incore detector string in the core. Operation of BDZOIK is necessary for determinin~

the uncertainties associated with inferring detector powers in unirutr1.1mented core locations. BDZOIK mey be called after a base power distribution has been determined by setting input flag IOUT on input card #Z.

  • BDZOIK closely resembles Subroutine PIDAL in that it obtains the radial power distribution for all five detector levels using the same method as described by Subroutine PIDAL and its satellite routines. BDZOIK does not solve for the fine mesh power distribution but rather just the radial distributions at each level. In addition, BDZOIK along with its satellite*

routine BD:::OIT generates an output file which mey be used for statistical analysis~ on the effect of failing individual incore detectors. The logic for BDZOIK is described as follows.

BDZOIK first saves the base case PIDAL power distribution for future statistical use. The full core fine mesh power distribution stored in variable F3D25 by subroutine REDUCE is written to a binary output file. Also, variable POWMAP which contained the base case radial power distributions for the five detector levels (stored by subroutine SOLVES) is eopied into variable POWOLD

  • A loop over all incore strings is then initiated. For each incore string which has all five of its incores operable, all five are failed and the radial power distribution is re-solved for each detector level. Note that only one incore detector string is failed at a time and there mey be up to 45 redeterminations of the radial power distributions (one for each possible incore string to be failed). Aft.er an incore string has been failed and the power distribution redetermined, the five inferred detector powers for the string which was failed are stored in variable POWNEW. The failed incores are then reset with their original powers Cun-failed) and the loop goes on to the next incore string. Along the wey, Edit #Al is produced informing the user of each recalculation of the power distribution and which incores were failed. All of the other PIDAL edits are turned off.

It should be noted that if an incore string is failed which would cause the quadrant tilt calculation routine to fail, (not enough operable symmetric detectors) then that incore is reactivated and the power distribution is not determined for it in a failed state.

After all possible incores have been failed and the power distribution redetermined, then another record to the previous output file is written.

This record contains identifying information for the case run and also the original and inferred powers for each of the incore strings failed. Routine BDEDIT is then called to perform some prelimina.11{ statistical calculations

  • Section Z Pl36 REV 4 DESCRIPTION of the MAIN PROGRAM and SUBROl.ITINES
  • Z.7'. lZ Subroutine BDEDIT (Edi ts #AZ and #1\3)

Subroutine BDEDIT is a post processor to subroutine BDZOIK which calculates the deviations bet.ween the ori12?inal and inferred detector powers for each incore detector BDZOIK failed. The followin12? equations are usedo

. POWNEW(i ,j) - POWOLD(i ,j)

DEV(i,j) = ----- *------

  • 100~ 1=1,45 j=l ,5 POWOLD(i ,j) where:

DEV(i ,j) = relative percent deviation bet.ween measured and inferred power for detector string i, detector j POWNEW(i ,j) = inferred power for detector string i, detector j POWOLD(i ,j) = measured (original) power for detector string i, detector J The average deviation and RMS deviation are also calculated as:

AVE LDEV(i,j)

= ............________

N

  • where:

AVE DEV(i,J)

N

= average inferred detector power deviation

= relative percent deviation bet.ween measured and inferred power for detector string i, detector J

= number of detectors for which inferred powers were calculated RMS =\j

\ ~ DEV(i ,J)z.

-.1.._..,...__ _ _ __

N where:

RMS = root mean square inferred detector power deviation DEV(i,J) =relative percent deviation between measured and inferred power for detector string i, detector J N = number of detectors for which inferred powers were calculated Two edits are then produced. Edit #AZ reports the values of all or the inferred detector powers. These mey be compared with the measured (original) detector powers given in Edit _ #'lZ or the base case. Edit #1\3 reports the inferred to measured detector power deviations as defined above. The average and RMS deviations are also produced

  • Section Z Pl37 REV 4 DESCRIPTION of the MAIN PROGRAM and SUBROlITINES
  • Z.7.lZ Subroutine RECALC The purpose of Suborutine RECALC is to re-solve the full core power distribution usinQ XTG calculated detector powers. No measured detector powers are used. This option is also for use in perfomi~ statistical anal~ses on the PIDAL methodolo~ and is activated ~ input variable IOUT on card #Z. ala~ with subroutine BDZOIK.

RECALC is identical to PIDAL except that fl~ IXPOW, which forces PIDAL to use XTG detector powers is automaticall~ set. RECALC calculates the radial power distributions for the five detector levels and also detemines the fine*mesh axial power distributions based on the XTG detector powers.

RECALC produces Edit #A4 to infom the user that XTG detector powers are bei~ used and then runs ~ the entire PIDAL run sequence, producinQ all desired edits. Upon completion, RECALC writes the orisinal XTG calculated power distribution and the PIDAL distribution based on XTG detector powers to the statistical output file created ~ BDZOIK and BDEDIT. In theo:cy these power distributions should be identical and a post processor is used to determine the ~thesis errors in the XTG based PIDAL power distributiono /'

Section 3 Pl38 REV 4 I i LIST of TABLES

  • Z.O.l - -

Z.O.Z - -

Z.l.Z - -

2.1.15--

Variables read from PIDAL case card im~e input Variables read from Varian Datalogger UNTRANS data file Variables read in from the Boron data file Variables returned from Subroutine GETEXP Z. l.16-- Variables used in Function CO.'\IINT Z.l.ZO-- Variables used in Subroutine RBANK Z.Z.l - - Variables used in Subroutine EXPAND Z.Z.Z - - Variables used in Subroutine EXTRAP Z.Z.3 - - Variables used in Subroutine ERROR Z.3.Z - - Variables used in Subroutine WCALC z.3.3 - - Variables used in Function XPINT Z.3.4 - - Variables used in Subroutine COFCAL Z.3.5 - - Variables used in Function XINT Z.3.6 - - Variables used in Subroutine BXPWR Z.6.13-- Variables used in Subroutine AXLAPL Z.7.8 - - Variables used in Subroutine CALARM Z.7.10-- Variables appearing on the Technical Specification Summa.rv sheet (Edit #51) *

  • /

Section 4 P13~ ~--V 4 LIST of FIGURES

  • 1.1 -

Z.Z.l -

2.4.3a -

Z.4.3b -

Data flow paths and major sections of the PIDAL main program PIDAL and XTG detector and axial node locations 1/4 Core Reflective Sl/Ulffietric Incore Detector Strings 1/4 Core Rotational Sl/Ulffietric Incore Detector Strings Z.4.6a -- 1/4 Core Reflective ~Jadrant Numbering Schemes Z.4.6b - 1/4 Core Rotational (luadrant Numbering Schemes Z.5.1 - Graphical Representation of Equations Defined to Predict U1e Axial Power Distribution in the Core *

  • I

PIPAL. CA5 f'L.A"'T H,q,rJD /rJP .... i-- (OI"' P'-<"T 6'1't

~..l fl'<.\TS t>A ~ ... .., E'ri< 1Z'::>

I I J

61!)\'l.o-..'\ P(l..o(.,tLA..,, ~re T1ur.l tll f.,;>o<J>..,1? t:

0 A'T r'

,:. !.. G. ,1----;"ll CASE" SPEC. I f IC.. l-r.J !><..c.\ (OLL E="C. Tl 0 rJ 1.<~:......-------..1.CA "I A

~---------**-j t Pt\ f>IOl'\L.. ~'-l.J PAil.Ar"\ E TIOit..S ~-- E.

PE (l...f'O Cl... I"\ i'l:l-E.c...*" 1..:i.., ia..1 C.i'\LC 1..1.1... A*n oN..S.

.JC, r) c~ .-, os 0A1A If/

L1!3(lA1?"1' OA--r A

, C.1tu4i...l"rl i LU' i'r..10 PeAt(1"1f> FAc..\Oil..S r:*t-t C.0-'lvf:t't.T Ot,-Ec.To~ St(>N"H-S Tc:>

powe. n...~

  • CAL.C.'-' 1...A,. E f'owe~ 01~"T<t,G ......

f'ri.ot.,<<'\"1

.,.11 E'

'~

s ~t "°"-..)

4=

.,.1 e><V

..i II I./

L-1.. (Oil F- !7..A()1Al..

I l

I I Pa~c;nAf"\ Ste 'T°*~N I.' s-C.AL<.<A\..A"'IE "Tl\ is. F1t-.IE l"IES.H Jt.\1.1 ~ .!.-

P'lh,..E<t. D\.!."Ta.16.,.."TIOnl*

P11:... ~1t.A"" SEc.*u- t:G.

PE.cl.fb~M IE.CH, "'Pe"C", \JEit*F-ICA,.*o"'

ON '"'the c.Ac..cc.cc...A T"/!0 ?O....,l(.SJL lh S. "I"' 4\.1 &~ "\ I 0 N P1Lo(,<t.A,... S:;'.cl'"*u..l f T- E'li>O~ ...'l~

CA1-< .. 1- ATE r<A.el,. ~I) t°ON"la..o\,..ILOO i--------..;;;to:; D A,..,q E:l< ;::>D~&o(~G~. F*t...-e

(-;,frJ'C fl. t4TI! S"u. ,.,,.. "'a. "C E U1 TS, Ou"T  ?....,,. 1N<c:>.i~e F>.t..A ~"'l.S

l

"'" 339

l CONSUMERS ?Gi."ER CC~?J\~Y SHEET_ _ _OF_ __

DATE_ _ _ _ _ __

NUCLEAR ACTIVITIES DEPT *

  • ey REACTOR PHYSICS GROUP Fl~L<ilf  ?.Lf.:5'\ PLANT - PALISADES SUBJECT Y1.1 {on.£ f2.£<="L..fcTtv~ ~Yl'1rr~TRIL ~,..Jco(Z.. E. $\RINDS 2o L.ocl'\,.10....is 1...t.-.::1,~s-n\.'-C""'t::"'*~t:> (::-r'/,,.)

'-1-Wl'\"C 5 F- T""

4 2-WA't SfTS M Q v x "1

x ~ "1 r><

I 2. .::l.

z. -:r '2.. \ 2.. "Z. 2'-/ 2..9 2. :!:.

l3 "Z. "'

z.s x xx x

/0 I°?> l'f IS I Cf IS Zo 1+

I 'i 2. C\ '30 11-I '1 3~

'" I .S 31 l"I 3.3>

2.o ..

/ft:,

xxx "2 '"{

l3 l.,t x x x 'L..C..

/'D

\

2.S 11 q

35'"

3Co

?.o

~

Id-.

~'

?.'-!

3:i_

s"'
  • x 5'1 38

?. ')

37-3r..

tto

(.,

1 x 3a

't I x )(

139 'fl s 'f3

'1;;.. .

L/

2.0 x xx

'ts .Y(,

3 :l 2.. 2.. '13

'l'f

'tt:t .s

)<

C) 1 '1 s

CONSUMERS ?Qi,"ER CC:-1?J\~Y SHEET_ _ _OF_ __

NUCLEAR ACTIVI~IES DEPT. DATE REACTOR PHYSICS GROUP BY_ _ _ _ _ _ __

PLANT - PALISADES SUBJECT Y4 {ORE \2-c\A"""\lo~l'\1- ~'iMMlt.T\'-1(.. J.r-i(c)\-(...E: S\\?..1N(~.S

'?l L-<H.A"'I t.:>N '-'"'31"3$'t(tl.(,...,~'TE~ !'1/%)

3 '1- '"-'A"t' sc: TS I.{ 2. - 1.....1,..'T S£T5 I

2 xxx~ x /,,

2..6 B

1.

~\

d-b

/

/0 I<\

1'\

II IS

.=, I x *C>< x 13 19 I'>

3 I 1-30

'f3 x

/

x "2.'-f z.<.

')<

1-=T I~ Z.I

.s 1'1

?. !.

33. 3g 13
2. s-3;1 ZS 12 ~

~x L5" 2.(o 21- ~o Z..'i /0 /b q 31- ~

l I

.*. 35"

'X *x 3x

.3~

)'.2 3 '\  :?C.. n* 3'i

~ '1 "L 'i I ro

  • x x

', 1-3'\ 'fo 'f2. 10..

'1 ~*o Id-

~y

'f'1 '15 'II. 'Ir

2.~

x .:2.

'f'I 3'1

'X

~o t.f s

~x

  • Ou"" .D fl. A ,...J \ Nu."' f:> E-i7.-! :-' b - Y'1 PALISADES PLANT-REACTOR CORE PLAN ca \<-E.. R:E. (" £.....t'o c. n'-' 1~

A E G H I J K L M N p Q R T v x z I I

--r~~-r--,:::::~L~:;=::{2J:::,::::;=::.:3,3sJ:~:::::..:~~F-=:;:=~V:...:::;-~--~3 I 2 4

5

~

8 8 9 9 10 10 11 11 12+...:Lf:~~:::;::~~~~~~~~:;:~~~~~~a~~~::;=~=G~J:::~=t---i-12

  • <1>3 .----.......__~ . . .__.... __......__..... ---- _..........._

14 15 16 .

13 1~

15 16 17 17 18 ~~~~i;=-::::;--.-18 19 19 20 20 21 21 22 22 23 1---___,,_________ 23 E G KL M R S T V z Ex - Core Nuclear Detector I@ I. In - Core Detector with ID number (10 detectors)

Control Rod Group Al I in - core instruments contain 5 rhodium detectors and

  • N Ou..A D\-Z.ArJ I d\J.{M,~{C..1N(, ~'/Lt Lo(Z..~

PALISADES PLANT-REACTOR CORE PLAN

\2-r:::.tA \ ic::..~ IT L.

~I A 8\t D E G H I J K L M N P Q R T v f(])

1--~_,_~~~...,-~----.,....--1 1

--;.~~...;..-~~~~~u--.;;;;;;y=.=uu-=r~~~=-;;y;=~~2.F~=..;;;~~~~~~-.-~~~-3 I 2 4

5

~

8 8 9 9 10 10 11 l1 12+-~~ ~;;;;;p;;;~av;;..;;;;;~-..o6~~~H.r;..;;;;;;;;=~ *fa~~~ .JE~~l.C=t-r 12 13 13

<D,4 1<f.>

15 15 16 16 17 17 18 """"":""'-=::::!:I. IF-'=F~'"w="T=-"""'1 v--~~ .5J"'"~=ua.J=-=~~ tJ~'T=-~ J::::...:~:-- 18 19 19 20 20 21 21 22 22 7

I E KL R S T V WX Ex - Core Nuclear Detector I@ I In - Core Detector with ID number r (10 detectors)

Control Rod Group Al I in - core instruments contain 5 rhodium detectors and

n= H

[OyA"'\ 10...l

\""'

A,. ... '-'E..

Fu.EL H.

n. ~ (., *o"1 i

I i

~

I J_ I I

h-..

h:.-~

0

+ ~

...L F Q ...._ t.1 < *o r-J l. '). I h.

Section 5 Pl40 REV 4 LIST of REFERENCES

  • l ~~

Z --

P*PID*8'JDDZ, Calculation of Statistical Uncertainties Associated with the Full Core PIDAL Methodolom1, Consumers Power Company, Reactor Engineering Department.

Operational Reactor Physics Section Procedures, Consumers Power Company, Reactor Engineering Department, Procedure ORP-P-01 3 -- Palisades Prim~ Datalogger Manual, Part Z 4 -- INCA Users Manual, Nuclear Power Department, Combustion Engineering version 1.0 5 -- Operational Reactor Physics Section Procedures, Consumers Power Company, Reactor Engineering Department, Procedure ORP-T-0'}

6 -- Data Processi~ Standards Manual, Consumers Power Company, Information Systems Department 7 -- Palisades Technical Specifications, Consumers Power Compan~

8 -- INCA-X'I'G .Version 3A Users Manual, Exxon Nuclear/CPCo 10/18/84

'} - - IBM System 360 Scientific Subroutine Pack~e Users Manual, 1'}6'}

10 - P*C*03*7803ZO Cycle 3 Incore Instrumention Data Processor Constants 11 - CALCULATIONAL VERIFICATION OF THE COMBUSTION ENGINEERING FUU. CORE INSTRUMENTATION ANALYSIS SYSTEM CECOR, W.B. TERNSY et al, Combustion Engineering Inc, presented at International Conference On World Nuclear Power, Washington D.C., November l'J, 1'}76.

lZ - XTGPWR UJUN88 Users Manual, Advanced Nuclear Fuels Corporation ..

  • /'

l Section 6 p l'<f REV 4 GLOSSARY

  • INCA - An incore analysis program developed by Combustion Engineering to determine (measure) the power distribution within the Palisades reactor assuming one-eighth or octant core ~et~.

PIDAL - An incore analysis program developed by Consumers Power Company to determine (measure) the power distribution within the Palisades on a full core basis.

XTG - A group and one-half nodal diffusion theo~ code developed by Advanced Nuclear Fuels Corporation (formerly Exxon Nuclear) for general predictive modeling of pressurized water reactors.

CECOR - An incore analysis program developed by Combustion Engineering to determine (measure) the power distribution within a pressurized water reactor on a full core basis.

PIP - Primary Information Processor. Sometimes called Varian datalogger or datalogger. The primary plant computer installed at Palisades which monitors the incore detector high alarm limits and various other inputs. This machine also generates the incore detector sii:snal and sensitivity dumps lobich are input to INCA or PIDAL.

Data dump - An output of incore detector signals and sensi ti vi ties put out by the PIP for INCA or PIDAL

  • BOC - Beginning of Cycle. A new fuel loading or coreo BOL - Beginning of Life. When an instrument or fuel assembly is fresh of new. Unexposed in the reactor.

EOC - End of Cycle. The end point for ~ fuel cycle, prior to offload.

EOL - End of Life. When an instrument or fuel assembly is spent or ready for discharge.

LHGR - Linear heat generation rate, usually in kilo-watts per footo ADC - Analog to digital converter. ADC counts refer to analoi:s counts which mey be converted to an internal, or dii:sital, computer variable.

APL - Allowable power level. See Palisades Tech Spec 3.11.Z.

non-nearest- For adjustments to \rl values, these could be any control rod not immediately shadowing an incore detector. See pages 63,64 of this report *

  • /