xsuite 0.41.1__cp313-cp313-macosx_11_0_arm64.whl → 0.41.2__cp313-cp313-macosx_11_0_arm64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of xsuite might be problematic. Click here for more details.

@@ -5774,159 +5774,219 @@ enum ElementRefClass_e{ElementRefClass_ParticlesMonitorData_t};
5774
5774
  return ( void*)(( char*) obj+offset);
5775
5775
  }
5776
5776
  #endif
5777
- #ifndef XOBJ_TYPEDEF_RandomNormalData
5778
- #define XOBJ_TYPEDEF_RandomNormalData
5779
- typedef struct RandomNormalData_s * RandomNormalData;
5780
- static inline RandomNormalData RandomNormalData_getp(RandomNormalData restrict obj){
5777
+ #ifndef XOBJ_TYPEDEF_RandomRutherfordData
5778
+ #define XOBJ_TYPEDEF_RandomRutherfordData
5779
+ typedef struct RandomRutherfordData_s * RandomRutherfordData;
5780
+ static inline RandomRutherfordData RandomRutherfordData_getp(RandomRutherfordData restrict obj){
5781
5781
  int64_t offset=0;
5782
- return (RandomNormalData)(( char*) obj+offset);
5782
+ return (RandomRutherfordData)(( char*) obj+offset);
5783
5783
  }
5784
- static inline uint8_t RandomNormalData_get__dummy(const RandomNormalData restrict obj){
5784
+ static inline double RandomRutherfordData_get_lower_val(const RandomRutherfordData restrict obj){
5785
5785
  int64_t offset=0;
5786
- return *(( uint8_t*) obj+offset);
5786
+ return *( double*)(( char*) obj+offset);
5787
5787
  }
5788
- static inline void RandomNormalData_set__dummy(RandomNormalData restrict obj, uint8_t value){
5788
+ static inline void RandomRutherfordData_set_lower_val(RandomRutherfordData restrict obj, double value){
5789
5789
  int64_t offset=0;
5790
- *(( uint8_t*) obj+offset)=value;
5790
+ *( double*)(( char*) obj+offset)=value;
5791
5791
  }
5792
- static inline uint8_t* RandomNormalData_getp__dummy(RandomNormalData restrict obj){
5792
+ static inline double* RandomRutherfordData_getp_lower_val(RandomRutherfordData restrict obj){
5793
5793
  int64_t offset=0;
5794
- return ( uint8_t*)(( char*) obj+offset);
5794
+ return ( double*)(( char*) obj+offset);
5795
5795
  }
5796
- static inline double RandomNormalData_get__sin_rot_s(const RandomNormalData restrict obj){
5796
+ static inline double RandomRutherfordData_get_upper_val(const RandomRutherfordData restrict obj){
5797
5797
  int64_t offset=0;
5798
5798
  offset+=8;
5799
5799
  return *( double*)(( char*) obj+offset);
5800
5800
  }
5801
- static inline void RandomNormalData_set__sin_rot_s(RandomNormalData restrict obj, double value){
5801
+ static inline void RandomRutherfordData_set_upper_val(RandomRutherfordData restrict obj, double value){
5802
5802
  int64_t offset=0;
5803
5803
  offset+=8;
5804
5804
  *( double*)(( char*) obj+offset)=value;
5805
5805
  }
5806
- static inline double* RandomNormalData_getp__sin_rot_s(RandomNormalData restrict obj){
5806
+ static inline double* RandomRutherfordData_getp_upper_val(RandomRutherfordData restrict obj){
5807
5807
  int64_t offset=0;
5808
5808
  offset+=8;
5809
5809
  return ( double*)(( char*) obj+offset);
5810
5810
  }
5811
- static inline double RandomNormalData_get__cos_rot_s(const RandomNormalData restrict obj){
5811
+ static inline double RandomRutherfordData_get_A(const RandomRutherfordData restrict obj){
5812
5812
  int64_t offset=0;
5813
5813
  offset+=16;
5814
5814
  return *( double*)(( char*) obj+offset);
5815
5815
  }
5816
- static inline void RandomNormalData_set__cos_rot_s(RandomNormalData restrict obj, double value){
5816
+ static inline void RandomRutherfordData_set_A(RandomRutherfordData restrict obj, double value){
5817
5817
  int64_t offset=0;
5818
5818
  offset+=16;
5819
5819
  *( double*)(( char*) obj+offset)=value;
5820
5820
  }
5821
- static inline double* RandomNormalData_getp__cos_rot_s(RandomNormalData restrict obj){
5821
+ static inline double* RandomRutherfordData_getp_A(RandomRutherfordData restrict obj){
5822
5822
  int64_t offset=0;
5823
5823
  offset+=16;
5824
5824
  return ( double*)(( char*) obj+offset);
5825
5825
  }
5826
- static inline double RandomNormalData_get__shift_x(const RandomNormalData restrict obj){
5826
+ static inline double RandomRutherfordData_get_B(const RandomRutherfordData restrict obj){
5827
5827
  int64_t offset=0;
5828
5828
  offset+=24;
5829
5829
  return *( double*)(( char*) obj+offset);
5830
5830
  }
5831
- static inline void RandomNormalData_set__shift_x(RandomNormalData restrict obj, double value){
5831
+ static inline void RandomRutherfordData_set_B(RandomRutherfordData restrict obj, double value){
5832
5832
  int64_t offset=0;
5833
5833
  offset+=24;
5834
5834
  *( double*)(( char*) obj+offset)=value;
5835
5835
  }
5836
- static inline double* RandomNormalData_getp__shift_x(RandomNormalData restrict obj){
5836
+ static inline double* RandomRutherfordData_getp_B(RandomRutherfordData restrict obj){
5837
5837
  int64_t offset=0;
5838
5838
  offset+=24;
5839
5839
  return ( double*)(( char*) obj+offset);
5840
5840
  }
5841
- static inline double RandomNormalData_get__shift_y(const RandomNormalData restrict obj){
5841
+ static inline int8_t RandomRutherfordData_get_Newton_iterations(const RandomRutherfordData restrict obj){
5842
5842
  int64_t offset=0;
5843
5843
  offset+=32;
5844
- return *( double*)(( char*) obj+offset);
5844
+ return *(( int8_t*) obj+offset);
5845
5845
  }
5846
- static inline void RandomNormalData_set__shift_y(RandomNormalData restrict obj, double value){
5846
+ static inline void RandomRutherfordData_set_Newton_iterations(RandomRutherfordData restrict obj, int8_t value){
5847
5847
  int64_t offset=0;
5848
5848
  offset+=32;
5849
- *( double*)(( char*) obj+offset)=value;
5849
+ *(( int8_t*) obj+offset)=value;
5850
5850
  }
5851
- static inline double* RandomNormalData_getp__shift_y(RandomNormalData restrict obj){
5851
+ static inline int8_t* RandomRutherfordData_getp_Newton_iterations(RandomRutherfordData restrict obj){
5852
5852
  int64_t offset=0;
5853
5853
  offset+=32;
5854
- return ( double*)(( char*) obj+offset);
5854
+ return ( int8_t*)(( char*) obj+offset);
5855
5855
  }
5856
- static inline double RandomNormalData_get__shift_s(const RandomNormalData restrict obj){
5856
+ static inline double RandomRutherfordData_get__sin_rot_s(const RandomRutherfordData restrict obj){
5857
5857
  int64_t offset=0;
5858
5858
  offset+=40;
5859
5859
  return *( double*)(( char*) obj+offset);
5860
5860
  }
5861
- static inline void RandomNormalData_set__shift_s(RandomNormalData restrict obj, double value){
5861
+ static inline void RandomRutherfordData_set__sin_rot_s(RandomRutherfordData restrict obj, double value){
5862
5862
  int64_t offset=0;
5863
5863
  offset+=40;
5864
5864
  *( double*)(( char*) obj+offset)=value;
5865
5865
  }
5866
- static inline double* RandomNormalData_getp__shift_s(RandomNormalData restrict obj){
5866
+ static inline double* RandomRutherfordData_getp__sin_rot_s(RandomRutherfordData restrict obj){
5867
5867
  int64_t offset=0;
5868
5868
  offset+=40;
5869
5869
  return ( double*)(( char*) obj+offset);
5870
5870
  }
5871
- static inline double RandomNormalData_get__rot_x_rad(const RandomNormalData restrict obj){
5871
+ static inline double RandomRutherfordData_get__cos_rot_s(const RandomRutherfordData restrict obj){
5872
5872
  int64_t offset=0;
5873
5873
  offset+=48;
5874
5874
  return *( double*)(( char*) obj+offset);
5875
5875
  }
5876
- static inline void RandomNormalData_set__rot_x_rad(RandomNormalData restrict obj, double value){
5876
+ static inline void RandomRutherfordData_set__cos_rot_s(RandomRutherfordData restrict obj, double value){
5877
5877
  int64_t offset=0;
5878
5878
  offset+=48;
5879
5879
  *( double*)(( char*) obj+offset)=value;
5880
5880
  }
5881
- static inline double* RandomNormalData_getp__rot_x_rad(RandomNormalData restrict obj){
5881
+ static inline double* RandomRutherfordData_getp__cos_rot_s(RandomRutherfordData restrict obj){
5882
5882
  int64_t offset=0;
5883
5883
  offset+=48;
5884
5884
  return ( double*)(( char*) obj+offset);
5885
5885
  }
5886
- static inline double RandomNormalData_get__rot_y_rad(const RandomNormalData restrict obj){
5886
+ static inline double RandomRutherfordData_get__shift_x(const RandomRutherfordData restrict obj){
5887
5887
  int64_t offset=0;
5888
5888
  offset+=56;
5889
5889
  return *( double*)(( char*) obj+offset);
5890
5890
  }
5891
- static inline void RandomNormalData_set__rot_y_rad(RandomNormalData restrict obj, double value){
5891
+ static inline void RandomRutherfordData_set__shift_x(RandomRutherfordData restrict obj, double value){
5892
5892
  int64_t offset=0;
5893
5893
  offset+=56;
5894
5894
  *( double*)(( char*) obj+offset)=value;
5895
5895
  }
5896
- static inline double* RandomNormalData_getp__rot_y_rad(RandomNormalData restrict obj){
5896
+ static inline double* RandomRutherfordData_getp__shift_x(RandomRutherfordData restrict obj){
5897
5897
  int64_t offset=0;
5898
5898
  offset+=56;
5899
5899
  return ( double*)(( char*) obj+offset);
5900
5900
  }
5901
- static inline double RandomNormalData_get__rot_s_rad_no_frame(const RandomNormalData restrict obj){
5901
+ static inline double RandomRutherfordData_get__shift_y(const RandomRutherfordData restrict obj){
5902
5902
  int64_t offset=0;
5903
5903
  offset+=64;
5904
5904
  return *( double*)(( char*) obj+offset);
5905
5905
  }
5906
- static inline void RandomNormalData_set__rot_s_rad_no_frame(RandomNormalData restrict obj, double value){
5906
+ static inline void RandomRutherfordData_set__shift_y(RandomRutherfordData restrict obj, double value){
5907
5907
  int64_t offset=0;
5908
5908
  offset+=64;
5909
5909
  *( double*)(( char*) obj+offset)=value;
5910
5910
  }
5911
- static inline double* RandomNormalData_getp__rot_s_rad_no_frame(RandomNormalData restrict obj){
5911
+ static inline double* RandomRutherfordData_getp__shift_y(RandomRutherfordData restrict obj){
5912
5912
  int64_t offset=0;
5913
5913
  offset+=64;
5914
5914
  return ( double*)(( char*) obj+offset);
5915
5915
  }
5916
- static inline double RandomNormalData_get_rot_shift_anchor(const RandomNormalData restrict obj){
5916
+ static inline double RandomRutherfordData_get__shift_s(const RandomRutherfordData restrict obj){
5917
5917
  int64_t offset=0;
5918
5918
  offset+=72;
5919
5919
  return *( double*)(( char*) obj+offset);
5920
5920
  }
5921
- static inline void RandomNormalData_set_rot_shift_anchor(RandomNormalData restrict obj, double value){
5921
+ static inline void RandomRutherfordData_set__shift_s(RandomRutherfordData restrict obj, double value){
5922
5922
  int64_t offset=0;
5923
5923
  offset+=72;
5924
5924
  *( double*)(( char*) obj+offset)=value;
5925
5925
  }
5926
- static inline double* RandomNormalData_getp_rot_shift_anchor(RandomNormalData restrict obj){
5926
+ static inline double* RandomRutherfordData_getp__shift_s(RandomRutherfordData restrict obj){
5927
5927
  int64_t offset=0;
5928
5928
  offset+=72;
5929
5929
  return ( double*)(( char*) obj+offset);
5930
+ }
5931
+ static inline double RandomRutherfordData_get__rot_x_rad(const RandomRutherfordData restrict obj){
5932
+ int64_t offset=0;
5933
+ offset+=80;
5934
+ return *( double*)(( char*) obj+offset);
5935
+ }
5936
+ static inline void RandomRutherfordData_set__rot_x_rad(RandomRutherfordData restrict obj, double value){
5937
+ int64_t offset=0;
5938
+ offset+=80;
5939
+ *( double*)(( char*) obj+offset)=value;
5940
+ }
5941
+ static inline double* RandomRutherfordData_getp__rot_x_rad(RandomRutherfordData restrict obj){
5942
+ int64_t offset=0;
5943
+ offset+=80;
5944
+ return ( double*)(( char*) obj+offset);
5945
+ }
5946
+ static inline double RandomRutherfordData_get__rot_y_rad(const RandomRutherfordData restrict obj){
5947
+ int64_t offset=0;
5948
+ offset+=88;
5949
+ return *( double*)(( char*) obj+offset);
5950
+ }
5951
+ static inline void RandomRutherfordData_set__rot_y_rad(RandomRutherfordData restrict obj, double value){
5952
+ int64_t offset=0;
5953
+ offset+=88;
5954
+ *( double*)(( char*) obj+offset)=value;
5955
+ }
5956
+ static inline double* RandomRutherfordData_getp__rot_y_rad(RandomRutherfordData restrict obj){
5957
+ int64_t offset=0;
5958
+ offset+=88;
5959
+ return ( double*)(( char*) obj+offset);
5960
+ }
5961
+ static inline double RandomRutherfordData_get__rot_s_rad_no_frame(const RandomRutherfordData restrict obj){
5962
+ int64_t offset=0;
5963
+ offset+=96;
5964
+ return *( double*)(( char*) obj+offset);
5965
+ }
5966
+ static inline void RandomRutherfordData_set__rot_s_rad_no_frame(RandomRutherfordData restrict obj, double value){
5967
+ int64_t offset=0;
5968
+ offset+=96;
5969
+ *( double*)(( char*) obj+offset)=value;
5970
+ }
5971
+ static inline double* RandomRutherfordData_getp__rot_s_rad_no_frame(RandomRutherfordData restrict obj){
5972
+ int64_t offset=0;
5973
+ offset+=96;
5974
+ return ( double*)(( char*) obj+offset);
5975
+ }
5976
+ static inline double RandomRutherfordData_get_rot_shift_anchor(const RandomRutherfordData restrict obj){
5977
+ int64_t offset=0;
5978
+ offset+=104;
5979
+ return *( double*)(( char*) obj+offset);
5980
+ }
5981
+ static inline void RandomRutherfordData_set_rot_shift_anchor(RandomRutherfordData restrict obj, double value){
5982
+ int64_t offset=0;
5983
+ offset+=104;
5984
+ *( double*)(( char*) obj+offset)=value;
5985
+ }
5986
+ static inline double* RandomRutherfordData_getp_rot_shift_anchor(RandomRutherfordData restrict obj){
5987
+ int64_t offset=0;
5988
+ offset+=104;
5989
+ return ( double*)(( char*) obj+offset);
5930
5990
  }
5931
5991
  #endif
5932
5992
  // copyright ############################### //
@@ -6138,11 +6198,11 @@ void Drift_single_particle(LocalParticle* part, double length){
6138
6198
 
6139
6199
  #endif // XSTUITE_TRACK_FLAGS_H
6140
6200
 
6141
- #include <random/random_src/normal.h>
6201
+ #include <random/random_src/rutherford.h>
6142
6202
 
6143
6203
 
6144
- void sample_gauss(
6145
- RandomNormalData el,
6204
+ void sample_ruth(
6205
+ RandomRutherfordData el,
6146
6206
 
6147
6207
  ParticlesData particles,
6148
6208
  double* samples, int64_t n_samples_per_seed,
@@ -6190,7 +6250,7 @@ void Drift_single_particle(LocalParticle* part, double length){
6190
6250
  if (part_id<part_capacity){
6191
6251
  Particles_to_LocalParticle(particles, &lpart, part_id, end_id);
6192
6252
  if (check_is_active(&lpart)>0){
6193
- RandomNormal_sample(el, &lpart, samples, n_samples_per_seed);
6253
+ RandomRutherford_sample(el, &lpart, samples, n_samples_per_seed);
6194
6254
 
6195
6255
  }
6196
6256
  if (check_is_active(&lpart)>0 && flag_increment_at_element){
@@ -6209,156 +6269,156 @@ void Drift_single_particle(LocalParticle* part, double length){
6209
6269
  // #endif //only_for_context cpu_openmp
6210
6270
  }
6211
6271
 
6212
- #ifndef XOBJ_TYPEDEF_RandomExponentialData
6213
- #define XOBJ_TYPEDEF_RandomExponentialData
6214
- typedef struct RandomExponentialData_s * RandomExponentialData;
6215
- static inline RandomExponentialData RandomExponentialData_getp(RandomExponentialData restrict obj){
6272
+ #ifndef XOBJ_TYPEDEF_RandomNormalData
6273
+ #define XOBJ_TYPEDEF_RandomNormalData
6274
+ typedef struct RandomNormalData_s * RandomNormalData;
6275
+ static inline RandomNormalData RandomNormalData_getp(RandomNormalData restrict obj){
6216
6276
  int64_t offset=0;
6217
- return (RandomExponentialData)(( char*) obj+offset);
6277
+ return (RandomNormalData)(( char*) obj+offset);
6218
6278
  }
6219
- static inline uint8_t RandomExponentialData_get__dummy(const RandomExponentialData restrict obj){
6279
+ static inline uint8_t RandomNormalData_get__dummy(const RandomNormalData restrict obj){
6220
6280
  int64_t offset=0;
6221
6281
  return *(( uint8_t*) obj+offset);
6222
6282
  }
6223
- static inline void RandomExponentialData_set__dummy(RandomExponentialData restrict obj, uint8_t value){
6283
+ static inline void RandomNormalData_set__dummy(RandomNormalData restrict obj, uint8_t value){
6224
6284
  int64_t offset=0;
6225
6285
  *(( uint8_t*) obj+offset)=value;
6226
6286
  }
6227
- static inline uint8_t* RandomExponentialData_getp__dummy(RandomExponentialData restrict obj){
6287
+ static inline uint8_t* RandomNormalData_getp__dummy(RandomNormalData restrict obj){
6228
6288
  int64_t offset=0;
6229
6289
  return ( uint8_t*)(( char*) obj+offset);
6230
6290
  }
6231
- static inline double RandomExponentialData_get__sin_rot_s(const RandomExponentialData restrict obj){
6291
+ static inline double RandomNormalData_get__sin_rot_s(const RandomNormalData restrict obj){
6232
6292
  int64_t offset=0;
6233
6293
  offset+=8;
6234
6294
  return *( double*)(( char*) obj+offset);
6235
6295
  }
6236
- static inline void RandomExponentialData_set__sin_rot_s(RandomExponentialData restrict obj, double value){
6296
+ static inline void RandomNormalData_set__sin_rot_s(RandomNormalData restrict obj, double value){
6237
6297
  int64_t offset=0;
6238
6298
  offset+=8;
6239
6299
  *( double*)(( char*) obj+offset)=value;
6240
6300
  }
6241
- static inline double* RandomExponentialData_getp__sin_rot_s(RandomExponentialData restrict obj){
6301
+ static inline double* RandomNormalData_getp__sin_rot_s(RandomNormalData restrict obj){
6242
6302
  int64_t offset=0;
6243
6303
  offset+=8;
6244
6304
  return ( double*)(( char*) obj+offset);
6245
6305
  }
6246
- static inline double RandomExponentialData_get__cos_rot_s(const RandomExponentialData restrict obj){
6306
+ static inline double RandomNormalData_get__cos_rot_s(const RandomNormalData restrict obj){
6247
6307
  int64_t offset=0;
6248
6308
  offset+=16;
6249
6309
  return *( double*)(( char*) obj+offset);
6250
6310
  }
6251
- static inline void RandomExponentialData_set__cos_rot_s(RandomExponentialData restrict obj, double value){
6311
+ static inline void RandomNormalData_set__cos_rot_s(RandomNormalData restrict obj, double value){
6252
6312
  int64_t offset=0;
6253
6313
  offset+=16;
6254
6314
  *( double*)(( char*) obj+offset)=value;
6255
6315
  }
6256
- static inline double* RandomExponentialData_getp__cos_rot_s(RandomExponentialData restrict obj){
6316
+ static inline double* RandomNormalData_getp__cos_rot_s(RandomNormalData restrict obj){
6257
6317
  int64_t offset=0;
6258
6318
  offset+=16;
6259
6319
  return ( double*)(( char*) obj+offset);
6260
6320
  }
6261
- static inline double RandomExponentialData_get__shift_x(const RandomExponentialData restrict obj){
6321
+ static inline double RandomNormalData_get__shift_x(const RandomNormalData restrict obj){
6262
6322
  int64_t offset=0;
6263
6323
  offset+=24;
6264
6324
  return *( double*)(( char*) obj+offset);
6265
6325
  }
6266
- static inline void RandomExponentialData_set__shift_x(RandomExponentialData restrict obj, double value){
6326
+ static inline void RandomNormalData_set__shift_x(RandomNormalData restrict obj, double value){
6267
6327
  int64_t offset=0;
6268
6328
  offset+=24;
6269
6329
  *( double*)(( char*) obj+offset)=value;
6270
6330
  }
6271
- static inline double* RandomExponentialData_getp__shift_x(RandomExponentialData restrict obj){
6331
+ static inline double* RandomNormalData_getp__shift_x(RandomNormalData restrict obj){
6272
6332
  int64_t offset=0;
6273
6333
  offset+=24;
6274
6334
  return ( double*)(( char*) obj+offset);
6275
6335
  }
6276
- static inline double RandomExponentialData_get__shift_y(const RandomExponentialData restrict obj){
6336
+ static inline double RandomNormalData_get__shift_y(const RandomNormalData restrict obj){
6277
6337
  int64_t offset=0;
6278
6338
  offset+=32;
6279
6339
  return *( double*)(( char*) obj+offset);
6280
6340
  }
6281
- static inline void RandomExponentialData_set__shift_y(RandomExponentialData restrict obj, double value){
6341
+ static inline void RandomNormalData_set__shift_y(RandomNormalData restrict obj, double value){
6282
6342
  int64_t offset=0;
6283
6343
  offset+=32;
6284
6344
  *( double*)(( char*) obj+offset)=value;
6285
6345
  }
6286
- static inline double* RandomExponentialData_getp__shift_y(RandomExponentialData restrict obj){
6346
+ static inline double* RandomNormalData_getp__shift_y(RandomNormalData restrict obj){
6287
6347
  int64_t offset=0;
6288
6348
  offset+=32;
6289
6349
  return ( double*)(( char*) obj+offset);
6290
6350
  }
6291
- static inline double RandomExponentialData_get__shift_s(const RandomExponentialData restrict obj){
6351
+ static inline double RandomNormalData_get__shift_s(const RandomNormalData restrict obj){
6292
6352
  int64_t offset=0;
6293
6353
  offset+=40;
6294
6354
  return *( double*)(( char*) obj+offset);
6295
6355
  }
6296
- static inline void RandomExponentialData_set__shift_s(RandomExponentialData restrict obj, double value){
6356
+ static inline void RandomNormalData_set__shift_s(RandomNormalData restrict obj, double value){
6297
6357
  int64_t offset=0;
6298
6358
  offset+=40;
6299
6359
  *( double*)(( char*) obj+offset)=value;
6300
6360
  }
6301
- static inline double* RandomExponentialData_getp__shift_s(RandomExponentialData restrict obj){
6361
+ static inline double* RandomNormalData_getp__shift_s(RandomNormalData restrict obj){
6302
6362
  int64_t offset=0;
6303
6363
  offset+=40;
6304
6364
  return ( double*)(( char*) obj+offset);
6305
6365
  }
6306
- static inline double RandomExponentialData_get__rot_x_rad(const RandomExponentialData restrict obj){
6366
+ static inline double RandomNormalData_get__rot_x_rad(const RandomNormalData restrict obj){
6307
6367
  int64_t offset=0;
6308
6368
  offset+=48;
6309
6369
  return *( double*)(( char*) obj+offset);
6310
6370
  }
6311
- static inline void RandomExponentialData_set__rot_x_rad(RandomExponentialData restrict obj, double value){
6371
+ static inline void RandomNormalData_set__rot_x_rad(RandomNormalData restrict obj, double value){
6312
6372
  int64_t offset=0;
6313
6373
  offset+=48;
6314
6374
  *( double*)(( char*) obj+offset)=value;
6315
6375
  }
6316
- static inline double* RandomExponentialData_getp__rot_x_rad(RandomExponentialData restrict obj){
6376
+ static inline double* RandomNormalData_getp__rot_x_rad(RandomNormalData restrict obj){
6317
6377
  int64_t offset=0;
6318
6378
  offset+=48;
6319
6379
  return ( double*)(( char*) obj+offset);
6320
6380
  }
6321
- static inline double RandomExponentialData_get__rot_y_rad(const RandomExponentialData restrict obj){
6381
+ static inline double RandomNormalData_get__rot_y_rad(const RandomNormalData restrict obj){
6322
6382
  int64_t offset=0;
6323
6383
  offset+=56;
6324
6384
  return *( double*)(( char*) obj+offset);
6325
6385
  }
6326
- static inline void RandomExponentialData_set__rot_y_rad(RandomExponentialData restrict obj, double value){
6386
+ static inline void RandomNormalData_set__rot_y_rad(RandomNormalData restrict obj, double value){
6327
6387
  int64_t offset=0;
6328
6388
  offset+=56;
6329
6389
  *( double*)(( char*) obj+offset)=value;
6330
6390
  }
6331
- static inline double* RandomExponentialData_getp__rot_y_rad(RandomExponentialData restrict obj){
6391
+ static inline double* RandomNormalData_getp__rot_y_rad(RandomNormalData restrict obj){
6332
6392
  int64_t offset=0;
6333
6393
  offset+=56;
6334
6394
  return ( double*)(( char*) obj+offset);
6335
6395
  }
6336
- static inline double RandomExponentialData_get__rot_s_rad_no_frame(const RandomExponentialData restrict obj){
6396
+ static inline double RandomNormalData_get__rot_s_rad_no_frame(const RandomNormalData restrict obj){
6337
6397
  int64_t offset=0;
6338
6398
  offset+=64;
6339
6399
  return *( double*)(( char*) obj+offset);
6340
6400
  }
6341
- static inline void RandomExponentialData_set__rot_s_rad_no_frame(RandomExponentialData restrict obj, double value){
6401
+ static inline void RandomNormalData_set__rot_s_rad_no_frame(RandomNormalData restrict obj, double value){
6342
6402
  int64_t offset=0;
6343
6403
  offset+=64;
6344
6404
  *( double*)(( char*) obj+offset)=value;
6345
6405
  }
6346
- static inline double* RandomExponentialData_getp__rot_s_rad_no_frame(RandomExponentialData restrict obj){
6406
+ static inline double* RandomNormalData_getp__rot_s_rad_no_frame(RandomNormalData restrict obj){
6347
6407
  int64_t offset=0;
6348
6408
  offset+=64;
6349
6409
  return ( double*)(( char*) obj+offset);
6350
6410
  }
6351
- static inline double RandomExponentialData_get_rot_shift_anchor(const RandomExponentialData restrict obj){
6411
+ static inline double RandomNormalData_get_rot_shift_anchor(const RandomNormalData restrict obj){
6352
6412
  int64_t offset=0;
6353
6413
  offset+=72;
6354
6414
  return *( double*)(( char*) obj+offset);
6355
6415
  }
6356
- static inline void RandomExponentialData_set_rot_shift_anchor(RandomExponentialData restrict obj, double value){
6416
+ static inline void RandomNormalData_set_rot_shift_anchor(RandomNormalData restrict obj, double value){
6357
6417
  int64_t offset=0;
6358
6418
  offset+=72;
6359
6419
  *( double*)(( char*) obj+offset)=value;
6360
6420
  }
6361
- static inline double* RandomExponentialData_getp_rot_shift_anchor(RandomExponentialData restrict obj){
6421
+ static inline double* RandomNormalData_getp_rot_shift_anchor(RandomNormalData restrict obj){
6362
6422
  int64_t offset=0;
6363
6423
  offset+=72;
6364
6424
  return ( double*)(( char*) obj+offset);
@@ -6573,11 +6633,11 @@ void Drift_single_particle(LocalParticle* part, double length){
6573
6633
 
6574
6634
  #endif // XSTUITE_TRACK_FLAGS_H
6575
6635
 
6576
- #include <random/random_src/exponential.h>
6636
+ #include <random/random_src/normal.h>
6577
6637
 
6578
6638
 
6579
- void sample_exp(
6580
- RandomExponentialData el,
6639
+ void sample_gauss(
6640
+ RandomNormalData el,
6581
6641
 
6582
6642
  ParticlesData particles,
6583
6643
  double* samples, int64_t n_samples_per_seed,
@@ -6625,7 +6685,7 @@ void Drift_single_particle(LocalParticle* part, double length){
6625
6685
  if (part_id<part_capacity){
6626
6686
  Particles_to_LocalParticle(particles, &lpart, part_id, end_id);
6627
6687
  if (check_is_active(&lpart)>0){
6628
- RandomExponential_sample(el, &lpart, samples, n_samples_per_seed);
6688
+ RandomNormal_sample(el, &lpart, samples, n_samples_per_seed);
6629
6689
 
6630
6690
  }
6631
6691
  if (check_is_active(&lpart)>0 && flag_increment_at_element){
@@ -6644,219 +6704,159 @@ void Drift_single_particle(LocalParticle* part, double length){
6644
6704
  // #endif //only_for_context cpu_openmp
6645
6705
  }
6646
6706
 
6647
- #ifndef XOBJ_TYPEDEF_RandomRutherfordData
6648
- #define XOBJ_TYPEDEF_RandomRutherfordData
6649
- typedef struct RandomRutherfordData_s * RandomRutherfordData;
6650
- static inline RandomRutherfordData RandomRutherfordData_getp(RandomRutherfordData restrict obj){
6707
+ #ifndef XOBJ_TYPEDEF_RandomExponentialData
6708
+ #define XOBJ_TYPEDEF_RandomExponentialData
6709
+ typedef struct RandomExponentialData_s * RandomExponentialData;
6710
+ static inline RandomExponentialData RandomExponentialData_getp(RandomExponentialData restrict obj){
6651
6711
  int64_t offset=0;
6652
- return (RandomRutherfordData)(( char*) obj+offset);
6712
+ return (RandomExponentialData)(( char*) obj+offset);
6653
6713
  }
6654
- static inline double RandomRutherfordData_get_lower_val(const RandomRutherfordData restrict obj){
6714
+ static inline uint8_t RandomExponentialData_get__dummy(const RandomExponentialData restrict obj){
6655
6715
  int64_t offset=0;
6656
- return *( double*)(( char*) obj+offset);
6716
+ return *(( uint8_t*) obj+offset);
6657
6717
  }
6658
- static inline void RandomRutherfordData_set_lower_val(RandomRutherfordData restrict obj, double value){
6718
+ static inline void RandomExponentialData_set__dummy(RandomExponentialData restrict obj, uint8_t value){
6659
6719
  int64_t offset=0;
6660
- *( double*)(( char*) obj+offset)=value;
6720
+ *(( uint8_t*) obj+offset)=value;
6661
6721
  }
6662
- static inline double* RandomRutherfordData_getp_lower_val(RandomRutherfordData restrict obj){
6722
+ static inline uint8_t* RandomExponentialData_getp__dummy(RandomExponentialData restrict obj){
6663
6723
  int64_t offset=0;
6664
- return ( double*)(( char*) obj+offset);
6724
+ return ( uint8_t*)(( char*) obj+offset);
6665
6725
  }
6666
- static inline double RandomRutherfordData_get_upper_val(const RandomRutherfordData restrict obj){
6726
+ static inline double RandomExponentialData_get__sin_rot_s(const RandomExponentialData restrict obj){
6667
6727
  int64_t offset=0;
6668
6728
  offset+=8;
6669
6729
  return *( double*)(( char*) obj+offset);
6670
6730
  }
6671
- static inline void RandomRutherfordData_set_upper_val(RandomRutherfordData restrict obj, double value){
6731
+ static inline void RandomExponentialData_set__sin_rot_s(RandomExponentialData restrict obj, double value){
6672
6732
  int64_t offset=0;
6673
6733
  offset+=8;
6674
6734
  *( double*)(( char*) obj+offset)=value;
6675
6735
  }
6676
- static inline double* RandomRutherfordData_getp_upper_val(RandomRutherfordData restrict obj){
6736
+ static inline double* RandomExponentialData_getp__sin_rot_s(RandomExponentialData restrict obj){
6677
6737
  int64_t offset=0;
6678
6738
  offset+=8;
6679
6739
  return ( double*)(( char*) obj+offset);
6680
6740
  }
6681
- static inline double RandomRutherfordData_get_A(const RandomRutherfordData restrict obj){
6741
+ static inline double RandomExponentialData_get__cos_rot_s(const RandomExponentialData restrict obj){
6682
6742
  int64_t offset=0;
6683
6743
  offset+=16;
6684
6744
  return *( double*)(( char*) obj+offset);
6685
6745
  }
6686
- static inline void RandomRutherfordData_set_A(RandomRutherfordData restrict obj, double value){
6746
+ static inline void RandomExponentialData_set__cos_rot_s(RandomExponentialData restrict obj, double value){
6687
6747
  int64_t offset=0;
6688
6748
  offset+=16;
6689
6749
  *( double*)(( char*) obj+offset)=value;
6690
6750
  }
6691
- static inline double* RandomRutherfordData_getp_A(RandomRutherfordData restrict obj){
6751
+ static inline double* RandomExponentialData_getp__cos_rot_s(RandomExponentialData restrict obj){
6692
6752
  int64_t offset=0;
6693
6753
  offset+=16;
6694
6754
  return ( double*)(( char*) obj+offset);
6695
6755
  }
6696
- static inline double RandomRutherfordData_get_B(const RandomRutherfordData restrict obj){
6756
+ static inline double RandomExponentialData_get__shift_x(const RandomExponentialData restrict obj){
6697
6757
  int64_t offset=0;
6698
6758
  offset+=24;
6699
6759
  return *( double*)(( char*) obj+offset);
6700
6760
  }
6701
- static inline void RandomRutherfordData_set_B(RandomRutherfordData restrict obj, double value){
6761
+ static inline void RandomExponentialData_set__shift_x(RandomExponentialData restrict obj, double value){
6702
6762
  int64_t offset=0;
6703
6763
  offset+=24;
6704
6764
  *( double*)(( char*) obj+offset)=value;
6705
6765
  }
6706
- static inline double* RandomRutherfordData_getp_B(RandomRutherfordData restrict obj){
6766
+ static inline double* RandomExponentialData_getp__shift_x(RandomExponentialData restrict obj){
6707
6767
  int64_t offset=0;
6708
6768
  offset+=24;
6709
6769
  return ( double*)(( char*) obj+offset);
6710
6770
  }
6711
- static inline int8_t RandomRutherfordData_get_Newton_iterations(const RandomRutherfordData restrict obj){
6771
+ static inline double RandomExponentialData_get__shift_y(const RandomExponentialData restrict obj){
6712
6772
  int64_t offset=0;
6713
6773
  offset+=32;
6714
- return *(( int8_t*) obj+offset);
6774
+ return *( double*)(( char*) obj+offset);
6715
6775
  }
6716
- static inline void RandomRutherfordData_set_Newton_iterations(RandomRutherfordData restrict obj, int8_t value){
6776
+ static inline void RandomExponentialData_set__shift_y(RandomExponentialData restrict obj, double value){
6717
6777
  int64_t offset=0;
6718
6778
  offset+=32;
6719
- *(( int8_t*) obj+offset)=value;
6779
+ *( double*)(( char*) obj+offset)=value;
6720
6780
  }
6721
- static inline int8_t* RandomRutherfordData_getp_Newton_iterations(RandomRutherfordData restrict obj){
6781
+ static inline double* RandomExponentialData_getp__shift_y(RandomExponentialData restrict obj){
6722
6782
  int64_t offset=0;
6723
6783
  offset+=32;
6724
- return ( int8_t*)(( char*) obj+offset);
6784
+ return ( double*)(( char*) obj+offset);
6725
6785
  }
6726
- static inline double RandomRutherfordData_get__sin_rot_s(const RandomRutherfordData restrict obj){
6786
+ static inline double RandomExponentialData_get__shift_s(const RandomExponentialData restrict obj){
6727
6787
  int64_t offset=0;
6728
6788
  offset+=40;
6729
6789
  return *( double*)(( char*) obj+offset);
6730
6790
  }
6731
- static inline void RandomRutherfordData_set__sin_rot_s(RandomRutherfordData restrict obj, double value){
6791
+ static inline void RandomExponentialData_set__shift_s(RandomExponentialData restrict obj, double value){
6732
6792
  int64_t offset=0;
6733
6793
  offset+=40;
6734
6794
  *( double*)(( char*) obj+offset)=value;
6735
6795
  }
6736
- static inline double* RandomRutherfordData_getp__sin_rot_s(RandomRutherfordData restrict obj){
6796
+ static inline double* RandomExponentialData_getp__shift_s(RandomExponentialData restrict obj){
6737
6797
  int64_t offset=0;
6738
6798
  offset+=40;
6739
6799
  return ( double*)(( char*) obj+offset);
6740
6800
  }
6741
- static inline double RandomRutherfordData_get__cos_rot_s(const RandomRutherfordData restrict obj){
6801
+ static inline double RandomExponentialData_get__rot_x_rad(const RandomExponentialData restrict obj){
6742
6802
  int64_t offset=0;
6743
6803
  offset+=48;
6744
6804
  return *( double*)(( char*) obj+offset);
6745
6805
  }
6746
- static inline void RandomRutherfordData_set__cos_rot_s(RandomRutherfordData restrict obj, double value){
6806
+ static inline void RandomExponentialData_set__rot_x_rad(RandomExponentialData restrict obj, double value){
6747
6807
  int64_t offset=0;
6748
6808
  offset+=48;
6749
6809
  *( double*)(( char*) obj+offset)=value;
6750
6810
  }
6751
- static inline double* RandomRutherfordData_getp__cos_rot_s(RandomRutherfordData restrict obj){
6811
+ static inline double* RandomExponentialData_getp__rot_x_rad(RandomExponentialData restrict obj){
6752
6812
  int64_t offset=0;
6753
6813
  offset+=48;
6754
6814
  return ( double*)(( char*) obj+offset);
6755
6815
  }
6756
- static inline double RandomRutherfordData_get__shift_x(const RandomRutherfordData restrict obj){
6816
+ static inline double RandomExponentialData_get__rot_y_rad(const RandomExponentialData restrict obj){
6757
6817
  int64_t offset=0;
6758
6818
  offset+=56;
6759
6819
  return *( double*)(( char*) obj+offset);
6760
6820
  }
6761
- static inline void RandomRutherfordData_set__shift_x(RandomRutherfordData restrict obj, double value){
6821
+ static inline void RandomExponentialData_set__rot_y_rad(RandomExponentialData restrict obj, double value){
6762
6822
  int64_t offset=0;
6763
6823
  offset+=56;
6764
6824
  *( double*)(( char*) obj+offset)=value;
6765
6825
  }
6766
- static inline double* RandomRutherfordData_getp__shift_x(RandomRutherfordData restrict obj){
6826
+ static inline double* RandomExponentialData_getp__rot_y_rad(RandomExponentialData restrict obj){
6767
6827
  int64_t offset=0;
6768
6828
  offset+=56;
6769
6829
  return ( double*)(( char*) obj+offset);
6770
6830
  }
6771
- static inline double RandomRutherfordData_get__shift_y(const RandomRutherfordData restrict obj){
6831
+ static inline double RandomExponentialData_get__rot_s_rad_no_frame(const RandomExponentialData restrict obj){
6772
6832
  int64_t offset=0;
6773
6833
  offset+=64;
6774
6834
  return *( double*)(( char*) obj+offset);
6775
6835
  }
6776
- static inline void RandomRutherfordData_set__shift_y(RandomRutherfordData restrict obj, double value){
6836
+ static inline void RandomExponentialData_set__rot_s_rad_no_frame(RandomExponentialData restrict obj, double value){
6777
6837
  int64_t offset=0;
6778
6838
  offset+=64;
6779
6839
  *( double*)(( char*) obj+offset)=value;
6780
6840
  }
6781
- static inline double* RandomRutherfordData_getp__shift_y(RandomRutherfordData restrict obj){
6841
+ static inline double* RandomExponentialData_getp__rot_s_rad_no_frame(RandomExponentialData restrict obj){
6782
6842
  int64_t offset=0;
6783
6843
  offset+=64;
6784
6844
  return ( double*)(( char*) obj+offset);
6785
6845
  }
6786
- static inline double RandomRutherfordData_get__shift_s(const RandomRutherfordData restrict obj){
6846
+ static inline double RandomExponentialData_get_rot_shift_anchor(const RandomExponentialData restrict obj){
6787
6847
  int64_t offset=0;
6788
6848
  offset+=72;
6789
6849
  return *( double*)(( char*) obj+offset);
6790
6850
  }
6791
- static inline void RandomRutherfordData_set__shift_s(RandomRutherfordData restrict obj, double value){
6851
+ static inline void RandomExponentialData_set_rot_shift_anchor(RandomExponentialData restrict obj, double value){
6792
6852
  int64_t offset=0;
6793
6853
  offset+=72;
6794
6854
  *( double*)(( char*) obj+offset)=value;
6795
6855
  }
6796
- static inline double* RandomRutherfordData_getp__shift_s(RandomRutherfordData restrict obj){
6856
+ static inline double* RandomExponentialData_getp_rot_shift_anchor(RandomExponentialData restrict obj){
6797
6857
  int64_t offset=0;
6798
6858
  offset+=72;
6799
6859
  return ( double*)(( char*) obj+offset);
6800
- }
6801
- static inline double RandomRutherfordData_get__rot_x_rad(const RandomRutherfordData restrict obj){
6802
- int64_t offset=0;
6803
- offset+=80;
6804
- return *( double*)(( char*) obj+offset);
6805
- }
6806
- static inline void RandomRutherfordData_set__rot_x_rad(RandomRutherfordData restrict obj, double value){
6807
- int64_t offset=0;
6808
- offset+=80;
6809
- *( double*)(( char*) obj+offset)=value;
6810
- }
6811
- static inline double* RandomRutherfordData_getp__rot_x_rad(RandomRutherfordData restrict obj){
6812
- int64_t offset=0;
6813
- offset+=80;
6814
- return ( double*)(( char*) obj+offset);
6815
- }
6816
- static inline double RandomRutherfordData_get__rot_y_rad(const RandomRutherfordData restrict obj){
6817
- int64_t offset=0;
6818
- offset+=88;
6819
- return *( double*)(( char*) obj+offset);
6820
- }
6821
- static inline void RandomRutherfordData_set__rot_y_rad(RandomRutherfordData restrict obj, double value){
6822
- int64_t offset=0;
6823
- offset+=88;
6824
- *( double*)(( char*) obj+offset)=value;
6825
- }
6826
- static inline double* RandomRutherfordData_getp__rot_y_rad(RandomRutherfordData restrict obj){
6827
- int64_t offset=0;
6828
- offset+=88;
6829
- return ( double*)(( char*) obj+offset);
6830
- }
6831
- static inline double RandomRutherfordData_get__rot_s_rad_no_frame(const RandomRutherfordData restrict obj){
6832
- int64_t offset=0;
6833
- offset+=96;
6834
- return *( double*)(( char*) obj+offset);
6835
- }
6836
- static inline void RandomRutherfordData_set__rot_s_rad_no_frame(RandomRutherfordData restrict obj, double value){
6837
- int64_t offset=0;
6838
- offset+=96;
6839
- *( double*)(( char*) obj+offset)=value;
6840
- }
6841
- static inline double* RandomRutherfordData_getp__rot_s_rad_no_frame(RandomRutherfordData restrict obj){
6842
- int64_t offset=0;
6843
- offset+=96;
6844
- return ( double*)(( char*) obj+offset);
6845
- }
6846
- static inline double RandomRutherfordData_get_rot_shift_anchor(const RandomRutherfordData restrict obj){
6847
- int64_t offset=0;
6848
- offset+=104;
6849
- return *( double*)(( char*) obj+offset);
6850
- }
6851
- static inline void RandomRutherfordData_set_rot_shift_anchor(RandomRutherfordData restrict obj, double value){
6852
- int64_t offset=0;
6853
- offset+=104;
6854
- *( double*)(( char*) obj+offset)=value;
6855
- }
6856
- static inline double* RandomRutherfordData_getp_rot_shift_anchor(RandomRutherfordData restrict obj){
6857
- int64_t offset=0;
6858
- offset+=104;
6859
- return ( double*)(( char*) obj+offset);
6860
6860
  }
6861
6861
  #endif
6862
6862
  // copyright ############################### //
@@ -7068,11 +7068,11 @@ void Drift_single_particle(LocalParticle* part, double length){
7068
7068
 
7069
7069
  #endif // XSTUITE_TRACK_FLAGS_H
7070
7070
 
7071
- #include <random/random_src/rutherford.h>
7071
+ #include <random/random_src/exponential.h>
7072
7072
 
7073
7073
 
7074
- void sample_ruth(
7075
- RandomRutherfordData el,
7074
+ void sample_exp(
7075
+ RandomExponentialData el,
7076
7076
 
7077
7077
  ParticlesData particles,
7078
7078
  double* samples, int64_t n_samples_per_seed,
@@ -7120,7 +7120,7 @@ void Drift_single_particle(LocalParticle* part, double length){
7120
7120
  if (part_id<part_capacity){
7121
7121
  Particles_to_LocalParticle(particles, &lpart, part_id, end_id);
7122
7122
  if (check_is_active(&lpart)>0){
7123
- RandomRutherford_sample(el, &lpart, samples, n_samples_per_seed);
7123
+ RandomExponential_sample(el, &lpart, samples, n_samples_per_seed);
7124
7124
 
7125
7125
  }
7126
7126
  if (check_is_active(&lpart)>0 && flag_increment_at_element){