G4VHit

Revision as of 21:23, 28 Mar 2007
Orloffm (Talk | contribs)

← Go to previous diff
Current revision
Orloffm (Talk | contribs)

Line 1: Line 1:
-Абстрактный класс. Идея состоит в том, чтобы создать создать его конкретную реализацию (например, MyHit) и использовать её для сохранения нужной информации о каждом [Step]'е. Предлагается создать свою реализацию [G4VSensitiveDetector] (например, MySensitiveDetector) и прикрепить её объект к логическому объёму детектора. Тогда при каждом степе будет вызываться функция ProcessHits, реализованная в MySensitiveDetector. В ней можно создавать новые объекты MyHit и копировать в них нужную информацию из объекта [G4Step], являющегося аргументом этой функции.+Абстрактный класс. Идея состоит в том, чтобы создать его конкретную реализацию (например, MyHit) и использовать её для сохранения нужной информации о каждом [[Step]]'е.
 +Предлагается создать свою реализацию [[G4VSensitiveDetector]] (например, MySensitiveDetector) и прикрепить её объект к логическому объёму детектора. Тогда при каждом степе будет вызываться функция ProcessHits, реализованная в MySensitiveDetector. В ней можно создавать новые объекты MyHit и копировать в них нужную информацию из объекта [[G4Step]], являющегося аргументом этой функции.
 +
 +В примерах также любят делать вот такую штуку для хранения хитов:
 + typedef G4THitsCollection<MyHit> MyHitsCollection;
 +
 +В MySensitiveDetector помимо ProcessHits нужно также реализовать функции Initialize(G4HCofThisEvent*) и EndOfEvent(G4HCofThisEvent*). [[G4HCofThisEvent]] --- класс, хранящий указатели на объекты G4THitsCollection. В примере из последней ссылки в Initialize создаётся объект MyHitsCollection и сохраняется в переданном функции объекте G4HCofThisEvent. В ProcessHits создаются хиты и добавляются в эту MyHitsCollection. EndOfEvent имеет пустое тело.
== Смотри также == == Смотри также ==
-[http://geant4.cern.ch/bin/SRM/G4GenDoc.exe.pl?flag=2&FileName=G4VHit.hh&FileDir=digits_hits/hits/include|Software reference manual] - общие слова+[http://geant4.cern.ch/bin/SRM/G4GenDoc.exe.pl?flag=2&FileName=G4VHit.hh&FileDir=digits_hits/hits/include Software reference manual] - общие слова
-[http://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/Detector/hit.html|Application Developer] - пример реализации+ 
-[http://www.ge.infn.it/geant4/training/siena_oct2006/readout.ppt|Short Course 2006] - пример взаимодействия с Sensitive Detector+[http://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/Detector/hit.html Application Developer] - пример реализации
 + 
 +[http://www.ge.infn.it/geant4/training/siena_oct2006/readout.ppt Short Course 2006] - пример взаимодействия с Sensitive Detector

Current revision

Абстрактный класс. Идея состоит в том, чтобы создать его конкретную реализацию (например, MyHit) и использовать её для сохранения нужной информации о каждом Step'е.

Предлагается создать свою реализацию G4VSensitiveDetector (например, MySensitiveDetector) и прикрепить её объект к логическому объёму детектора. Тогда при каждом степе будет вызываться функция ProcessHits, реализованная в MySensitiveDetector. В ней можно создавать новые объекты MyHit и копировать в них нужную информацию из объекта G4Step, являющегося аргументом этой функции.

В примерах также любят делать вот такую штуку для хранения хитов:

typedef G4THitsCollection<MyHit> MyHitsCollection;

В MySensitiveDetector помимо ProcessHits нужно также реализовать функции Initialize(G4HCofThisEvent*) и EndOfEvent(G4HCofThisEvent*). G4HCofThisEvent --- класс, хранящий указатели на объекты G4THitsCollection. В примере из последней ссылки в Initialize создаётся объект MyHitsCollection и сохраняется в переданном функции объекте G4HCofThisEvent. В ProcessHits создаются хиты и добавляются в эту MyHitsCollection. EndOfEvent имеет пустое тело.

Смотри также

Software reference manual (http://geant4.cern.ch/bin/SRM/G4GenDoc.exe.pl?flag=2&FileName=G4VHit.hh&FileDir=digits_hits/hits/include) - общие слова

Application Developer (http://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/ForApplicationDeveloper/html/Detector/hit.html) - пример реализации

Short Course 2006 (http://www.ge.infn.it/geant4/training/siena_oct2006/readout.ppt) - пример взаимодействия с Sensitive Detector

Edit page