- 博客(13)
- 收藏
- 关注
原创 Geant4 Tips:Detector Response & Analysis
关于Sensitive Detector 和 Anaysls Manger的使用方法有多种,对于Sensitive Detector 可以通过ProcessHit 方法利用传入的G4Step对象获取变量,或者通过G4MultiFuncionalDetector,通过HitMap来获取变量,在最一般的场合,两种可以相互替代,在其他场景也各有各的优势。
2024-04-02 20:36:17
293
1
原创 Geant4 Tips: Visualization
根据以上内容,我们可以写一个比较容易解读的vis.mac如果有需要,我们还可以调整trajectory处理的时机以优化渲染过程,略去一些不重要的volume或者在一些关键的部位作切片观察。除了这些UI command, 我们还能够在代码中进行设置,自定义Hit类,调用Hit的Draw方法来实现Hits的可视化。
2024-04-01 18:58:44
561
原创 Geant4: Book for Toolkit Developers 阅读笔记(上)
本文是官网的阅读笔记,熟悉的读者也许会感到和其他文档有许多重复的内容。然而笔者仍然感到一些整理、概括的必要性,因此有了这篇笔记。
2024-03-25 16:06:39
731
1
原创 Geant4 案例分析(五):B5
除了在B5中,B2中也有使用Messenger,两者的使用方法是不同的,在B2中通过Messenger改变材料和步长等附属属性,而B5中则直接更改了整体的Geometry,不清楚两者目的的区别是否对使用方法有更深的影响,但是可以肯定的是在B5中的语句显然是与Geometry的Run共享的特性相关的,必须要声明Geometry的修改。回到主题,B2和B5中的Messenger不同使用方法B2是在G4UIMessenger的基础上进行自定义,而B5直接调用了G4GenericMessenger。
2024-03-14 18:32:08
345
1
原创 Geant4: 官方文档第一遍阅读笔记(3)
如果还需要实现自定义的TrajectoryPoint对象,那么还需要再自定义的Trajectory中创建对应的AppendStep()方法,在其中调用我们自定义的TrajectoryPoint对象。其中值得关注的对象是G4Track, 和SecondaryList。在其中的Stepping中,进行每一步Step的计算,顺序为。G4Track保存当前粒子的信息,因此它只保留Step中的瞬态数据,每次Step后其中间值都会被更新。Step存储每个Step中的瞬态信息,例如Step的两点,和两点之间数据的变化。
2023-10-25 21:38:21
133
1
原创 Geant4: 官方文档第一遍阅读笔记(2)
注意,G4Allocator只被没有继承的基类使用,如果设置了G4Allocator,就不要写自己的Trajectory类,因为G4Trajectory类依赖于G4Allocator,而被继承后的类无法调用。touchable能够获得Tracking过程中涉及的geometry的信息,虽然Tracking在实际的调用过程中不是使用touchable对象完成的信息的获取。一个Logical Volume代表了一系列其中的Volume的嵌套结构,虽然具体的位置信息不记录,但是记录了相关的包含与被包含的信息。
2023-10-24 21:50:01
151
原创 Geant4 案例分析(四):B4
d方案由于使用PrimitiveScorer,因此不需要SteppingAction.cc文件,它过滤数据的方式是使用Geant4中的Fileter(见对应的DetectorConstruction)用于输出更加自定义的数据(相比于GTScoreNtupleWriter而言),a-d四种输出方式的区别在于如何调用和输出AnalysisManager。值得一提的是,由于a与d方案中调用AnalysisManager录入数据的来源方式不同,对于数据的操作也不懂。在event中录入Step中累计的值。
2023-10-18 11:39:06
317
2
原创 Geant4 案例分析(三):B3
同时Scorer的结果 也能通过G4TScoreNtupleWriter输出scoring.root,只需要声明即可。首先定义detector,并且赋予其一个scorer,一个detector可以存在不止一个scorer。通过Scorer可以在event中获得HitMap,进而获得其他详细信息。利用HitMap,对Accumulable进行修改。
2023-10-18 11:09:49
199
原创 Geant4 案例分析(二):B2
如果需要得到粒子在特定volume中的能量沉积,可以通过定义SensitiveDetector,当粒子进入SensitiveDetector中,操作将会转给ProcessHit, 可以在其中定义需要的操作。HitCollection 因此是用于在SensitiveDetector文件中用于记录SD中的Hit的信息的。B2a中重定义的Hit只是增加了绘画和打印的功能,删去对运行没有影响。通常的信息,如能量沉积,位置,所在volume,要通过Step得到。用于交互式改变其中volume的材料。
2023-10-18 10:27:03
386
原创 Geant4 案例分析(一): B1
本文是对Geant4 B1的案例分析,其中特定的功能不做介绍,而注重于各个文件的主要功能,以及它们组织的方式。
2023-10-14 21:32:21
455
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人