PolarisA.rst.txt 48.6 KB
Newer Older
Batson Iii's avatar
Batson Iii committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
.. _3-2a:

SCALE 6.3 Polaris Input Format
==============================

For the release of SCALE 6.2.3, several new input cards were implemented
into Polaris to model boiling water reactor (BWR) geometries and
neutron/gamma detectors, which requires a gamma transport calculation.
Moreover, improvements to existing input cards were implemented, along
with the ability to specify time-dependent state properties and the
ability to specify one or more depletion histories. This appendix
describes the new and modified input cards that will be included in the
Polaris input format for SCALE 6.3, which are accessible as part of the
release of SCALE 6.2.3.

To maximize backwards compatibility for input files developed with the
original SCALE 6.2.0 release, the new and modified input cards are not
available *by default* with SCALE 6.2.3. The new and modified input
cards are activated if the input file begins with =polaris_6.3 rather
than =polaris. The suffix “_6.3” is an indicator to the Polaris input
processor to use the SCALE 6.3 input format. For the future release of
SCALE 6.3, the original input cards supported in the SCALE 6.2 input
format will be available if the input file begins with =polaris_6.2.

The new input cards to model BWR geometries include:

-  **cross** – define the interior water cross geometry of SVEA assembly
   designs;

-  **dxmap** (or **dymap**) – define displacement maps that indicate
   that translation of the pin center in the x- (or y-) direction;

-  **control <BLADE>** - define the control blade geometry;

-  **mesh** – define advanced spatial meshing options for different
   materials; and

-  **option <GEOM>** – define geometry tolerances, advance meshing
   options, and plotting options.

The modified input cards to model BWR geometries include:

-  **pin** – define circular and square-based geometry zones, as well as
   arbitrarily sized pins, e.g. size=1.5 water rod in some 9x9 BWR
   lattice designs; and

-  **box** – define channel box geometry with arbitrary number of zones
   and cutout regions.

For neutron/gamma detector modeling, there is a new **detector** card
and an addition to the existing **option <FG>** card to enable output to
the few-group cross section output (T16) file.

To control the gamma calculation, an **option <GAMMA>** has been added.

The new input cards for time-dependent modeling include:

-  **history** – define one or more operating histories in the input
   file; and

-  **bui** (or **ti**) – define restart cumulative burnup (or time)
   values.

The modified input cards for time-dependent modeling include:

-  **state** – define one or more time-independent or time-dependent
   state properties;

-  **bu** (or **t**) – define cumulative burnup (or time) values; and

-  **dbu** (or **dt**) – define incremental burnup (or time) values.

Example input files are included in the ${SCALE}/regression/input
directory:

-  polaris.6.3.atrium9x9.inp and polaris.6.3.atrium10x10.inp –
   prototypic ATRIUM models;

-  polaris.6.3.blade1.inp and polaris.6.3.blade2.inp – control <BLADE>
   examples;

-  polaris.6.3.ge7x7.inp through polaris.6.3.ge10x10.inp – prototypic GE
   models;

-  polaris.6.3.svea100.inp and polaris.6.3.svea64.inp – prototypic SVEA
   models; and

-  polarisHistory.inp: history example.

.. _3-2a-1:

box (Version 6.3) – channel box geometry
----------------------------------------

**box** thick=\ *Real* [rad=*Real*] [hspan=*Real*] [Mbox=MNAME]
[cothick=*Real*] [cobtm=*Real*] [cotop=*Real*]

  | [: t\ :sub:`2` t\ :sub:`3` … t\ :sub:`i` … t\ :sub:`N`
  | [: a\ :sub:`2` a\ :sub:`3` … a\ :sub:`i` … a\ :sub:`N`
  | [: b\ :sub:`2` b\ :sub:`3` … b\ :sub:`i` … b\ :sub:`N`
  | [: M\ :sub:`2` M\ :sub:`3` … M\ :sub:`i` … M\ :sub:`N`
  | [: r\ :sub:`2` r\ :sub:`3` … r\ :sub:`i` … r\ :sub:`N+1` ]]]]]

.. list-table::
  :align: center

  * - .. image:: figs/PolarisA/3-2a-1-tab.svg
        :align: center
        :width: 800

Examples:

.. highlight:: none

::

  % simple
  box 0.2

  % rounded corner, rad 0.9
  box 0.2 0.9

  % rounded corner and user-defined inner span
  box 0.2 0.9 6.7

  % two zones
  box 0.2 0.9 6.7
    : 0.2
    : 4.0
    : 4.3

Comments:

The **box** specifies the channel box geometry that surrounds the
**pinmap**. The three primary dimensions of the channel box are the
thickness (thick), the inner corner radius (rad), and the half inner
span (hspan). Several additional dimensions for both **box** and
**cross** are defined with respect to the channel box center. The
channel box center is not to be confused with the lattice center: the
former is the centroid of the inner channel box square boundary and the
latter will depend on the wide and narrow gap dimensions provided on the
**hgap** card. By default, the half inner span is equal to the half pin
pitch multiplied by the number of pins on each side of the assembly (see
npins and ppitch on the **geometry<ASSM>** card). If a **cross** card is
applied, the default half inner span is increased by the half width of
the interior cross buffer region (see hwidth on the **cross** card).

Additional channel box zones can be specified on the **box** card. The
additional zones are useful for defining thick corner regions of the
channel box. Each additional zone must have a user-defined thickness
(t:sub:`i`, i = 2 to N). Note that the starting index begins at “2”
rather than “1” because the zone 1 thickness has already been defined by
the “thick” input field.

“Cutout regions” may be defined in which a portion of the channel box
zone is replaced by the corresponding **hgap** material along the
horizontal and vertical centerlines of the channel box. The cutout
region is defined by the distance from the channel box centerline to the
bottom additional channel box zone (a:sub:`i`) and the top of the
channel box zone (b:sub:`i`). The values of a\ :sub:`i` and b\ :sub:`i`
determine the size of trapezoidal cutout region centered along each face
of the channel box. The b\ :sub:`i` value must be greater than or equal
to the a\ :sub:`i` value. The a\ :sub:`i` value must be greater than or
equal to the previous zone’s b\ :sub:`i` value, i.e., b\ :sub:`i-1`. By
default, a\ :sub:`2` and b\ :sub:`2` are zero. If only M cutout regions
are specified for N additional zones, i.e., M < N, both a\ :sub:`i` and
b\ :sub:`i` is set to b\ :sub:`M` for i = M+1 to N.

Additional zones can also have a different inner corner radius
(r:sub:`2` … r\ :sub:`N`). The outer corner radius of the last zone may
also be specified (r:sub:`N+1`). By default, r\ :sub:`2` is zero if rad
is zero. If rad is greater than zero, the default value of r\ :sub:`2`
is rad+thick. Similar rules apply for determining the default corner
radii for additional zones if they are omitted in the input
specification.

Additional zones can also have a different material (M:sub:`i`). By
default, M\ :sub:`2` is M\ :sub:`box`. If additional materials are
omitted in the input, the default value of M\ :sub:`i` is M\ :sub:`i-1`
for i = 3 to N.

The spatial mesh along each face of the channel box will be determined
by the nf values specified on the hgap card.

The four examples listed above are displayed in :numref:`fig3-2a-1`. For
additional examples, see the polaris.6.3 regression input files
described at the beginning of :ref:`3-2a`.

See also:

**geometry<ASSM>, hgap, cross (Version 6.3)**

.. _fig3-2a-1:
.. figure:: figs/PolarisA/fig1.png
  :align: center
  :width: 400

  Box card examples.

.. _3-2a-2:

pin (Version 6.3) – pincell comprised of nested geometry zones of variable shape
--------------------------------------------------------------------------------

| **pin** PINID [size=*Real*]
  | : r\ :sub:`1` r\ :sub:`2` … r\ :sub:`i` … r\ :sub:`N`
  | : M\ :sub:`1` M\ :sub:`2` … M\ :sub:`i` … M\ :sub:`N` [M\ :sub:`out`]
  | [: S\ :sub:`1` S\ :sub:`2` … S\ :sub:`i` … S\ :sub:`N`]

.. list-table::
  :align: center

  * - .. image:: figs/PolarisA/3-2a-2-tab.svg
        :align: center
        :width: 700

Examples:

::

  %standard fuel pin
  pin 1 : 0.4096 0.418 0.475 : FUEL.1 GAP.1 CLAD.1

  %2x2 water rod
  pin W 2.0 : 1.6   1.7 : MOD.1 TUBE.1

  %3x3 square water box (ATRIUM)
  pin W 3.0 : 1.68 1.75 : MOD.1 TUBE.1 : SQR SQR

  %noninteger size water rod (GE9x9)
  pin W 1.76 : 1.16 1.259 : MOD.1 TUBE.1 COOL.2

Comments:

The **pin** card is one of the basic building blocks of the assembly
model. **pin** and **slab** are the only geometry components which
allows an integer (*Int*) identifier as well as a *Word*—all other
geometric identifiers use *Word*. Note that the materials are required,
except for the last M\ :sub:`out`, which can be used to overwrite the
material given by a **channel** for the outermost region in the pincell.
The **pin** geometry is constructed from the inside out, using either
circle zones (defined by the radius) or square zones (defined by the
half-width, and optional corner radius). Different examples of pin
geometries are displayed in :numref:`fig3-2a-2`. All meshing options for the
**pin** are provided through the **mesh** card.

If the pin size is an integer value, the pin consumes a size×size
subarray in the **pinmap** (e.g. 1×1, 2×2, 3×3, etc). If the pin size is
noninteger, the pin consumes a *ceil*\ (size)×*ceil*\ (size) subarray in
the **pinmap**. *ceil(x)* represents the ceiling function to round the
value of x to the nearest integer greater than or equal to x. For size
equal to 1.3, each instance of the pin will consume a 2×2 subarray in
the **pinmap**. Each instance of a noninteger-sized pin must share a
location with another instance of a noninteger-sized pin, but not
necessarily the same pin. The shared location must be set to “_” in the
**pinmap**. The identification of the shared location is necessary to
determine the center of each pin. The pin center is at a distance of
size*half pitch*sqrt(2) from the opposite corner of the shared location,
along the diagonal of the pin boundary. An example of an integer-sized
pins is displayed in :numref:`fig3-2a-2`. An example of noninteger-sized pins
is displayed in :numref:`fig3-2a-3`.


.. _fig3-2a-2:
.. figure:: figs/PolarisA/fig2.png
  :align: center
  :width: 400

  Pin examples with different shape geometries.

.. _fig3-2a-3:
.. figure:: figs/PolarisA/fig3.png
  :align: center
  :width: 400

  Pin examples with noninteger pin size.

For additional examples, see the polaris.6.3 regression input files
described at the beginning of this section.

See also:

**slab, pinmap**, **channel, mesh (Version 6.3)**

.. _3-2a-3:

mesh (Version 6.3) – advanced material dependent meshing options
----------------------------------------------------------------

| **mesh** MSPEC : [m=*Real*] [nx=*Int*] [ny=*Int*] [mx=*Real*]
  [my=*Real*]
  | [nr=*Int*] [ns=*Int*] [mr=*Real*] [ms=*Real*]
  | [nf=*Int*] [nd=*Int*] [mf=*Real*] [md=*Real*]

.. list-table::
  :align: center

  * - .. image:: figs/PolarisA/3-2a-3-tab.svg
        :align: center
        :width: 800

Examples:

::

  mesh COOL : nr=3 ns=4 nx=2 ny=2 %coolant mesh: 3 ring, 4 sectors, 2 in x and y

  mesh MOD.1 : nf=2 nd=4          %mesh used for wide gap (MOD.1): nf=2 nd=4

  mesh MOD.2 : nf=2 nd=3          %mesh used for narrow gap (MOD.2): nf=2 nd=3

  mesh FUEL : mr=2.0              %double the fuel radial mesh

  mesh FUEL.2 : m=3.0             %triple all mesh values for FUEL.2

  mesh CLAD : ms=0.5              %coarsen the clad sector mesh by a factor of 1/2.

Comments:

Polaris supports three different mesh types: 1) cylindrical mesh for CIR
shapes in the pin card, 2) Cartesian mesh for SQR shapes in the pin
card, and 3) a special Cartesian mesh for the region external to the
pinmap region. As shown in the examples above, the mesh card is used to
define, refine, or coarsen the mesh parameters for one or more of the
mesh types associated with a given material class or material name. The
default values for mesh parameters are defined through the option<GEOM>
card and the system card. The default values on the option<GEOM> card
are nr=1, ns=1, nx=1, ny=1, nf=1, nd=1, and MeshMult=1.0. The “MeshMult”
multiplier from the option<GEOM> is a global mesh multiplier applied in
conjunction with any material-specific multiplier (see option<GEOM>
example for details). If system BWR or system PWR is applied, new
default values include nf=2, ns=8, and nr=2 (only for the channel
material class). If the final mesh value is noninteger, Polaris rounds
down to determine the applied value.

See also: pin, system, option<GEOM>

.. _3-2a-4:

cross (Version 6.3) – cross geometry
------------------------------------

| **cross** hwidth=\ *Real* lthick=\ *Real*
  | [Mcross=*MNAME*] [row=*Int*] [Min=*MNAME*] [ld=*Int*] [Mout=*MNAME*]

  | [ : x\ :sub:`1` x\ :sub:`2` … x\ :sub:`N`]

  | [ : y\ :sub:`1` y\ :sub:`2` … y\ :sub:`N`]

  | [ : yin\ :sub:`1` yin\ :sub:`2` … yin\ :sub:`N`]

  | [ : nx\ :sub:`1` nx\ :sub:`2` … nx\ :sub:`N-1`]

  | [ : ny\ :sub:`1` ny\ :sub:`2` … ny\ :sub:`N-1`]

.. list-table::
  :align: center

  * - .. image:: figs/PolarisA/3-2a-4-tab.svg
        :align: center
        :width: 600

Comments:

The cross card performs two tasks. First, it subdivides the pinmap into
four subarrays, optionally adding a horizontal and vertical gap between
the subarrays. The row parameter is uses to subdivide the pinmap. If the
pinmap is 10×10 and row=5, each of the four subarrays is 5×5. If the
pinmap is 10×10 and row=4, the northwest subarray is 4×4, the northeast
subarray is 4×6, the southwest subarray is 6×4, and the southeast
subarray is 6×6. The hwidth parameter controls the half-spacing of the
horizontal and vertical gap in between the subarrays. The hwidth
parameter must be ≥ 0.0 and if hwidth is > 0.0, the gap is filled with
material M\ :sub:`out` (default is COOL.2 with system BWR).

The second task is the insertion of the cross structure into the lattice
geometry. The process is described with reference to the example in Fig.
:numref:`fig3-2a-4`. In the example, the **pinmap** is 9×9 and row=3, hwidth=1.5,
and hspan=10.5. The top left plot contains the four following lines:

1. the line in the center of the vertical cross gap,

2. the line in the center of the horizontal cross gap,

3. the diagonal line from the northwest (NW) channel box corner to the
   southeast (SE) corner, and

4. the diagonal line, perpendicular to line 3, passing through the
   intersection of line 1 and line 2.

These four lines intersect and form 8 separate regions, i.e., octants,
within the channel box interior. The intersection point, i.e., cross
center, is not necessarily equal to the box center as shown in this
example. In the top left plot, the red triangle represents the WNW
octant. In the bottom left plot, the red triangle represents the SSE
octant.

.. _fig3-2a-4:
.. figure:: figs/PolarisA/fig4.png
  :align: center
  :width: 500

  Construction of the BWR cross geometry (full example shown later).

The cross structure is defined be a series of vertices (x\ :sub:`i`,
y\ :sub:`i`). Shown as yellow points in the top left plot, the **cross**
vertices are defined based on an origin displayed as the red point,
which is the intersection of the inner west edge of the channel box and
the horizontal line in that passes through the cross center.

The top plots demonstrate how Polaris inserts a section of the cross
into the WNW octant. In the top left plot, the blue polygon is
constructed based on the first two vertices defined on the **cross**
card: (0.0,1.0) and (4.0,0.5). The intersection of the blue polygon and
red polygon is inserted into the lattice and filled with cross interior
material (M\ :sub:`in`). The liner is then inserted **above** the blue
polygon, padded by the liner thickness (lthick), and clipped by WNW red
polygon if needed.

Similarly, the bottom plots demonstrate insertion into the SSE octant.
For SSE insertions, the origin and the **cross** vertices are rotated 90
degrees about the cross center. The blue polygon is constructed from the
second and third vertices on the **cross** card: (4.0,0.5) and (11,0.5).
The intersection of the blue polygon and red polygon is inserted into
the lattice and filled with cross interior material (M\ :sub:`in`). The
liner is then inserted **above** the blue polygon, padded by the liner
thickness (lthick), and clipped by SSE red polygon if needed.

For each consecutive set of **cross** vertices, Polaris inserts a
polygonal region into each of the 8 octants. The **cross** vertices are
entered in the input as an x-values list followed by a y-values list of
the same length. The coordinate system of the x- and y- lists is
displayed in the top left plot of :numref:`fig3-2a-4`. The coordinate system is
transformed based on the following rules for each octant:

-  WNW, ENE: no transform,

-  NNW, SSW: reflected across the diagonal line from NW to SE channel
   box corners,

-  NNE, SSE: rotated 90 degrees about the cross center, and

-  ESE, WSW: reflected across the line in the center of the horizontal
   cross gap.

The cross liner is inserted above the cross vertex values. The liner has
a uniform thickness (lthick) and uniform material (M\ :sub:`cross`). The
uniform liner thickness is constructed with a miter joint at each cross
vertex as shown in the following diagram:

.. image:: figs/PolarisA/diagram1.png
  :align: center
  :width: 300


After the set of y-values on the **cross** card, an optional list of
interior y-values can be specified. The length of the interior y-values
list must be equal to the length of the x- and y- lists. The optional
interior y-values list is used to split the polygons into two material
regions as shown in the following diagram:

.. image:: figs/PolarisA/diagram2.png
  :align: center
  :width: 300

For the left-hand polygon, y\ :sub:`in,i-1` is the same as
y\ :sub:`i-1`, but y\ :sub:`in,i` is less than y\ :sub:`i`. In this
scenario, the trapezoid region is filled with M\ :sub:`in`, and the
triangular region is filled with M\ :sub:`cross`. Similarly for the
right-hand polygon, the lower trapezoid is filled with M\ :sub:`in` and
the upper trapezoid is filled with M\ :sub:`cross`. Note that the
uniform liner above the y-values is not shown for simplicity.

The interior y-list values can be specified in one of two ways. First, a
positive value may be entered that is greater than or equal to zero and
less than or equal to the corresponding y-value. Second, a negative
value may be entered that represents the relative distance of the
interior y-value below the corresponding y-value. Note the Polaris input
processor interprets “-0” different than “0”. “-0” implies that the
internal y-value is the same as the y-value. “0” implies that the
internal y-value is zero. If the interior y-list is omitted, the default
for all internal y-values is “-0”, i.e., the polygon regions defined are
completely filled with M\ :sub:`in`.

In addition to the interior y-values list, two additional lists can be
used to refine the spatial mesh in the x- and y- directions. The list of
nx- and ny- values subdivide the polygon regions along the x- and y-
directions respectively. Both lists must have one less entry than the
x-, y-, and y\ :sub:`in`- lists. If omitted, the default values for both
the nx- and ny- lists are 1, i.e., no additional spatial refinement is
applied to the polygon regions. For refinement in the y-direction, only
the M\ :sub:`in` material is refined. The following diagram shows nx=2
refinement for the left polygon and ny=2 refinement for the right
polygon:

.. image:: figs/PolarisA/diagram3.png
  :align: center
  :width: 300


The full cross example from :numref:`fig3-2a-4` is displayed in the top left
plot of :numref:`fig3-2a-5` The bottom plot shows a centered cross structure
with a diamond water box and empty pins surrounding the water box.

For additional examples, see the polaris.6.3 regression input files
described at the beginning of this section.

See also:

**box (Version 6.3), system BWR, pinmap**

.. _fig3-2a-5:
.. figure:: figs/PolarisA/fig5.png
  :align: center
  :width: 500

  Additional cross examples.

.. _3-2a-5:

dxmap and dymap (Version 6.3) – pin-by-pin displacement maps
------------------------------------------------------------

| **dxmap** d\ :sub:`1` d\ :sub:`2` … d\ :sub:`i` … d\ :sub:`N`
| **dymap** d\ :sub:`1` d\ :sub:`2` … d\ :sub:`i` … d\ :sub:`N`

+-----------------+-----------------+-----------------+-----------------+
| **param**       | **type**        | **details**     | **default**     |
+-----------------+-----------------+-----------------+-----------------+
| d\ :sub:`i`     | *Real*          | pin center      | 0.0             |
|                 |                 | displacement    |                 |
|                 |                 | value in the x  |                 |
|                 |                 | or y direction  |                 |
|                 |                 | (cm)            |                 |
+-----------------+-----------------+-----------------+-----------------+

Comments:

The dxmap and dymap cards displace pins from their natural position in
the geometry (see comments for the pin card). If displacement maps are
required, both the dxmap and dymap must be specified in the input and
they must have the same length. However, the length of the displacement
maps does not have to equal of length of the pinmap if the displacement
maps have reduced symmetry. For integer-sized pins greater than 1, the
displacement value should be entered in the northwest corner element of
the size×size subarray. For noninteger-sized pins, the displacement
value should be in the corner element opposite of shared corner
location. Note the following symmetry restrictions for the displacement
maps:

-  dy\ :sub:`i` value must be zero on a horizontal symmetry line for an
   odd×odd pinmap,

-  dx\ :sub:`i` value must be zero on a vertical symmetry line for an
   odd×odd pinmap, and

-  dx\ :sub:`i` must equal dy\ :sub:`i` for an element on a diagonal
   symmetry line.

Examples:

::

  dxmap
    0.0  0.0  0.0  0.0  0.0
    0.0  0.2  0.0  0.0 -0.2
    0.0  0.0  0.0  0.0  0.0
    0.0  0.0  0.0  0.0  0.0
    0.0  0.0  0.0  0.0  0.0
  dymap
    0.0  0.0  0.0  0.0  0.0
    0.0  0.0  0.0  0.0  0.0
    0.0  0.0  0.0  0.0  0.0
    0.0  0.2  0.0  0.0  0.0
    0.0  0.0  0.0 -0.1  0.0

.. image:: figs/PolarisA/diagram4.png
  :align: center
  :width: 300

See also:

**pinmap**

.. _3-2a-6:

control<BLADE> (Version 6.3) – BWR control blade
------------------------------------------------

| **control** INAME : BLADE hwgthck=\ *Real* sththck=\ *Real* cslnth=\ *Real* [sthmat=*MNAME*] [csmat=*MNAME*] [hcsthck=*Real*] [wgcrv=*Real*]
| : ID\ :sub:`1` ID\ :sub:`2` … ID\ :sub:`N`
| : L\ :sub:`1` L\ :sub:`2` ... L\ :sub:`N`
| [: N\ :sub:`1` N\ :sub:`2` … N\ :sub:`N`]

.. list-table::
  :align: center

  * - .. image:: figs/PolarisA/3-2a-6-tab.svg
        :width: 700

Comments:

The **blade** card defines a control blade geometry. The control blade
identifier (INAME) can be used to insert the control blade using
**state** or **add** statements to define histories or branches
respectively. INAME=yes inserts the control blade into the northwest
corner of the lattice.

The control blade geometry is described with reference to the blade wing
on the northern edge of the lattice in :numref:`fig3-2a-6`. The blade wing on
the west edge is a reflection of the northern edge wing along the
diagonal symmetry line that extends from the northwest corner to the
southeast corner of the lattice.

The two primary regions of the blade are the central support and the
active blade wing. The central support has a length (cslnth), half width
(hcsthck), and material (csmat). The central support half width is the
vertical distance between the north face of the lattice and the south
boundary of the central support. The central support length is the
horizontal distance from west face of the lattice to the east boundary
of the central support. See :numref:`fig3-2a-6` for details.

The active portion of the blade wing begins at the east boundary of the
central support. The active portion has a half width (hwgthck), sheath
thickness (sththck), sheath material (sthmat), and wing tip radius
(wgcrv). The half width is the vertical distance between the north face
of the lattice and the southern boundary of the active blade wing,
including the sheath. The wing tip radius can be any nonnegative number.
If the radius is zero, the wing tip is a straight edge.

The active portion of the blade wing is subdivided into sections. Each
section has a length (L\ :sub:`i`), and identifier associated with a pin
or slab (ID\ :sub:`i`), and the number of pins or slabs for each section
(N\ :sub:`i`). The list of section lengths and section identifiers is
required and must have consistent list lengths. The final list for
number of pin/slabs per section is optional. If omitted, the default
number of pin or slabs per section is one.

.. _fig3-2a-6:
.. figure:: figs/PolarisA/fig6.png
  :align: center
  :width: 500

  Control blade example.

If there is only one **pin** in a pin section, the pin is placed in the
section center. If there are multiple pins, the first and last pin are
positioned flush against the west and east section boundary
respectively, and the interior pins are uniformly spaced between the two
edge pins. Slab sections are built from the blade centerline in the
vertical direction towards the interior sheath boundary. Each slab zone
has width equal to the section length. Each slab zone can be subdivided
in the vertical direction by the zone nx parameter on the **slab** card.
The slab zone can be subdivided in the horizontal direction by the
product of the zone ny parameter and the number of slabs in the blade
wing section.

The blade is further subdivided by the **mesh** nf/nd settings for
**hgap** material in the north and west bypass region, typically MOD.1
for models that include **system BWR.**

See also: pin (Version 6.3), slab, mesh (Version 6.3), system BWR

.. _3-2a-7:

option<GEOM> (Version 6.3) – geometry options
---------------------------------------------

**opt** GEOM [key\ :sub:`1`\ =val\ :sub:`1` key\ :sub:`2`\ =val\ :sub:`2`
… key\ :sub:`i`\ =val\ :sub:`i` … key\ :sub:`N`\ =val\ :sub:`N`]

.. list-table::
  :align: center

  * - .. image:: figs/PolarisA/3-2a-7-tab.svg
        :width: 800

Examples:

::

  % Make the png file smaller
  opt GEOM NumPlotRays=1000

  % Double the mesh everywhere
  opt GEOM MeshMult=2.0

  % Default the ring mesh to 3
  opt Geom NumMeshRings=3

**See also: mesh (Version 6.3)**

.. _3-2a-8:

bu (Version 6.3) – initiate calculation with cumulative burnups
---------------------------------------------------------------

| **bu** [b\ :sub:`1` b\ :sub:`2` … b\ :sub:`i` … b\ :sub:`N`]
| [: units=\ *GWD/MTIHM*\ \|\ *MWD/MTIHM*]

+-------------+-------------+--------------+-------------+
| **param**   | **Type**    | **name**     | **default** |
+-------------+-------------+--------------+-------------+
| b\ :sub:`i` | *Real*      | list of      | 0           |
|             |             |              |             |
|             |             | burnups      |             |
+-------------+-------------+--------------+-------------+
| units       | GWD/MTIHM\| | burnup units | GWD/MTIHM   |
|             |             |              |             |
|             | MWD/MTIHM   |              |             |
+-------------+-------------+--------------+-------------+

Examples:

::

  % simple depletion case with constant power and absolute/cumulative burnups
  power 40
  bu     5 10 15 20 30 40 50 60 80

  % using MWd/MTIHM units with variable power
  % 40 W/gIHM for 05000 MWD/MTIHM, then 30 W/gIHM for 500010000 MWD/MTIHM
  power  40    30
  bu    5000 10000 MWD/MTIHM

  % combine burnup and time cards
  % 20 W/gIHM for 05 then 510 GWD/MTIHM steps, then
  % 40 W/gIHM for a 5-day step then 30 W/gIHM for a 5-day step
  power 20
  bu     5 10 GWD/MTIHM
  power 40 30
  dt     5  5 DAYS

Comments:

The **bu** card initiates a calculation for a given sequence of
cumulative/absolute burnups. A burnup or time card usually follows a
**power** card, the two effectively specifying the power history. If
multiple burnups are given, then the **power** card must have either a
single power or a list of powers the same size as the list times. A
value of 0 is implicit at the beginning of the first burnup list.
Multiple burnup/time cards may be specified in an input. This can be
convenient for switching units or changing from burnup-based to
time-based depletion. Internal automatic substeps are always in effect
unless modified with the **option<DEPL>** card.

See also:

**t, dt, ti, bui, dbu, power, option<DEPL>, branch, deplete**

.. _3-2a-9:

bui (Version 6.3) – initiate calculation with cumulative burnups (with restart)
-------------------------------------------------------------------------------

| **bui** [b\ :sub:`1` b\ :sub:`2` … b\ :sub:`i` … b\ :sub:`N`]
| [: units=\ *GWD/MTIHM*\ \|\ *MWD/MTIHM*]

+-------------+-------------+--------------+-------------+
| **param**   | **Type**    | **name**     | **default** |
+-------------+-------------+--------------+-------------+
| b\ :sub:`i` | *Real*      | list of      | 0           |
|             |             |              |             |
|             |             | burnups      |             |
+-------------+-------------+--------------+-------------+
| units       | GWD/MTIHM\| | burnup units | GWD/MTIHM   |
|             |             |              |             |
|             | MWD/MTIHM   |              |             |
+-------------+-------------+--------------+-------------+

Examples:

::

  power 30
  bui    5 10   %equivalent to: bu 5 10

  power 40
  bui    5 10   %equivalent to: bu 15 20

Comments:

The **bui** card initiates a calculation for a given sequence of
cumulative burnups. If only one burnup list is provided, the **bui**
card is identical to the **bu** card. For any subsequent burnup list,
the **bui** card specifies cumulative burnups that restart at zero at
the beginning of each list (see example above).

See also:

**t, dt, ti, bu, dbu, power, option<DEPL>, branch, deplete**

.. _3-2a-10:

dbu (Version 6.3) – initiate calculation with incremental burnups
-----------------------------------------------------------------

| **dbu** [b\ :sub:`1` b\ :sub:`2` … b\ :sub:`i` … b\ :sub:`N`]
| [: units=\ *GWD/MTIHM*\ \|\ *MWD/MTIHM*]

+-------------+-------------+---------------------+-------------+-------------+
| **param**   | **Type**    | **name**            | **details** | **default** |
+-------------+-------------+---------------------+-------------+-------------+
| b\ :sub:`i` | *Real*      | list of             |             | 0           |
|             |             |                     |             |             |
|             |             | incremental burnups |             |             |
+-------------+-------------+---------------------+-------------+-------------+
| units       | GWD/MTIHM\| | burnup units        |             | GWD/MTIHM   |
|             |             |                     |             |             |
|             | MWD/MTIHM   |                     |             |             |
+-------------+-------------+---------------------+-------------+-------------+

Examples:

::

  % incremental burnups equivalent to
  %   power 40
  %   bu 0 5 10 15 20 30 40 50 60 80
  power 40
  dbu 5 5 5 5 10 10 10 10 20

Comments:

The **dbu** card initiates a calculation for a given sequence of
*incremental* burnups. Otherwise, it is identical to the **bu** card for
specifying cumulative burnups.

See also:

**t, dt, ti, bu, bui, power, option<DEPL>, branch, deplete**

.. _3-2a-11:

t (Version 6.3) – initiate calculation by cumulative time
---------------------------------------------------------

| **t** [t\ :sub:`1` t\ :sub:`2` … t\ :sub:`i` … t\ :sub:`N`]
| [:
| units=\ *SECONDS*\ \|\ *MINUTES*\ \|\ *HOURS*\ \|\ *DAYS*\ \|\ *YEARS*]

+-------------+-------------+-------------+-------------+-------------+
| **param**   | **Type**    | **name**    | **details** | **default** |
+-------------+-------------+-------------+-------------+-------------+
| t\ :sub:`i` | *Real*      | list of     | 0           | 0           |
|             |             |             |             |             |
|             |             | times       |             |             |
+-------------+-------------+-------------+-------------+-------------+
| units       | *SECONDS*\  | time units  |             | DAYS        |
|             | \|\ *MINUTE |             |             |             |
|             | S*\ \|      |             |             |             |
|             |             |             |             |             |
|             | *HOURS*\ \| |             |             |             |
|             | \*DAYS*\ \  |             |             |             |
|             | |\ *YEARS*  |             |             |             |
+-------------+-------------+-------------+-------------+-------------+

Examples:

::

  % burn with 40 W/gIHM for 300 days in 100-day increments
  power 40
  t 100 200 300

  % simulate 2 cycles of time-dependent irradiation with shutdown cooling
  % note that time defaults to DAYs
  %
  % cycle 1
  power 40   30   30   30
  t    100  200  300  400
  power  0
  t    415
  %
  % cycle 2
  power 30   20   20   20
  t    515  615  715  815
  power  0
  t    830

Comments:

The **t** card initiates a calculation for a given sequence of
cumulative/absolute times. One of the time cards (**t**, **dt**, or
**ti)** is required to model periods of decay in conjunction with
**power** 0. Otherwise, the time card **t** is similar in functionality
to the burnup **bu** card but with different units.

See also:

**ti, dt, bu, bui, dbu, power, option<DEPL>, branch, deplete**

.. _3-2a-12:

ti (Version 6.3) – initiate calculation by cumulative time (with restart)
-------------------------------------------------------------------------

| **t** [t\ :sub:`1` t\ :sub:`2` … t\ :sub:`i` … t\ :sub:`N`]
| [:
| units=\ *SECONDS*\ \|\ *MINUTES*\ \|\ *HOURS*\ \|\ *DAYS*\ \|\ *YEARS*]

+-------------+-------------+-------------+-------------+-------------+
| **param**   | **Type**    | **name**    | **details** | **default** |
+-------------+-------------+-------------+-------------+-------------+
| t\ :sub:`i` | *Real*      | list of     | 0           | 0           |
|             |             |             |             |             |
|             |             | times       |             |             |
+-------------+-------------+-------------+-------------+-------------+
| units       | *SECONDS*\  | time units  |             | DAYS        |
|             | \|\ *MINUTE |             |             |             |
|             | S*\ \|      |             |             |             |
|             |             |             |             |             |
|             | *HOURS*\ \| |             |             |             |
|             | \ *DAYS*\ \ |             |             |             |
|             | |\ *YEARS*  |             |             |             |
+-------------+-------------+-------------+-------------+-------------+

Example with t card:

::

  % cycle 1
  power 40
  t 100 200 300 400

  power  0
  t    415

  % cycle 2
  power 30
  t 515  615  715  815

  power  0
  t    830

Equivalent example with ti card:

::

  % cycle 1
  power 40
  ti 100 200 300 400

  power  0
  ti    15

  % cycle 2
  power 30
  ti    100 100 100 100

  power  0
  ti    15

Comments:

The **ti** card initiates a calculation for a given sequence of
cumulative times. If only one time list is provided, the **ti** card is
identical to the **t** card. For any subsequent time list, the **ti**
card specifies cumulative times that restart at zero at the beginning of
each list (see example above).

See also:

**t, dt, bu, bui, dbu, power, option<DEPL>, branch, deplete**

.. _3-2a-13:

dt (Version 6.3) – initiate calculation by incremental time
-----------------------------------------------------------

| **t** [t\ :sub:`1` t\ :sub:`2` … t\ :sub:`i` … t\ :sub:`N`]
| [:
| units=\ *SECONDS*\ \|\ *MINUTES*\ \|\ *HOURS*\ \|\ *DAYS*\ \|\ *YEARS*]

+-------------+-------------+-------------+-------------+-------------+
| **param**   | **Type**    | **name**    | **details** | **default** |
+-------------+-------------+-------------+-------------+-------------+
| t\ :sub:`i` | *Real*      | list of     |             | 0           |
|             |             |             |             |             |
|             |             | times       |             |             |
+-------------+-------------+-------------+-------------+-------------+
| units       | *SECONDS*\  | time units  |             | DAYS        |
|             | \|\ *MINUTE |             |             |             |
|             | S*\ \|      |             |             |             |
|             |             |             |             |             |
|             | *HOURS*\ \| |             |             |             |
|             | \ *DAYS*\ \ |             |             |             |
|             | |\ *YEARS*  |             |             |             |
+-------------+-------------+-------------+-------------+-------------+

Examples:

::

  % burn with 40 W/gIHM for 300 days in 100-day increments equivalent to
  %     power 40
  %     t 100 200 300
  power 40
  dt 100 100 100