Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/examples/extended/biasing/GB05/README.md is written in an unsupported language. File is not indexed.

0001 \page ExampleGB05 Example GB05 
0002 
0003 ## Splitting by cross-section
0004 
0005 This example illustrates a technique that uses physics cross-sections to
0006 determine the splitting [killing] rate in a shielding problem. This technique
0007 is supposed to be an invention, and this example here is not optimized. The
0008 technique is applied here to neutrons.
0009 
0010 In the classical treatment of the shielding problem, the shield is divided
0011 in slices at the boundaries of which particles are splitted[killed] if moving
0012 forward[backward]. In the present technique, we collect the cross-section of
0013 "absorbing/destroying" processes : decay, capture, inelastic. We then use the
0014 generic biasing facilities to create an equivalent of a spitting process, that
0015 has a "cross-section" which is the sum of the previous ones. This process is
0016 competing with other processes, as a regular one. The occurence of this process
0017 is hence the same than the "absorbing/destroying" processes together. When this
0018 process wins the competition, it splits the track, with a splitting factor 2 (ie
0019 the original track is kept and a copy of it is created). This splitting is hence
0020 occuring at the same rate than the absorption, resulting in an expected
0021 maintained (unweighted) flux.
0022 
0023 
0024 The geometry is made of a single block of concrete it. Behind it (in the +z
0025 direction) a thin empty volume is placed to print out the particles which are
0026 exiting the shield.
0027 
0028 As in any generic biasing use, a biasing operator (taking decisions on what
0029 biasing to apply) and a biasing operation (applying these decisions) are defined.
0030 These are:
0031           GB05BOptrSplitAndKillByCrossSection for the operator,
0032           GB05BOptnSplitAndKillByCrossSection for the operation.
0033           
0034 The operator is created in the detector construction, and receives here the
0035 names of the absorbing/destroying processes to counterbalance for.
0036 At tracking time, it collects the up to date cross-section of these processes
0037 in the ProposeNonPhysicsBiasingOperation(...) method, and passes the sum to the
0038 GB05BOptnSplitAndKillByCrossSection operation.
0039 
0040 The operation uses the cross-section (interaction length) to sample the
0041 distance to "interaction" with a classical exponential. If it wins the race
0042 (ie it proposes the smallest of the interaction distances among all processes)
0043 its GenerateBiasingFinalState(...) method is called, and it applies splitting
0044 or killing (Russian roulette) if the track moves forward or backward.
0045 
0046 
0047     
0048