Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/examples/extended/field/field01/field01.in is written in an unsupported language. File is not indexed.

0001 #
0002 # Macro file for the test of field01 example
0003 #
0004 # It creates the default geometry (simple absorber cylinder )        
0005 #
0006 /tracking/verbose 1
0007 /run/verbose 1
0008 /control/verbose 2
0009 #/control/cout/ignoreThreadsExcept 0
0010 #
0011 # ******  Start of initialisation of classes for field propagation 
0012 # Change the type of stepper used to integrate the ODE of motion
0013 #
0014 # Recommended and default since Geant4 10.4 (Dec 2017) - Dormand Prince (7) 4/5
0015 /field/stepperType DormandPrince745 
0016 
0017 # High efficiency 5th order embedded stepper - Tsitouras 
0018 # /field/stepperType TsitourasRK45
0019 
0020 # Higher order Dormand Prince stepper - 6th order (for smoothest fields & long steps)
0021 # /field/stepperType DormandPrinceRK56
0022 #
0023 #
0024 # Different types of steppers can be chosen for integration in B-field:
0025 # 
0026 # 745 - Dormand Prince 745 : established, efficient embedded method
0027 #                           recommended in literature, e.g. Hairer, Numerical Recipes
0028 #                           Used in several RK programs (e.g. DOPRI5 code)
0029 #
0030 #  45 - Bogacki Shampine 4/5 : more efficient 4/5 embedded stepper
0031 #  13 - Nystrom RK4          : stepper with few field calls & analytic estimate of error
0032 #
0033 # Good choices for reasonably smooth fields - available since Geant4 1.0
0034 #   8 - Cash Karp RKF 45   : 'embedded' RK method - 4th/5th faster, robust
0035 #                            ( uses difference of 4th & 5th order for error estimate )
0036 #
0037 # Default - good choice for unknown fields
0038 #   4 - ClassicalRK4       : original Runge-Kutta method, very robust but slower )
0039 #                             ( obtains error estimate by doing 2 half steps )
0040 #
0041 # Good choices for non-smooth fields:
0042 #   3 - SimpleHeum         : low   order, with error obtained from half-steps
0043 #  23 - BogackiShampine23  : lower order embedded method  (new in 10.3-beta)
0044 #
0045 #
0046 # Control the mininum step size for integration in field
0047 #     with a value of 10 um ==> accept any amount of integration error in smaller steps!
0048 #
0049 /field/setMinimumStep 0.01 mm
0050 #
0051 # Control the (relative) accuracy of the integration.
0052 # ---------------------------------------------------
0053 # 1. DeltaOneStep: 
0054 ## Errors of this size in an integration sub-step are acceptable except when 
0055 #   it is limited by the relative integration error limits (epsilon_min/max)
0056 #
0057 /field/setDeltaOneStep  2.0e-05 mm 
0058 #
0059 #    DeltaOneStep is used to obtain a relative accuracy for the step:
0060 #       relative_eps = DeltaOneStep / step-length
0061 #  To ensure robustness the value of this is kept within the following limits: 
0062 # 2. Epsilon Min:  the minimum value of the relative integration error (EpsilonMin) -
0063 #
0064 /field/setMinimumEpsilonStep    5.0e-06
0065 # 
0066 #  This Limit to ensure that large steps do NOT result in a very low value of relative_eps 
0067 #   (ie very high accuracy) that would result in integration requiring many steps and CPU cycles.
0068 #  Note: it is a dimensionless number
0069 #
0070 # 3. Epsilon Max:
0071 #
0072 /field/setMaximumEpsilonStep    5.0e-04
0073 # 
0074 # A minimum value of the relative integration error (EpsilonMax). Also a dimensionless number");
0075 #  This Limit serves to ensure that a very small step does NOT result in a large relative error 
0076 #  (ie low accuracy) and unreliable results."); 
0077 #
0078 
0079 #
0080 # ******  Initialisation of classes for field propagation is done
0081 #
0082 /run/initialize
0083 /field/printParameters
0084 #
0085 # /run/particle/dumpCutValues
0086 #
0087 /gun/particle e-
0088 #
0089 #  /gun/particle proton
0090 #  /gun/particle chargedgeantino
0091 #
0092 /gun/energy 500.0 MeV
0093 /run/beamOn 1
0094 #
0095 /gun/energy 250.0 MeV
0096 /run/beamOn 1
0097 #
0098 /gun/energy 200.0 MeV
0099 /run/beamOn 1
0100 #
0101 /gun/energy 100.0 MeV
0102 /run/beamOn 1
0103 #
0104 /gun/energy  50.0 MeV
0105 /run/beamOn 1
0106 #
0107 # Change the value of the B-field
0108 #
0109 /field01/setField 0.1 0 0 tesla
0110 /run/beamOn 1
0111 #
0112 /gun/energy 500.0 MeV
0113 /tracking/verbose 0
0114 /run/printProgress 10
0115 /run/beamOn 100
0116 #
0117 # Test commands defined in this example
0118 /control/verbose 2
0119 #
0120 /calor/setAbsMat Xe20CO2      # default Air
0121 /calor/setWorldMat Kr20CO2    # default Air
0122 /calor/setAbsThick  0.8 mm    # default 1 mm
0123 /calor/setAbsRad 1900 mm      # default 20000.*mm
0124 /calor/setAbsZpos  20990 mm   # default 21990.0*mm
0125 /calor/setWorldZ  45000 mm    # default 44000.*mm
0126 /calor/setWorldR  23000 mm    # default 22000.*mm
0127 /field01/setField 0 0 1.0 kG       # default field 3*tesla in Z-direction
0128 #
0129 /gun/random   on       # default "off"
0130 /gun/xvertex  100 mm   # default 0
0131 /gun/yvertex  100 mm   # default 0
0132 /gun/zvertex  100 mm   # default 0
0133 #
0134 /run/beamOn 1