Geant4 시뮬레이션에서 우리가 수동적으로 다룰 수 있는 단계는 대표적으로 런(Run), 이벤트(Event), 트랙(Track), 스텝(Step) 이 있다.
1. 런 (Run)
Geant4로 작성한 프로그램을 한번 돌리는 작업을 런이라고 한다.
2. 이벤트 (Event)
한번의 런에서 10번의 시뮬레이션을 돌렸다면 10개의 이벤트가 생성되었다고 말한다. 한 이벤트에서 몇개의 입자를 시뮬레이션 할지는 사용자가 어떻게 프로그램을 만드는지에 따라 다르다. 한 이벤트에 하나의 초기 입자만 시뮬레이션 할 수 도 있고 여러개의 초기 입자를 시뮬레이션 할 수도 있다.
이벤트는 트랙 시뮬레이션의 묶음이다. 사용자가 여러개의 초기 입자로 시뮬레이션을 했다고 해서 그 입자들을 동시에 시뮬레이션을 하는 것이 아니다. Geant4 시뮬레이션에서 서로 다른 입자에 대한 시뮬레이션은 서로 독립적이다. 여기서 서로 다른 입자란 물리적으로 다른 입자가 아니라 사용자가 생성하거나 시뮬레이션 상에서 만들어진 모든 입자를 말한다. 따라서 하나의 이벤트에서 두개의 초기 입자를 시뮬레이션한 결과와 두개의 이벤트에서 각각 하나의 초기 입자를 시뮬레이션 한 결과는 다르지 않다. 하나의 이벤트에 정의한 초기 입자의 개수는 편의상의 문제일 뿐이다.
3. 트랙 (Track)
트랙이란 입자의 궤적을 의미한다. 시뮬레이션을 시작하면 입자 스텍에서 마지막 입자를 가져와서 트랙을 시작하고 입자가 사라지거나 세계 밖으로 나가면 트랙이 끝난다. 이렇게 트랙이 시작되고 끝나는 작업을 트래킹(Tracking)이라고 한다.
당연하지만 트래킹은 컴퓨터로 계산하는 과정의 일부이기 때문에 그 과정이 불연속적이다. 만약에 트래킹이 연속적이라면 계산이 끝나지 않을 것이다. 따라서 시뮬레이션을 설계할 때 트랙을 어느정도로 세밀하게 보고 싶은지 정하는 것이 매우 중요하다. 트래킹이 세밀해질 수록 계산은 오래 걸리지만 더 많고 자세하게 결과를 볼 수 있다. 이 세밀함을 결정하는 것을 스텝 크기(step size)라고 한다.
4. 스텝 (Step)
스텝은 트랙의 하위 개념이다. 하나의 스텝은 3차원 상의 두개의 점으로 이루어 지며 그 두 점 사이에서 어떤 일이 일어났는지, 얼마만큼의 에너지를 잃었는지, 어느 방향으로 바뀌었는지 등의 정보를 가지고 있다.
트랙이 순서대로 1번점에서 시작하여 2번, 3번을 거쳐 4번점까지 도달하여 끝났다고 하자. 이때 트랙은 총 3개의 스텝으로 이루어진다. 또한 스텝은 두개의 점, 첫점(pre step point) 끝점(post step point)으로 이루어 진다. 또한 양 끝에 있는 스텝이 아닌 경우 모든 스텝의 두점 모두 다른 스텝과 공유한다.
스텝에서 주의할 점은 입자가 없어지거나 에너지를 남기는 과정이 실제로는 입자를 생성하는 과정일 수도 있다는 사실이다. 예를 들어서 가스를 지나가는 하전 입자는 가스 분자를 이온화 시키면서 수많은 전자를 생성한다. 만약에 이온화로 생성된 모든 전자를 시뮬레이션에 포함한다면 어마어마한 시간이 걸릴 것이다. 따라서 우리는 전자의 생성컷을 주어서 이를 억제시킬 필요가 있다. 이렇게 전자의 생성을 억제시키면 이온화하는 과정의 에너지가 물질에서 잃어버린 에너지로 남게 된다.
설명서에는 잃어버린 에너지에 대해서 다음과 같이 쓰여있다.
Total energy deposited during the step - this is the sum of
- the energy deposited by the energy loss process, and
- the energy lost by secondaries which have NOT been generated because each of their energies was below the cut threhold.
즉 입자가 잃어버린 에너지는 "입자가 직접 잃어버린 에너지" 와 "생성컷에 의해서 생성되지 않은 입자가 남겼을 에너지"의 합으로 정의된다. 나중에 시뮬레이션을 진행할 때 중요한 부분이므로 명확하게 이해하고 넘어가도록 하자.