![]() |
|
|||
File indexing completed on 2025-09-15 08:54:44
0001 //------------------------------- -*- C++ -*- -------------------------------// 0002 // Copyright Celeritas contributors: see top-level COPYRIGHT file for details 0003 // SPDX-License-Identifier: (Apache-2.0 OR MIT) 0004 //---------------------------------------------------------------------------// 0005 //! \file celeritas/inp/PhysicsProcess.hh 0006 //---------------------------------------------------------------------------// 0007 #pragma once 0008 0009 #include <optional> 0010 0011 #include "PhysicsModel.hh" 0012 0013 namespace celeritas 0014 { 0015 namespace inp 0016 { 0017 //---------------------------------------------------------------------------// 0018 /*! 0019 * Construct a physics process for bremsstrahlung. 0020 */ 0021 struct BremsProcess 0022 { 0023 std::optional<SeltzerBergerModel> sb{std::in_place}; 0024 std::optional<RelBremsModel> rel{std::in_place}; 0025 std::optional<MuBremsModel> mu; 0026 0027 //! Use a unified relativistic/SB interactor 0028 bool combined_model{false}; 0029 }; 0030 //---------------------------------------------------------------------------// 0031 /*! 0032 * Construct a physics process for electron/positron pair production. 0033 */ 0034 struct PairProductionProcess 0035 { 0036 //! Bethe-Heitler pair production 0037 std::optional<BetheHeitlerModel> bethe_heitler; 0038 //! Muonic pair production 0039 std::optional<MuPairProductionModel> mu; 0040 }; 0041 0042 //---------------------------------------------------------------------------// 0043 //!@{ 0044 //! \name Process aliases 0045 //! \todo rename `em/model` to match, merge muon and electron proceses 0046 0047 using BremsstrahlungProcess = BremsProcess; 0048 using GammaConversionProcess = PairProductionProcess; 0049 using MuPairProductionProcess = PairProductionProcess; 0050 0051 //!@} 0052 0053 //---------------------------------------------------------------------------// 0054 } // namespace inp 0055 } // namespace celeritas
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |