Skip to content

Commit 0c4da79

Browse files
authored
Update README with user-defined inputs
Added section on user-defined inputs and geometry loading.
1 parent 4096e4e commit 0c4da79

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,24 @@ Process](https://geant4-userdoc.web.cern.ch/UsersGuides/ForApplicationDeveloper/
125125
...
126126
</gdml>
127127
```
128+
## User/developer defined inputs
128129

130+
### Defining primary particles
131+
132+
There are certain user defined inputs that the user/developer has to define. In the ```src/simg4oxmt``` example that imports ```src/g4appmt.h``` we provide a working example with a simple geometry. The User/developer has to change the following details:
133+
**Number of primary particles** to simulate in a macro file and the **number of G4 threads**. For example:
134+
135+
```
136+
/run/numberOfThreads {threads}
137+
/run/verbose 1
138+
/process/optical/cerenkov/setStackPhotons {flag}
139+
/run/initialize
140+
/run/beamOn 500
141+
```
142+
143+
Here if the setStackPhotons defines **whether G4 will propagate optical photons or not**. In production Opticks (GPU) takes care of the optical photon propagation. Additionally the user has to define the **starting position**, **momentum** etc of the primary particles define in the **GeneratePrimaries** function in ``src/g4appmt.h```. The hits of the optical photons are returned in the **EndOfRunAction** function. If more photons are simulated than can fit in the GPU RAM the execution of a GPU call should be moved to **EndOfEventAction** together with retriving the hits.
144+
145+
### Loading in geometry into EIC-Opticks
129146

130147
## Performance studies
131148

0 commit comments

Comments
 (0)