Geant4 프로젝트의 시작을 빠르게: G4Starter
화살표 키 몇 번으로 Geant4 시뮬레이션 프로젝트의 초기 구조를 생성해주는 G4Starter를 소개합니다.
Geant4 시뮬레이션을 시작할 때마다 main, DetectorConstruction, ActionInitialization, 거기에 여러 UserAction 등...
매번 쓰는건 비슷한데 조금씩 달라서, 여기저기 예제에서 비슷한 파일을 찾아 코드를 복사하거나 수동으로 구조를 잡는 일이 상당히 번거롭지요.
이런 반복적인 작업을 줄이고, 오로지 내 시뮬레이션만의 구조와 로직에만 집중할 수 있도록, 대화형 CLI 도구 G4Starter를 만들었습니다.
왜 G4Starter를 만들었나요?
기존에는 예제 코드를 복사해서 수정하는 방식이 일반적이었지만, 불필요한 코드가 섞이거나 컴파일 시 꼬이는 경우가 많았습니다. G4Starter는 터미널에서 몇 가지 질문에 답하는 것만으로, 사용자의 요구에 딱 맞는 즉시 컴파일 가능한(Ready-to-compile) 프로젝트를 생성해줍니다.
주요 기능
- 설치가 필요 없는 단일 실행 파일: 별도의 라이브러리 설치 없이 Windows, macOS, Linux에서 바로 실행할 수 있습니다.
- 대화형 인터페이스: 복잡한 인자 입력 대신, 화살표 키로 원하는 옵션을 선택하면 됩니다.
- 풍부한 설정 옵션:
- 멀티스레딩(MT) 지원 여부 선택
- 3가지 물리 리스트: QBBC, PhysicsListFactory, Custom 중 선택
- 입자 소스: ParticleGun 또는 GPS(General Particle Source) 설정
- UserAction 자동 생성: Run, Event, Stepping, Tracking, Stacking 클래스 선택적 포함
- 고급 기능: SensitiveDetector, Hit 클래스, Custom Run 클래스 구성 지원
- 이후 버전 업데이트를 통해 기능이 추가될 수 있습니다.
사용 예시

설치 및 사용법
1. 설치 방법
G4Starter는 패키지 매니저를 이용하거나, curl 명령어로 실행 파일을 직접 다운로드하여 사용할 수 있습니다.
방법 A: 패키지 매니저 이용 (권장)
가장 간편한 방법이지만, Windows의 경우 현재 등록 절차가 진행 중입니다.
- Windows (WinGet): (2026년 1월 4일 기준, 등록 절차 진행 중으로 곧 사용 가능할 예정입니다.)
winget install evandde.G4Starter
- macOS/Linux (Homebrew):
brew tap evandde/tap
brew install g4starter
방법 B: curl로 직접 다운로드
별도의 설치 과정 없이 실행 파일만 내려받아 즉시 사용할 수 있습니다. 터미널 환경에 맞춰 아래 명령어를 입력하세요.
- Windows (PowerShell):
# 반드시 .exe 확장자를 붙여서 저장해야 실행 가능합니다.
curl -L -o G4Starter.exe https://github.com/evandde/G4Starter/releases/latest/download/G4Starter.exe
- macOS:
curl -L -o G4Starter https://github.com/evandde/G4Starter/releases/latest/download/G4Starter_mac
chmod +x G4Starter
- Linux:
curl -L -o G4Starter https://github.com/evandde/G4Starter/releases/latest/download/G4Starter_linux
chmod +x G4Starter
- 실행 경로 제한:
curl로 다운로드한 경우, 환경 변수(PATH)에 등록하지 않는다면 해당 실행 파일이 위치한 폴더 내에서만 명령어를 실행할 수 있습니다. (예:./G4Starter) - 대소문자 구분: 실행 파일 이름은 **
G4Starter**로, 대소문자를 정확히 입력해야 합니다. (특히 Linux/macOS 환경) - Windows 확장자: Windows에서는 반드시 파일명 뒤에
.exe가 붙어 있어야 실행 파일로 인식됩니다. 리눅스용chmod명령어는 Windows에서 작동하지 않으니 주의하세요.
2. 프로젝트 생성
설치가 완료되었다면 터미널에 g4starter (혹은 .\G4Starter.exe, ./G4Starter)를 입력하세요. 대화형 인터페이스를 통해 화살표 키로 옵션을 선택하며 프로젝트를 생성할 수 있습니다.
# 패키지 매니저로 설치한 경우
g4starter
# curl로 다운로드한 경우 (해당 폴더에서)
./G4Starter
3. 빌드 및 실행
생성된 프로젝트는 표준 Geant4 구조를 따르므로, 평소처럼 CMake를 이용해 빌드하면 됩니다.
cd YourProject
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make
./YourProject
생성되는 프로젝트 구조
G4Starter는 단순히 파일만 만드는 것이 아니라, 상호작용이 완벽하게 설정된 프로젝트 구조를 제공합니다.
CMakeLists.txt: Geant4 라이브러리 연결이 완료된 빌드 설정main.cc: 애플리케이션 진입점 및 선택한 액션 등록DetectorConstruction: 기본 World volume 설정vis.mac/run.mac: 시각화 및 실행 매크로 템플릿 제공- (선택 시)
SensitiveDetector,Hit클래스 등 포함
결과 예시

지원 환경
G4Starter는 Geant4 11.0 이상을 타겟으로 만들어졌습니다. 추후 업데이트를 통해 여러 종류의 버전에 대응할 수 있도록 개선해나갈 예정입니다.
Windows, Linux, MacOS 모두 사용 가능합니다. (테스트한 환경: Win 10, Win 11, Ubuntu 2404, macOS Tahoe)
마치며
G4Starter는 초보자부터 숙련된 연구자까지 빠르게 시뮬레이션 프로토타입을 만드는 데 최적화되어 있습니다.
이제 코드 복사 대신 G4Starter로 프로젝트를 시작해 보세요!
버그 리포트나 기능 제안은 언제나 환영입니다.
관련 링크