Variance Reduction Techniques to Improve Efficiency of

Download Report

Transcript Variance Reduction Techniques to Improve Efficiency of

PHITS
Multi-Purpose Particle and Heavy Ion Transport code System
Advanced Lecture (II):
variance reduction techniques to
improve efficiency of calculation
Jan. 2014 revised
title
1
Contents of Lecture
1.Introduction
2.Neutron deep penetration calculation
[importance]
Geometry splitting and Russian Roulette
[weight window]
Weight windows
3.Calculation of particle production in thin target
[forced collision]
2
Neutron deep penetration calculation
Calculate neutron transport in thick shield
and dose rate distribution to depth
imp.inp
14 MeV neutron
with 1 cm radius
maxcas =
10000
maxbch =
2
Number of history = 20000
Concrete
50cm radius x 3 m thick cylinder
Air
3
Neutron deep penetration calculation
Normal calculation using a single CPU
2.83GHz, Single
Number of history= 2x104
total cpu time = 53.66 sec
Normal calculation using 31 CPUs
2.83GHz, 31 CPUs
Number of history= 1.3x109
total cpu time
=
about 6 hours
Need to improve the efficiency of Monte Carlo simulation!
Use variance reduction techniques
4
Concept of weight in Monte Carlo calculation
Example:track length tally
Weight: Importance of the particle in Monte Carlo simulation
always to be 1 for normal calculation
Merit of controlling weight
Artificially increase the probability of rare event occurrences
Kill events that are not so important
Demerit of controlling weight
Inadequate weight control induces wrong simulation results
Frequency distribution per a history cannot be calculated,
e.g. [t-deposit] with output = deposit, NO MORE event generator!
5
Contents of Lecture
1.Introduction
2.Neutron deep penetration calculation
[importance]
Geometry splitting and Russian Roulette
[weight window]
Weight windows
3.Calculation of particle production in thin target
[forced collision]
6
Cell Importance Method
Set important I to each cell. When a particle passes through the
boarder of cell 1 and cell 2, multiple its weight by I1/I2
For I1 < I2, split the particle into I2/I1, and multiple its weight by I1/I2
e.g.1 I2/I1 = 3 (integer)
I1=1
W=1
I2=3
W=1/3
W=1/3
W=1/3
• Always split into 3
• Weights of all split particles are 1/3
e.g. 2 I2/I1 = 2.75 (not an integer)
• Split into 3 by 75%
• Split into 2 by 25%
• Weights of all split particles are 1/2.75
For I1 > I2 , play Russian Roulette, and multiple its weight by I1/I2
I1=1
I2=1/3
W=1
W=1
W=1
W=3
e.g.3 I2/I1 =0.33
• 33% of particles survives, rests are killed
• Weights of all survived particle are 3
Example of calculation using [importance]
imp.inp
14 MeV neutron
with 1 cm radius
Concrete
50cm radius x 3 m thick cylinder
Air
Thickness of each cell: 15 cm
Ii+1/Ii = 2.5
[importance]
part = neutron
reg imp
1 2.5**0
2 2.5**1
3 2.5**2
4 2.5**3
5 2.5**4
6 2.5**5
7 2.5**6
8 2.5**7
9 2.5**8
10
11
12
13
14
15
16
17
18
19
20
2.5**9
2.5**10
2.5**11
2.5**12
2.5**13
2.5**14
2.5**15
2.5**16
2.5**17
2.5**18
2.5**19
8
Example of calculation using [importance]
2.83GHz, single
Number of history 2x104 maxcas = 10000, maxbch = 2
Without [importance]
total cpu time = 53.66 sec
1
0.1
0.01
Dose rate
With [importance]
Relative error
total cpu time = 186.47 sec
1
0.1
0.01
Estimate doses deep inside concrete !
It is important to check the relative error !
red :1.0, yellow: around 0.1, green: around9 0.01
Example of calculation using [importance]
Dose rate in each cell
Neutron energy spectra in a cell 7
Good agreements between importance method and normal calculation
10
→ Indicate the adequacy of the importance setting!
Important Notice of Setting [importance]
source
Good example
1
2
4
8
16
32
8
8
8
32
Bad example
1
1
It is better to set 2~3 for max importance ratio
between neighboring cells.
Reference:
11
“A Sample Problem for Variance Reduction in MCNP” LA-10363-MS DE86 004380
Bad Example for using [importance]
Very large importance ratio
imp.inp
Number of history 2x104 maxcas = 10000, maxbch = 2
[importance]
2.83GHz, single
total cpu time = 92.0 sec
part = neutron
Dose
Relative error
Relative errors are too large in
comparison to previous setting!
reg imp
1 2.5**0
2 2.5**0
3 2.5**0
4 2.5**3
5 2.5**3
6 2.5**3
7 2.5**3
8 2.5**3
9 2.5**3
10 2.5**3
11 2.5**10
12 2.5**10
13 2.5**10
14 2.5**10
15 2.5**10
16 2.5**15
17 2.5**15
18 2.5**15
19 2.5**15
20 2.5**19
12
Contents of Lecture
1.Introduction
2.Neutron deep penetration calculation
[importance]
Geometry splitting and Russian Roulette
[weight window]
Weight windows
3.Calculation of particle production in thin target
[forced collision]
13
Difference between cell importance and weight window methods
•
•
“Cell importance method” assign a single value of weight for each cell.
“Weight window method” assign allowed weight range (window) for each cell
and each energy group.
Efficient simulation with focusing on the important energy region,
such as high-energy neutron.
W2=1/3
region1
region2
Number of
particle 1 → I2/I1=3
Cell importance method
W1=1
Weight
W1=1
WU=2.5
WU=1.25
W=1
Weight
Weight
I1=1
WU=2.5
I2=3
WL=0.5
WL=0.5
WL=0.25
region1
energy group1
W2=0.5
region2
energy group2
Number of particle 1 → 1
WU=0.75
WL=0.15
1→ W1/W2=2
Weight window method
14
Example of calculation using [weight window]
Number of history 2x104 maxcas = 10000, maxbch = 2
Normal calculation total cpu time = 53.66 sec
Dose
[importance]
[weight window]
1
Relative error
0.1
0.01
total cpu time = 186.47 sec
•Set the lowest weight allowed in the cell (WW1=WL)
total cpu time = 120.16 sec
[weight window]
part = neutron
reg ww1
1 (1/3)/2.5**0
2 (1/3)/2.5**1
・・・
15
Calculation using weight window with energy dependence
Number of history 2x104 maxcas = 10000, maxbch = 2 [weight window]
1. One energy group: all energy
total cpu time = 120.16 sec
2. two energy group: 0-1keV and 1keV-20MeV
Lower weight boundary for En<1 keV (ww1) is higher than
lower weight boundary for En > 1 keV (ww2) to concentrate
on high-energy neutron transport
total cpu time = 68.77 sec
part = neutron
reg ww1
1 (1/3)/2.5**0
2 (1/3)/2.5**1
・・・
[weight window]
part = neutron
eng = 2
1.0e-3
20.0
reg ww1
ww2
1 (1/3)/2.5**0*10
(1/3)/2.5**0
2 (1/3)/2.5**1*10
(1/3)/2.5**1
3 (1/3)/2.5**2*10
(1/3)/2.5**2
・・・
16
Check the accuracy of simulations
150 cm
225 cm
300 cm
Attenuation of dose behind the concrete shielding
Good agreement !
17
→ Calculation using weight window method with energy dependence is most efficient.
Contents of Lecture
1.Introduction
2.Neutron deep penetration calculation
[importance]
Geometry splitting and Russian Roulette
[weight window]
Weight windows
3.Calculation of particle production in thin target
[forced collision]
18
Forced collision
The forced collision is useful for analyzing secondary particles
generated from a thin target
Incoming
weight Wi
Split into two particles
d: distance
across cell
Uncollided particle
Collided
particle
Forced
collision cell
Weight of uncollided particle:
Wi×exp(-σd)
Weight of collided particle:
Wi×{1-exp(-σd)}
σ: macroscopic cross section
Collide position is decided by cross section and random number.
Forced collision factor |fcl|
1
fcl = 0: no forced collision in cell, |fcl| = 1: 100% forced collision
•fcl < 0 = applies only to particles entering the cell (weight cut-off is not applied)
•fcl > 0 = applies to all particles surviving weight cutoff (weight cut-off is applied)
19
Example of forced collision
Energy distribution of neutron and alpha produced by
reaction of 100MeV proton incidence on 1mm thick Si.
force.inp
maxcas = 10000
maxbch =
2
Secondary particle flux calculated
without forced collision:
No collision occurred in such thin target
[forced collisions]
part = proton
reg fcl
1 1.0
Secondary particle flux calculated
with forced collision:
You can get good statistic data!!
20
Summary
Cell importance and weight window methods are effective in deep
penetration calculations.
Ratios of importance and weight window between neighboring cells
are better to be be less than 3.
Weight window method with energy dependence is more efficient
than other methods for deep penetration calculations.
Forced collision method is effective to calculate particle production in
a thin target.
21