Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-06-26 07:50:30

0001 #pragma once
0002 
0003 #include <vector>
0004 
0005 #include "scuda.h"
0006 #include "sphoton.h"
0007 #include "storch.h"
0008 
0009 inline const storch default_torch{
0010     .gentype = OpticksGenstep_TORCH,
0011     .trackid = 0,
0012     .matline = 0,
0013     .numphoton = 100,
0014 
0015     // Assign default values for position, time, momentum, and other attributes
0016     .pos = {-10.0f, -30.0f, -90.0f},
0017     .time = 0.0f,
0018 
0019     .mom = normalize(make_float3(0.0f, 0.3f, 1.0f)),
0020     .weight = 0.0f,
0021 
0022     .pol = {1.0f, 0.0f, 0.0f},
0023     .wavelength = 420.0f,
0024 
0025     .zenith = {0.0f, 1.0f},
0026     .azimuth = {0.0f, 1.0f},
0027 
0028     .radius = 15.0f,
0029     .distance = 0.0f,
0030     .mode = 255,
0031     .type = T_DISC,
0032 };
0033 
0034 std::vector<sphoton> generate_photons(const storch& torch = default_torch, unsigned int num_photons = 0, unsigned int seed = 0);