Day 07 Physics list-----以B1为例
当拿到一个程序时,需要做的事情:
建模----设置粒子源的属性—根据我们想要做的事情或者想要统计的物理量自己去写功能-------必须设置physics list。
当粒子开始进入靶物体反应之后,在其中会发生很多反应,会有很多个step,并最终彻底离开靶物质,形成一个event。physics list就决定了每一个step怎么走,而粒子发生什么反应有G4内部已经编写好的代码决定。
# exampleB1.cc
G4VModularPhysicsLost* physicsList = new QBBC;# 实例化
physicsList->SetVerboseLevel(1);
runManager->SetUserInitialization(physicsList)# 初始化
两种方式:
**1. 调用现成的physics list,**比如B1调用QBBC
G4提供了很多physics list,源代码的source中的physics_list中的lists的src中有G4提供的physics list。若需要在项目中用到,就可直接调用。
2. 自己写physics list
physics list一般自己写,更符合自己的项目,写的时候可以参考QBBC。从大到小:
physics list—> physics(constructor)---->processes;processes:每一个物理反应过程(如一个光电效应);physics:物理反应的集合,属于这一类反应的所有的物理过程(electromagnetic、hadronic、decay、photolepton-hadron、optical、parameterization、transportation);physics list:所有的ohysics合在一起写在一起
Physics list继承G4VModularPhysicsList<–G4VUserPhysicsList
Physics constructor G4VPhysicsConstructor