사실 Geant4 자체가 ROOT 와 연관이 깊기도 하고 최근에는 어느 정도 ROOT를 분석프로그램으로 사용할 것을 염두에 두고 만들어졌습니다. 그래서 root 파일이 아니라 csv로 저장할 때 어느정도 제한이 있고, 하나의 파일에 두가지 종류의 데이터를 저장하는 것이 가능하지 않습니다. 아마 이런 점에서 문제를 발견했을 것 같네요.
분석을 위한 프로그램을 따로 생각해 두신게 아니라면 조금 힘을 들여서 ROOT 를 설치하는 것을 권장 드립니다.
1. 물질을 정의할 때 감약을 할지 안할지 따로 정의하지는 않습니다. 얇은 Al 이라면 gamma가 에너지를 잃지 않고 지나갈 확률이 높습니다. 제가 간단한 시뮬레이션으로 확인해 보니 0.5 MeV의 gamma가 0.25 cm 두께의 Al를 지나갈 때 반응할 확률은 10% 정도 입니다.
2. 이벤트 마다 NaI 에서 잃은 에너지를 모은 다음 그 값들을 그리면 될 것 같네요. 예전에 어느 분이 이벤트 마다 잃은 에너지를 모으는 코드를 물어보신 적이 있는데 "Ntuple & Analysis Manager" 토픽에 댓글로 설명을 달아놨습니다. 코드는 아래와 같습니다. https://github.com......cac
여기서 NaI의 volumeID를 1로 하거나, OTSteppingAction::UserSteppingAction(const G4Step* step) 함수 안에서 보고자 하는 볼륨의 volumeID(copyNo)를 바꿔서 보면 될 것 같습니다.