Changeset 1211 for trunk/documents/UserDoc/DocBookUsersGuides/ForApplicationDeveloper/xml/Fundamentals
- Timestamp:
- Dec 7, 2009, 12:15:45 PM (16 years ago)
- Location:
- trunk/documents/UserDoc/DocBookUsersGuides/ForApplicationDeveloper/xml/Fundamentals
- Files:
-
- 4 edited
-
biasing.xml (modified) (3 diffs)
-
eventGenerator.xml (modified) (1 diff)
-
global.xml (modified) (3 diffs)
-
unitSystem.xml (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/documents/UserDoc/DocBookUsersGuides/ForApplicationDeveloper/xml/Fundamentals/biasing.xml
r921 r1211 33 33 concepts of importance sampling. More detailed documentation may be 34 34 found in the documents 35 <ulink url="http://geant4. web.cern.ch/geant4/collaboration/working_groups/geometry/index.shtml">36 ' Latest development in importance sampling and scoring'35 <ulink url="http://geant4.cern.ch/collaboration/working_groups/geometry/biasing/Sampling.html"> 36 'Scoring, geometrical importance sampling and weight roulette' 37 37 </ulink>. 38 38 A detailed description of different use-cases which employ the sampling 39 39 and scoring techniques can be found in the document 40 <ulink url="http://geant4. web.cern.ch/geant4/collaboration/working_groups/geometry/index.shtml">41 ' Scoring and geometrical importance sampling use cases'40 <ulink url="http://geant4.cern.ch/collaboration/working_groups/geometry/biasing/BiasScoreUseCases.html"> 41 'Use cases of importance sampling and scoring in Geant4' 42 42 </ulink>. 43 43 </para> … … 63 63 <para> 64 64 Examples on how to use scoring and importance sampling may be found 65 in <literal>examples/extended/biasing</literal> and 66 <literal>examples/advanced/Tiara</literal>. 65 in <literal>examples/extended/biasing</literal>. 67 66 </para> 68 67 … … 1045 1044 </para> 1046 1045 1047 <para>1048 More details can be found in1049 <ulink url="http://www.triumf.ca/geant4-03/talks/03-Wednesday-AM-1/03-J.Wellisch/biasing.hadronics.pdf">1050 Hadronic cross section biasing1051 </ulink>.1052 </para>1053 1054 1046 </sect4> 1055 1047 </sect3> -
trunk/documents/UserDoc/DocBookUsersGuides/ForApplicationDeveloper/xml/Fundamentals/eventGenerator.xml
r904 r1211 43 43 <emphasis>G4PrimaryVertex</emphasis> class object and, thus, this class object 44 44 can have one or more <emphasis>G4PrimaryParticle</emphasis> class objects which 45 share the same vertex. As shown in Fig.?.?, primary vertexes and 46 primary particles are associated with the <emphasis>G4Event</emphasis> object by 47 a form of linked list. 45 share the same vertex. Primary vertexes and primary particles are associated 46 with the <emphasis>G4Event</emphasis> object by a form of linked list. 48 47 </para> 49 48 -
trunk/documents/UserDoc/DocBookUsersGuides/ForApplicationDeveloper/xml/Fundamentals/global.xml
r904 r1211 37 37 the Geant4 coding style conventions, each class part of the Geant4 38 38 kernel has its name beginning with the prefix <emphasis>G4</emphasis>, e.g., 39 <emphasis>G4VHit, G4GeometryManager, G4ProcessVector ,</emphasis>etc. Instead of39 <emphasis>G4VHit, G4GeometryManager, G4ProcessVector</emphasis>, etc. Instead of 40 40 the raw C types, <emphasis>G4</emphasis> types are used within the Geant4 code. 41 For the basic numeric types (<literal>int, float, double ,</literal>etc.),41 For the basic numeric types (<literal>int, float, double</literal>, etc.), 42 42 different compilers and different platforms provide different value 43 43 ranges. In order to assure portability, the use of <emphasis>G4int, 44 G4float, G4double, </emphasis> which are base classes globally defined, is45 preferable. <emphasis>G4</emphasis> types implement the right generic type for a 46 given architecture.44 G4float, G4double, G4bool</emphasis>, globally defined, is preferable. 45 <emphasis>G4</emphasis> types implement the right generic type 46 for a given architecture. 47 47 </para> 48 48 … … 652 652 </para> 653 653 <para> 654 <emphasis role="bold">Note</emphasis>: classes which are handled by 655 <literal>G4Allocator</literal> should <emphasis>avoid</emphasis> to be used 656 as base classes for others and therefore define their (eventually empty) 657 destructors to be virtual (and/or inlined). Such measure is necessary in order 658 to prevent bad aliasing optimisations by compilers which may potentially 659 lead to crashes in the attempt to free the allocated chunks of memory. 654 <emphasis role="bold">Note</emphasis>: 655 <literal>G4Allocator</literal> assumes that objects being allocated 656 have all the same size for the type they represent. For this reason, 657 classes which are handled by <literal>G4Allocator</literal> should 658 <emphasis>avoid</emphasis> to be used as base-classes for others. 659 Similarly, base-classes of sub-classes handled through 660 <literal>G4Allocator</literal> should not define their (eventually 661 empty) virtual destructors inlined; such measure is necessary in order 662 also to prevent bad aliasing optimisations by compilers which may 663 potentially lead to crashes in the attempt to free allocated chunks 664 of memory when using the base-class pointer or not. 660 665 </para> 661 666 <para> … … 673 678 - hits collections of an event (G4HCofThisEvent): anHCoTHAllocator 674 679 - hits collections (G4HitsCollection): anHCAllocator 680 - touchable histories (G4TouchableHistory): aTouchableHistoryAllocator 675 681 - trajectories (G4Trajectory): aTrajectoryAllocator 676 682 - trajectory points (G4TrajectoryPoint): aTrajectoryPointAllocator -
trunk/documents/UserDoc/DocBookUsersGuides/ForApplicationDeveloper/xml/Fundamentals/unitSystem.xml
r904 r1211 24 24 <para> 25 25 Geant4 offers the user the possibility to choose and use the 26 units he prefers for any quantity. In fact, the Geant4 kerneltakes27 care of the units. Internally it usesa consistent set on units28 based on the <literal>HepSystemOfUnits</literal> :26 preferred units for any quantity. In fact, Geant4 takes 27 care of the units. Internally a consistent set on units 28 based on the <literal>HepSystemOfUnits</literal> is used: 29 29 30 30 <informalexample> … … 63 63 <para> 64 64 In the file 65 <literal>source/global/management/include/SystemOfUnits.h</literal> you will 66 find all of these definitions. That file is part of CLHEP. 67 </para> 68 69 <para> 70 Moreover, the user is free to change the system of units to be 71 used by the kernel. 65 <literal>$CLHEP_BASE_DIR/include/CLHEP/Units/SystemOfUnits.h</literal> 66 from the CLHEP installation, one can find all untis definitions. 67 </para> 68 69 <para> 70 One can also change the system of units to be used by the kernel. 72 71 </para> 73 72 … … 87 86 88 87 <para> 89 You <emphasis role="bold">must</emphasis> give the units for the 90 data you are going to 91 introduce: 88 The user <emphasis role="bold">must</emphasis> give the units for the 89 data to introduce: 92 90 93 91 <informalexample> … … 99 97 100 98 <para> 101 Indeed, the full Geant4 code is written respecting these 102 specifications, and this makes it independent of the units chosen 103 by the user.104 </para> 105 106 <para> 107 If the units are not specified, it is understood that the data108 is implicitly in the internal G4 system, but this isstrongly99 Geant4 assumes that these specifications for the units are respected, 100 in order to assure indeipendence from the units chosen in the client 101 application. 102 </para> 103 104 <para> 105 If units are not specified in the client application, data are implicitly 106 treated in internal Geant4 system units; this practice is however strongly 109 107 discouraged. 110 108 </para> … … 135 133 <para> 136 134 Some built-in commands from the User Interface (UI) also require 137 theunits to be specified.135 units to be specified. 138 136 </para> 139 137 … … 150 148 151 149 <para> 152 If the units are not specified, or are not valid, the command is 153 refused. 150 If units are not specified, or are not valid, the command is refused. 154 151 </para> 155 152 … … 165 162 166 163 <para> 167 You can output your data with the units you wish. To do so, it is164 You can output your data with the wished units. To do so, it is 168 165 sufficient to <emphasis role="bold">divide</emphasis> the data by the 169 166 corresponding unit: … … 183 180 184 181 <para> 185 There is another way to output yourdata. Let Geant4 choose the186 most appropriate units for the actual numerical value of yourdata.187 It is sufficient to specify to which category your data belong182 There is another way to output the data. Let Geant4 choose the 183 most appropriate units for the actual numerical value of the data. 184 It is sufficient to specify to which category the data belong to 188 185 (Length, Time, Energy, etc.). For example 189 186 … … 210 207 211 208 <para> 212 If you wishto introduce new units, there are two methods:209 If wished to introduce new units, there are two methods: 213 210 214 211 <itemizedlist spacing="compact"> … … 228 225 </para></listitem> 229 226 <listitem><para> 230 You can instantiate an object of the class227 Instantiate an object of the class 231 228 <emphasis>G4UnitDefinition</emphasis> 232 229
Note:
See TracChangeset
for help on using the changeset viewer.
