liminfo

Geant4 Reference

Geant4 시뮬레이션 클래스/물리리스트/지오메트리 레퍼런스

26개 결과

Geant4 Reference 소개

이 Geant4 레퍼런스는 몬테카를로 입자 수송 시뮬레이션 툴킷의 핵심 클래스와 매크로 명령을 검색 가능한 치트 시트로 정리한 가이드입니다. 시뮬레이션 관리 핵심 클래스, 솔리드 형상과 불리언 연산을 활용한 지오메트리 구성, NIST 데이터베이스와 광학 표면을 이용한 물질 정의, 물리 리스트 선택, 입자 소스 설정, 시각화/분석 매크로 등 27개 항목을 C++ 코드 예시와 함께 6개 카테고리로 구성했습니다.

핵심 사용자 액션 클래스(G4RunManager 초기화, 검출기 지오메트리 정의, 1차 입자 생성기, 매 Step 데이터 수집, 이벤트 수준 분석, 감응 검출기 히트 수집), 지오메트리 솔리드(G4Box, G4Tubs, G4Sphere, G4PVPlacement, G4PVReplica, G4UnionSolid), 표준 물리 리스트(LHC용 FTFP_BERT, 범용 QGSP_BERT, 방사선 방호용 Shielding)를 다룹니다.

고에너지 물리학자, 의학물리 연구원, 방사선 방호 엔지니어, 검출기 설계 팀, 원자핵 과학 학생을 위해 설계되었으며, 컴파일 가능한 C++ 코드 스니펫과 매크로 명령 구문을 통해 Geant4 API 클래스를 즉시 조회할 수 있습니다.

주요 기능

  • G4RunManager 초기화, 검출기 구성, 1차 생성기, 스테핑/이벤트 액션, 감응 검출기를 다루는 핵심 클래스 레퍼런스
  • G4Box, G4Tubs, G4Sphere의 반길이 규약, G4LogicalVolume, G4PVPlacement, G4PVReplica, 불리언 G4UnionSolid 지오메트리 가이드
  • G4NistManager 사전정의 데이터베이스(G4_WATER, G4_Pb, G4_AIR)와 사용자 정의 G4Material 원소 조합을 활용한 물질 정의
  • 신틸레이터 및 체렌코프 검출기 시뮬레이션을 위한 G4OpticalSurface와 G4LogicalBorderSurface 광학 속성
  • FTFP_BERT(LHC 표준), QGSP_BERT(범용), G4EmStandardPhysics, Shielding(방사선 방호)을 포함하는 물리 리스트 선택 가이드
  • 복잡한 빔 프로파일의 G4GeneralParticleSource(매크로 설정)와 단순 입자 발사의 G4ParticleGun 입자 소스 설정
  • OpenGL 뷰어 설정, 궤적 표시, 히트 디스플레이, 자동 새로고침을 위한 시각화 매크로 명령
  • ROOT/CSV/XML 파일 출력으로 히스토그램과 Ntuple을 생성하는 G4AnalysisManager 가이드

자주 묻는 질문

이 레퍼런스는 어떤 Geant4 클래스와 명령을 다루나요?

핵심 클래스(G4RunManager, G4VUserDetectorConstruction, G4VUserPrimaryGeneratorAction, G4UserSteppingAction, G4UserEventAction, G4SensitiveDetector), 지오메트리(G4Box, G4Tubs, G4Sphere, G4LogicalVolume, G4PVPlacement, G4PVReplica, G4UnionSolid), 물질(G4NistManager, G4Material, G4OpticalSurface), 물리 리스트(FTFP_BERT, QGSP_BERT, G4EmStandardPhysics, Shielding), 입자 소스(G4GeneralParticleSource, G4ParticleGun), 시각화/매크로(/vis/open, /run/beamOn, G4AnalysisManager, /run/initialize) 등 6개 카테고리 27개 항목을 다룹니다.

기본 Geant4 시뮬레이션은 어떻게 설정하나요?

G4RunManager 항목에서 전체 초기화 순서를 보여줍니다. G4RunManagerFactory로 실행 관리자를 생성하고, 검출기 구성 클래스, 물리 리스트(예: FTFP_BERT), 사용자 액션(1차 생성기, 스테핑, 이벤트)을 등록한 후 Initialize()를 호출하고 BeamOn(N)으로 N개 이벤트를 실행합니다.

어떤 물리 리스트를 사용해야 하나요?

FTFP_BERT는 ~5GeV 이상 Fritiof과 0-10GeV Bertini 캐스케이드를 사용하는 LHC 실험 표준이고, QGSP_BERT는 쿼크-글루온 스트링 모델의 범용 리스트입니다. G4EmStandardPhysics는 이온화·제동복사·산란의 전자기 과정을 처리하며 G4OpticalPhysics와 결합 가능하고, Shielding은 고정밀 중성자 모델을 포함한 방사선 방호 계산용입니다.

Geant4에서 지오메트리는 어떻게 정의하나요?

솔리드 생성(반길이 규약의 G4Box, 원통 G4Tubs, 구 G4Sphere), G4UnionSolid로 불리언 합집합 연산, G4LogicalVolume으로 솔리드와 물질 결합, G4PVPlacement로 모 볼륨에 위치·회전 배치의 전체 워크플로우를 다룹니다. G4PVReplica는 칼로리미터 층 같은 규칙적 반복 구조를 처리합니다.

NIST 물질 데이터베이스는 어떻게 사용하나요?

G4NistManager::Instance()로 접근하여 FindOrBuildMaterial()로 "G4_WATER", "G4_Pb", "G4_AIR" 등 표준 이름의 사전정의 물질을 사용합니다. 사용자 정의 물질은 밀도와 구성요소 수로 G4Material을 생성한 후 FindOrBuildElement()로 원소를 화학양론비에 따라 추가합니다.

G4ParticleGun과 G4GeneralParticleSource의 차이는 무엇인가요?

G4ParticleGun은 단순 시뮬레이션용으로 C++ 코드에서 입자 종류, 에너지, 위치, 방향을 설정하여 단일 입자를 발사합니다. G4GeneralParticleSource(GPS)는 매크로 명령(/gps/particle, /gps/energy, /gps/pos/type 등)으로 원형 빔, 면 소스, 에너지 스펙트럼 등 복잡한 빔 프로파일을 재컴파일 없이 설정할 수 있습니다.

Geant4에서 에너지 침적 데이터는 어떻게 수집하나요?

두 가지 방법을 다룹니다. G4UserSteppingAction에서 매 Step마다 UserSteppingAction()이 호출되어 특정 볼륨의 GetTotalEnergyDeposit()을 누적하는 방법과, G4VSensitiveDetector의 ProcessHits()로 히트 객체를 생성하여 히트 컬렉션에 저장하는 방법입니다. G4UserEventAction에서 이벤트별 데이터를 집계하고, G4AnalysisManager가 출력 파일에 히스토그램과 Ntuple을 기록합니다.

이 레퍼런스는 무료인가요?

네, 이 Geant4 레퍼런스는 사용 제한이나 계정 없이 완전히 무료입니다. 모든 콘텐츠가 브라우저에서 로드되며 서버 처리가 필요 없습니다. 물리학자와 시뮬레이션 엔지니어를 위한 liminfo.com 무료 온라인 레퍼런스 도구 모음의 일부입니다.