reflectorch 1.2.1__tar.gz → 1.4.0__tar.gz

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 reflectorch might be problematic. Click here for more details.

Files changed (292) hide show
  1. {reflectorch-1.2.1 → reflectorch-1.4.0}/.github/workflows/draft-pdf.yml +1 -1
  2. {reflectorch-1.2.1 → reflectorch-1.4.0}/.gitignore +4 -1
  3. reflectorch-1.4.0/CONTRIBUTING.md +28 -0
  4. {reflectorch-1.2.1 → reflectorch-1.4.0}/PKG-INFO +10 -7
  5. {reflectorch-1.2.1 → reflectorch-1.4.0}/README.md +5 -3
  6. reflectorch-1.4.0/configs/a_base_point_neutron_conv_standard.yaml +129 -0
  7. reflectorch-1.4.0/configs/a_base_point_xray_conv_absorption.yaml +117 -0
  8. reflectorch-1.4.0/configs/a_base_point_xray_conv_standard.yaml +119 -0
  9. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L1_InputDq.yaml +118 -0
  10. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L1_InputQDq.yaml +120 -0
  11. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L1_comp.yaml +106 -0
  12. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L2_InputDq.yaml +118 -0
  13. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L2_InputQDq.yaml +120 -0
  14. reflectorch-1.2.1/configs/c_test_safetensors.yaml → reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L2_comp.yaml +22 -19
  15. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L3_InputDq.yaml +118 -0
  16. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L3_InputQDq.yaml +120 -0
  17. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L3_comp.yaml +106 -0
  18. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L4_comp.yaml +106 -0
  19. reflectorch-1.4.0/configs/b_mc_point_neutron_conv_standard_L5_comp.yaml +106 -0
  20. reflectorch-1.4.0/configs/b_mc_point_xray_conv_standard_L2_InputQ.yaml +110 -0
  21. reflectorch-1.4.0/configs/e_mc_point_neutron_conv_standard_L1_InputQDq_n128_size1024.yaml +119 -0
  22. reflectorch-1.4.0/configs/e_mc_point_neutron_conv_standard_L1_InputQDq_n256_size1024.yaml +119 -0
  23. {reflectorch-1.2.1 → reflectorch-1.4.0}/debug.py +2 -2
  24. reflectorch-1.4.0/exp_data/D17_SiO.dat +2169 -0
  25. reflectorch-1.4.0/exp_data/Ni500.dat +174 -0
  26. reflectorch-1.4.0/exp_data/Ni_on_glass.dat +757 -0
  27. reflectorch-1.4.0/exp_data/ORSO_example.ort +438 -0
  28. {reflectorch-1.2.1 → reflectorch-1.4.0}/pyproject.toml +6 -6
  29. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/__init__.py +4 -0
  30. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/dataset.py +27 -7
  31. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/noise.py +115 -9
  32. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/parametric_models.py +91 -16
  33. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/parametric_subpriors.py +28 -7
  34. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/sampler_strategies.py +67 -3
  35. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/q_generator.py +97 -43
  36. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/reflectivity/__init__.py +53 -11
  37. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/reflectivity/kinematical.py +4 -5
  38. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/reflectivity/smearing.py +25 -10
  39. reflectorch-1.4.0/reflectorch/data_generation/reflectivity/smearing_pointwise.py +110 -0
  40. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/smearing.py +42 -11
  41. reflectorch-1.4.0/reflectorch/data_generation/utils.py +223 -0
  42. reflectorch-1.4.0/reflectorch/extensions/refnx/refnx_conversion.py +77 -0
  43. reflectorch-1.4.0/reflectorch/inference/inference_model.py +1375 -0
  44. reflectorch-1.4.0/reflectorch/inference/loading_data.py +37 -0
  45. reflectorch-1.4.0/reflectorch/inference/plotting.py +517 -0
  46. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/interpolation.py +5 -2
  47. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/scipy_fitter.py +98 -7
  48. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/ml/__init__.py +2 -0
  49. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/ml/basic_trainer.py +18 -6
  50. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/ml/callbacks.py +5 -4
  51. reflectorch-1.4.0/reflectorch/ml/loggers.py +56 -0
  52. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/ml/schedulers.py +116 -0
  53. reflectorch-1.4.0/reflectorch/ml/trainers.py +201 -0
  54. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/__init__.py +2 -1
  55. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/encoders/__init__.py +2 -2
  56. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/encoders/conv_encoder.py +54 -40
  57. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/encoders/fno.py +23 -16
  58. reflectorch-1.4.0/reflectorch/models/encoders/integral_kernel_embedding.py +390 -0
  59. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/networks/__init__.py +2 -0
  60. reflectorch-1.4.0/reflectorch/models/networks/mlp_networks.py +434 -0
  61. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/networks/residual_net.py +31 -5
  62. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/runs/train.py +0 -1
  63. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/runs/utils.py +48 -11
  64. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/utils.py +30 -0
  65. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch.egg-info/PKG-INFO +10 -7
  66. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch.egg-info/SOURCES.txt +27 -1
  67. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch.egg-info/requires.txt +2 -1
  68. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_embedding_networks.py +2 -2
  69. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_q_generator.py +4 -4
  70. reflectorch-1.2.1/reflectorch/data_generation/utils.py +0 -148
  71. reflectorch-1.2.1/reflectorch/inference/inference_model.py +0 -739
  72. reflectorch-1.2.1/reflectorch/ml/loggers.py +0 -31
  73. reflectorch-1.2.1/reflectorch/ml/trainers.py +0 -93
  74. reflectorch-1.2.1/reflectorch/models/networks/mlp_networks.py +0 -256
  75. {reflectorch-1.2.1 → reflectorch-1.4.0}/.dockerignore +0 -0
  76. {reflectorch-1.2.1 → reflectorch-1.4.0}/.github/workflows/ci.yml +0 -0
  77. {reflectorch-1.2.1 → reflectorch-1.4.0}/CODE_OF_CONDUCT.md +0 -0
  78. {reflectorch-1.2.1 → reflectorch-1.4.0}/Dockerfile +0 -0
  79. {reflectorch-1.2.1 → reflectorch-1.4.0}/LICENSE.txt +0 -0
  80. {reflectorch-1.2.1 → reflectorch-1.4.0}/MANIFEST.in +0 -0
  81. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c1.yaml +0 -0
  82. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c1_trained.yaml +0 -0
  83. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_L10_d100_s150_r30_ws5_q03_nq256.yaml +0 -0
  84. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_L3_d200_s150_r60_ws5_q03_nq128.yaml +0 -0
  85. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_L5_d200_s150_r60_ws5_q03_nq256.yaml +0 -0
  86. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_absorption.yaml +0 -0
  87. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_absorption_L2_d500_s150_is30_r60_ws5_q03_nq256.yaml +0 -0
  88. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_absorption_L5_d200_s150_is30_r60_ws5_q03_nq256.yaml +0 -0
  89. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_ae.yaml +0 -0
  90. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_fno.yaml +0 -0
  91. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_model_with_shifts.yaml +0 -0
  92. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_repeating_multilayer.yaml +0 -0
  93. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/c_repeating_multilayer_trained1.yaml +0 -0
  94. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q109_exp_1.yaml +0 -0
  95. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_absorption_1.yaml +0 -0
  96. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_exp_2.yaml +0 -0
  97. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_exp_3.yaml +0 -0
  98. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_exp_3_02.yaml +0 -0
  99. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_exp_4.yaml +0 -0
  100. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_exp_5.yaml +0 -0
  101. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_exp_sm_2.yaml +0 -0
  102. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q256_new_1.yaml +0 -0
  103. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l2q64_new_sub_1.yaml +0 -0
  104. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/l5q256_new_sub_1.yaml +0 -0
  105. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o1.yaml +0 -0
  106. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o10.yaml +0 -0
  107. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o11.yaml +0 -0
  108. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o12.yaml +0 -0
  109. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o13.yaml +0 -0
  110. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o14.yaml +0 -0
  111. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o15.yaml +0 -0
  112. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o16.yaml +0 -0
  113. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o2.yaml +0 -0
  114. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o3.yaml +0 -0
  115. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o4.yaml +0 -0
  116. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o5.yaml +0 -0
  117. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o7.yaml +0 -0
  118. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o8.yaml +0 -0
  119. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc-o9.yaml +0 -0
  120. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc1.yaml +0 -0
  121. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc10.yaml +0 -0
  122. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc11.yaml +0 -0
  123. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc12.yaml +0 -0
  124. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc13.yaml +0 -0
  125. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc14.yaml +0 -0
  126. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc15.yaml +0 -0
  127. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc16.yaml +0 -0
  128. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc17.yaml +0 -0
  129. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc18.yaml +0 -0
  130. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc19.yaml +0 -0
  131. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc2.yaml +0 -0
  132. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc20.yaml +0 -0
  133. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc21.yaml +0 -0
  134. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc22.yaml +0 -0
  135. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc23.yaml +0 -0
  136. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc24.yaml +0 -0
  137. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc25.yaml +0 -0
  138. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc26.yaml +0 -0
  139. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc27.yaml +0 -0
  140. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc28.yaml +0 -0
  141. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc29.yaml +0 -0
  142. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc3.yaml +0 -0
  143. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc30.yaml +0 -0
  144. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc31.yaml +0 -0
  145. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc32.yaml +0 -0
  146. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc33.yaml +0 -0
  147. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc34.yaml +0 -0
  148. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc35.yaml +0 -0
  149. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc36.yaml +0 -0
  150. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc37.yaml +0 -0
  151. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc38.yaml +0 -0
  152. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc39.yaml +0 -0
  153. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc4.yaml +0 -0
  154. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc40.yaml +0 -0
  155. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc41.yaml +0 -0
  156. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc42.yaml +0 -0
  157. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc43.yaml +0 -0
  158. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc44.yaml +0 -0
  159. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc45.yaml +0 -0
  160. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc46.yaml +0 -0
  161. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc47.yaml +0 -0
  162. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc48.yaml +0 -0
  163. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc49.yaml +0 -0
  164. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc5.yaml +0 -0
  165. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc50.yaml +0 -0
  166. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc51.yaml +0 -0
  167. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc52.yaml +0 -0
  168. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc53.yaml +0 -0
  169. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc54.yaml +0 -0
  170. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc55.yaml +0 -0
  171. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc56.yaml +0 -0
  172. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc57.yaml +0 -0
  173. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc58.yaml +0 -0
  174. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc59.yaml +0 -0
  175. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc6.yaml +0 -0
  176. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc60.yaml +0 -0
  177. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc61.yaml +0 -0
  178. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc62.yaml +0 -0
  179. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc63.yaml +0 -0
  180. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc64.yaml +0 -0
  181. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc65.yaml +0 -0
  182. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc66.yaml +0 -0
  183. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc67.yaml +0 -0
  184. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc7.yaml +0 -0
  185. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc8.yaml +0 -0
  186. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/mc9.yaml +0 -0
  187. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/multilayer_test_1.yaml +0 -0
  188. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/multilayer_test_1_1.yaml +0 -0
  189. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/multilayer_test_2.yaml +0 -0
  190. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/multilayer_test_2_2.yaml +0 -0
  191. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/multilayer_test_3.yaml +0 -0
  192. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/time_val_exp_L2_q128-015_d500_r60_s25n_bs4_budist_noise-poisson02-sh03-sc002-qs1e3-qn1e3.yaml +0 -0
  193. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/time_val_sim_L5_q256_d300_r60_s25_bs4_budist_noise-poisson02_LONGER.yaml +0 -0
  194. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q128-015_d500_r60_s25n_bs4_budist_noise-poisson02-sh03-sc002-qs1e3-qn1e3.yaml +0 -0
  195. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q128_d300_r60_s25_bs4_budist_noise-poisson02-various-noises.yaml +0 -0
  196. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q128_d300_r60_s25_bs4_budist_noise-poisson02-various-noises2.yaml +0 -0
  197. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q256_d300_r60_s25_bs4_budist_noise-poisson01.yaml +0 -0
  198. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02.yaml +0 -0
  199. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q256_d300_r60_s25_bs4_budist_noise-poisson03.yaml +0 -0
  200. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q64_d300_r60_s25_bs25_budist_noise-poisson03_scale002.yaml +0 -0
  201. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q64_d300_r60_s25_bs4_blogdist_noise-poisson04.yaml +0 -0
  202. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_exp_L2_q64_d300_r60_s25_bs4_budist_noise-poisson04.yaml +0 -0
  203. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_multilayer_V1.yaml +0 -0
  204. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_multilayer_V2.yaml +0 -0
  205. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_FNO_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02.yaml +0 -0
  206. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_FNO_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02_V2.yaml +0 -0
  207. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_FNO_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02_varyQ.yaml +0 -0
  208. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_FNO_L2_q64-512_015-05_d300_r60_s25_bs4_budist_noise-poisson02_varyall.yaml +0 -0
  209. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_FNO_L2_q64-512_015-05_d500_r60_s25n_bs4_budist_noise-poisson02_varyall_V2.yaml +0 -0
  210. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_br20_bs4_budist_noise-none.yaml +0 -0
  211. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs25_budist_noise-none.yaml +0 -0
  212. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs25_budist_noise-poisson02.yaml +0 -0
  213. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs4_blogdist_noise-poisson02.yaml +0 -0
  214. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs4_budist_noise-none.yaml +0 -0
  215. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02-hz512.yaml +0 -0
  216. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02-rb10.yaml +0 -0
  217. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L2_q256_d300_r60_s25_bs4_budist_noise-poisson02.yaml +0 -0
  218. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L3_q256_d300_r60_s25_bs25_budist_noise-poisson02.yaml +0 -0
  219. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L3_q256_d300_r60_s25_bs4_budist_noise-none.yaml +0 -0
  220. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L3_q256_d300_r60_s25_bs4_budist_noise-poisson02-TRY2.yaml +0 -0
  221. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L3_q256_d300_r60_s25_bs4_budist_noise-poisson02.yaml +0 -0
  222. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L5_q1024_d300_r60_s25_bs4_budist_noise-poisson02.yaml +0 -0
  223. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L5_q256_d300_r60_s25_bs25_budist_noise-poisson02.yaml +0 -0
  224. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L5_q256_d300_r60_s25_bs4_budist_noise-poisson02-Copy1.yaml +0 -0
  225. {reflectorch-1.2.1 → reflectorch-1.4.0}/configs/val_sim_L5_q256_d300_r60_s25_bs4_budist_noise-poisson02_LONGER.yaml +0 -0
  226. {reflectorch-1.2.1 → reflectorch-1.4.0}/exp_data/33a.dat +0 -0
  227. {reflectorch-1.2.1 → reflectorch-1.4.0}/exp_data/DIP-nSi_34a.dat +0 -0
  228. {reflectorch-1.2.1 → reflectorch-1.4.0}/exp_data/data_C60.pt +0 -0
  229. {reflectorch-1.2.1 → reflectorch-1.4.0}/exp_data/data_C60.txt +0 -0
  230. {reflectorch-1.2.1 → reflectorch-1.4.0}/exp_data/data_PTCDI-C3.pt +0 -0
  231. {reflectorch-1.2.1 → reflectorch-1.4.0}/exp_data/data_PTCDI-C3.txt +0 -0
  232. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/__init__.py +0 -0
  233. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/likelihoods.py +0 -0
  234. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/__init__.py +0 -0
  235. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/base.py +0 -0
  236. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/exp_subprior_sampler.py +0 -0
  237. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/independent_priors.py +0 -0
  238. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/multilayer_models.py +0 -0
  239. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/multilayer_structures.py +0 -0
  240. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/no_constraints.py +0 -0
  241. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/params.py +0 -0
  242. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/scaler_mixin.py +0 -0
  243. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/subprior_sampler.py +0 -0
  244. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/priors/utils.py +0 -0
  245. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/process_data.py +0 -0
  246. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/reflectivity/abeles.py +0 -0
  247. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/reflectivity/memory_eff.py +0 -0
  248. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/reflectivity/numpy_implementations.py +0 -0
  249. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/data_generation/scale_curves.py +0 -0
  250. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/extensions/__init__.py +0 -0
  251. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/extensions/jupyter/__init__.py +0 -0
  252. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/extensions/jupyter/callbacks.py +0 -0
  253. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/extensions/matplotlib/__init__.py +0 -0
  254. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/extensions/matplotlib/losses.py +0 -0
  255. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/__init__.py +0 -0
  256. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/multilayer_fitter.py +0 -0
  257. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/multilayer_inference_model.py +0 -0
  258. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/__init__.py +0 -0
  259. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/attenuation.py +0 -0
  260. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/cut_with_q_ratio.py +0 -0
  261. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/footprint.py +0 -0
  262. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/normalize.py +0 -0
  263. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/preprocess_exp/preprocess.py +0 -0
  264. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/query_matcher.py +0 -0
  265. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/record_time.py +0 -0
  266. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/sampler_solution.py +0 -0
  267. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/inference/torch_fitter.py +0 -0
  268. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/ml/dataloaders.py +0 -0
  269. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/ml/utils.py +0 -0
  270. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/activations.py +0 -0
  271. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/models/encoders/conv_res_net.py +0 -0
  272. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/paths.py +0 -0
  273. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/runs/__init__.py +0 -0
  274. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/runs/config.py +0 -0
  275. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/runs/slurm_utils.py +0 -0
  276. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/test_config.py +0 -0
  277. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/train.py +0 -0
  278. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch/train_on_cluster.py +0 -0
  279. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch.egg-info/dependency_links.txt +0 -0
  280. {reflectorch-1.2.1 → reflectorch-1.4.0}/reflectorch.egg-info/top_level.txt +0 -0
  281. {reflectorch-1.2.1 → reflectorch-1.4.0}/setup.cfg +0 -0
  282. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/__init__.py +0 -0
  283. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/conftest.py +0 -0
  284. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/data/demo_scan.csv +0 -0
  285. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/fixtures/__init__.py +0 -0
  286. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/fixtures/data.py +0 -0
  287. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/__init__.py +0 -0
  288. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_dataloader.py +0 -0
  289. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_mlp.py +0 -0
  290. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_preprocessing.py +0 -0
  291. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_prior_sampler.py +0 -0
  292. {reflectorch-1.2.1 → reflectorch-1.4.0}/tests/unit/test_reflectivity.py +0 -0
@@ -15,7 +15,7 @@ jobs:
15
15
  # This should be the path to the paper within your repo.
16
16
  paper-path: paper/paper.md
17
17
  - name: Upload
18
- uses: actions/upload-artifact@v3
18
+ uses: actions/upload-artifact@v4
19
19
  with:
20
20
  name: paper
21
21
  # This is the output path where Pandoc will write the compiled
@@ -38,4 +38,7 @@ var/
38
38
  documentation/_build/*
39
39
 
40
40
  # Don't ignore .pt files in the exp_data directory
41
- !exp_data/*.pt
41
+ !exp_data/*.pt
42
+
43
+ #Other
44
+ tensorboard_runs
@@ -0,0 +1,28 @@
1
+ # Contributing to Reflectorch
2
+
3
+ ## 1. Reporting Issues
4
+
5
+ If you encounter bugs, want to suggest features, or have questions, please open an issue using the [GitHub issue tracker](https://github.com/schreiber-lab/reflectorch/issues).
6
+
7
+ When reporting a bug, please include:
8
+ - A clear description of the issue
9
+ - Steps to reproduce the bug (if applicable)
10
+ - Any relevant error messages or screenshots
11
+
12
+ ## 2. Contributing Code
13
+
14
+ To contribute code:
15
+
16
+ 1. **Fork** the repository.
17
+ 2. Make your changes in a new branch.
18
+ 3. Ensure your code is clear and well-documented.
19
+ 4. If applicable, add or update tests.
20
+ 5. Submit a [pull request](https://github.com/schreiber-lab/reflectorch/pulls) with a description of your changes.
21
+
22
+ ### Documentation
23
+
24
+ If your changes affect user-facing features, please update the documentation accordingly. Documentation is built using [Jupyter Book](https://jupyterbook.org/). You can build it locally using:
25
+
26
+ ```bash
27
+ jupyter-book build documentation
28
+ ```
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: reflectorch
3
- Version: 1.2.1
3
+ Version: 1.4.0
4
4
  Summary: A Pytorch-based package for the analysis of reflectometry data
5
5
  Author-email: Vladimir Starostin <vladimir.starostin@uni-tuebingen.de>, Valentin Munteanu <valentin.munteanu@uni-tuebingen.de>
6
6
  Maintainer-email: Valentin Munteanu <valentin.munteanu@uni-tuebingen.de>, Vladimir Starostin <vladimir.starostin@uni-tuebingen.de>, Alexander Hinderhofer <alexander.hinderhofer@uni-tuebingen.de>
@@ -11,14 +11,13 @@ Keywords: reflectometry,machine learning
11
11
  Classifier: Programming Language :: Python :: 3
12
12
  Classifier: Operating System :: OS Independent
13
13
  Classifier: Environment :: GPU :: NVIDIA CUDA
14
- Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
15
14
  Classifier: Development Status :: 4 - Beta
16
15
  Classifier: Topic :: Scientific/Engineering :: Physics
17
16
  Classifier: Intended Audience :: Science/Research
18
17
  Requires-Python: >=3.7
19
18
  Description-Content-Type: text/markdown
20
19
  License-File: LICENSE.txt
21
- Requires-Dist: numpy<2.0,>=1.18.1
20
+ Requires-Dist: numpy
22
21
  Requires-Dist: torch>=1.8.1
23
22
  Requires-Dist: scipy
24
23
  Requires-Dist: tqdm
@@ -28,6 +27,7 @@ Requires-Dist: matplotlib
28
27
  Requires-Dist: ipywidgets
29
28
  Requires-Dist: huggingface_hub
30
29
  Requires-Dist: safetensors
30
+ Requires-Dist: tensorboard
31
31
  Provides-Extra: tests
32
32
  Requires-Dist: pytest; extra == "tests"
33
33
  Requires-Dist: pytest-cov; extra == "tests"
@@ -37,6 +37,7 @@ Requires-Dist: sphinx; extra == "docs"
37
37
  Provides-Extra: build
38
38
  Requires-Dist: build; extra == "build"
39
39
  Requires-Dist: twine; extra == "build"
40
+ Dynamic: license-file
40
41
 
41
42
  # Reflectorch
42
43
 
@@ -50,7 +51,7 @@ Requires-Dist: twine; extra == "build"
50
51
  [![Python version](https://img.shields.io/badge/python-3.7%7C3.8%7C3.9%7C3.10%7C3.11%7C3.12-blue.svg)](https://www.python.org/)
51
52
  ![CI workflow status](https://github.com/schreiber-lab/reflectorch/actions/workflows/ci.yml/badge.svg)
52
53
  ![Repos size](https://img.shields.io/github/repo-size/schreiber-lab/reflectorch)
53
- [![CodeFactor](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch/badge)](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch)
54
+ <!-- [![CodeFactor](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch/badge)](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch) -->
54
55
  [![Jupyter Book Documentation](https://jupyterbook.org/badge.svg)](https://jupyterbook.org/)
55
56
  [![Documentation Page](https://img.shields.io/badge/Documentation%20Page-%23FFDD33.svg?style=flat&logo=read-the-docs&logoColor=black)](https://schreiber-lab.github.io/reflectorch/)
56
57
  <!-- [![Code style: Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) -->
@@ -101,9 +102,11 @@ We provide an interactive Google Colab notebook for exploring the basic function
101
102
  [![Hugging Face](https://img.shields.io/badge/Hugging%20Face-%23FFD700.svg?style=flat&logo=huggingface&logoColor=black)](https://huggingface.co/valentinsingularity/reflectivity)
102
103
  Configuration files and the corresponding pretrained model weights are hosted on Huggingface: [https://huggingface.co/valentinsingularity/reflectivity](https://huggingface.co/valentinsingularity/reflectivity).
103
104
 
104
- [![Docker](https://img.shields.io/badge/Docker-2496ED.svg?style=flat&logo=docker&logoColor=white)](https://hub.docker.com/)
105
- Docker images for reflectorch *will* be hosted on Dockerhub.
105
+ <!-- [![Docker](https://img.shields.io/badge/Docker-2496ED.svg?style=flat&logo=docker&logoColor=white)](https://hub.docker.com/)
106
+ Docker images for reflectorch *will* be hosted on Dockerhub. -->
106
107
 
108
+ ## Contributing
109
+ If you'd like to contribute to the package, please see our [Contributing Guidelines](CONTRIBUTING.md) for details.
107
110
 
108
111
  ## Citation
109
112
  If you find our work useful in your research, please cite as follows:
@@ -10,7 +10,7 @@
10
10
  [![Python version](https://img.shields.io/badge/python-3.7%7C3.8%7C3.9%7C3.10%7C3.11%7C3.12-blue.svg)](https://www.python.org/)
11
11
  ![CI workflow status](https://github.com/schreiber-lab/reflectorch/actions/workflows/ci.yml/badge.svg)
12
12
  ![Repos size](https://img.shields.io/github/repo-size/schreiber-lab/reflectorch)
13
- [![CodeFactor](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch/badge)](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch)
13
+ <!-- [![CodeFactor](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch/badge)](https://www.codefactor.io/repository/github/schreiber-lab/reflectorch) -->
14
14
  [![Jupyter Book Documentation](https://jupyterbook.org/badge.svg)](https://jupyterbook.org/)
15
15
  [![Documentation Page](https://img.shields.io/badge/Documentation%20Page-%23FFDD33.svg?style=flat&logo=read-the-docs&logoColor=black)](https://schreiber-lab.github.io/reflectorch/)
16
16
  <!-- [![Code style: Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff) -->
@@ -61,9 +61,11 @@ We provide an interactive Google Colab notebook for exploring the basic function
61
61
  [![Hugging Face](https://img.shields.io/badge/Hugging%20Face-%23FFD700.svg?style=flat&logo=huggingface&logoColor=black)](https://huggingface.co/valentinsingularity/reflectivity)
62
62
  Configuration files and the corresponding pretrained model weights are hosted on Huggingface: [https://huggingface.co/valentinsingularity/reflectivity](https://huggingface.co/valentinsingularity/reflectivity).
63
63
 
64
- [![Docker](https://img.shields.io/badge/Docker-2496ED.svg?style=flat&logo=docker&logoColor=white)](https://hub.docker.com/)
65
- Docker images for reflectorch *will* be hosted on Dockerhub.
64
+ <!-- [![Docker](https://img.shields.io/badge/Docker-2496ED.svg?style=flat&logo=docker&logoColor=white)](https://hub.docker.com/)
65
+ Docker images for reflectorch *will* be hosted on Dockerhub. -->
66
66
 
67
+ ## Contributing
68
+ If you'd like to contribute to the package, please see our [Contributing Guidelines](CONTRIBUTING.md) for details.
67
69
 
68
70
  ## Citation
69
71
  If you find our work useful in your research, please cite as follows:
@@ -0,0 +1,129 @@
1
+ general:
2
+ name: a_base_point_neutron_conv_standard
3
+ root_dir: null
4
+
5
+ dset:
6
+ cls: ReflectivityDataLoader
7
+ prior_sampler:
8
+ cls: SubpriorParametricSampler
9
+ kwargs:
10
+ param_ranges:
11
+ thicknesses: [1., 500.]
12
+ roughnesses: [0., 60.]
13
+ slds: [-8., 16.]
14
+ bound_width_ranges:
15
+ thicknesses: [1.0e-2, 500.]
16
+ roughnesses: [1.0e-2, 60.]
17
+ slds: [1.0e-2, 5.]
18
+ model_name: standard_model
19
+ max_num_layers: 2
20
+ constrained_roughness: true
21
+ max_thickness_share: 0.5
22
+ logdist: false
23
+ scale_params_by_ranges: false
24
+ scaled_range: [-1., 1.]
25
+ device: 'cuda'
26
+
27
+ q_generator:
28
+ cls: ConstantQ
29
+ kwargs:
30
+ q: [0.02, 0.15, 128]
31
+ device: 'cuda'
32
+
33
+ # q_generator:
34
+ # cls: VariableQ
35
+ # kwargs:
36
+ # q_min_range: [0.005, 0.03]
37
+ # q_max_range: [0.15, 0.3]
38
+ # n_q_range: [128, 128]
39
+ # device: 'cuda'
40
+
41
+ intensity_noise:
42
+ cls: GaussianExpIntensityNoise
43
+ kwargs:
44
+ relative_errors: [0.01, 0.3]
45
+ consistent_rel_err: false
46
+ apply_shift: false
47
+ shift_range: [-0.3, 0.3]
48
+ apply_background: true
49
+ background_range: [1.0e-10, 1.0e-4]
50
+ add_to_context: true
51
+
52
+ smearing:
53
+ cls: Smearing
54
+ kwargs:
55
+ sigma_range: [0.01, 0.10]
56
+ constant_dq: False
57
+ gauss_num: 17
58
+ share_smeared: 1.0
59
+
60
+ curves_scaler:
61
+ cls: LogAffineCurvesScaler
62
+ kwargs:
63
+ weight: 0.2
64
+ bias: 1.0
65
+ eps: 1.0e-10
66
+
67
+ model:
68
+ network:
69
+ cls: NetworkWithPriors
70
+ pretrained_name: null
71
+ device: 'cuda'
72
+ kwargs:
73
+ embedding_net_type: 'conv'
74
+ embedding_net_kwargs:
75
+ in_channels: 1
76
+ hidden_channels: [32, 64, 128, 256, 512]
77
+ kernel_size: 3
78
+ dim_embedding: 128
79
+ dim_avpool: 1
80
+ use_batch_norm: true
81
+ use_se: false
82
+ activation: 'gelu'
83
+ pretrained_embedding_net: null
84
+ dim_out: 8
85
+ dim_conditioning_params: 0
86
+ layer_width: 512
87
+ num_blocks: 6
88
+ repeats_per_block: 2
89
+ residual: true
90
+ use_batch_norm: true
91
+ use_layer_norm: false
92
+ mlp_activation: 'gelu'
93
+ dropout_rate: 0.0
94
+ tanh_output: false
95
+ conditioning: 'concat' # 'concat', 'glu', 'film'
96
+ concat_condition_first_layer: false
97
+
98
+ training:
99
+ trainer_cls: PointEstimatorTrainer
100
+ num_iterations: 100000
101
+ batch_size: 4096
102
+ lr: 1.0e-3
103
+ grad_accumulation_steps: 1
104
+ clip_grad_norm_max: null
105
+ update_tqdm_freq: 1
106
+ optimizer: AdamW
107
+ trainer_kwargs:
108
+ train_with_q_input: false
109
+ condition_on_q_resolutions: false
110
+ rescale_loss_interval_width: true
111
+ use_l1_loss: true
112
+ optim_kwargs:
113
+ betas: [0.9, 0.999]
114
+ weight_decay: 0.0005
115
+ callbacks:
116
+ save_best_model:
117
+ enable: true
118
+ freq: 500
119
+ lr_scheduler:
120
+ cls: CosineAnnealingWithWarmup
121
+ kwargs:
122
+ min_lr: 1.0e-6
123
+ warmup_iters: 500
124
+ total_iters: 100000
125
+
126
+ # logger:
127
+ # cls: TensorBoardLogger
128
+ # kwargs:
129
+ # log_dir: "tensorboard_runs/test_1"
@@ -0,0 +1,117 @@
1
+ general:
2
+ name: a_base_point_xray_conv_absorption
3
+ root_dir: null
4
+
5
+ dset:
6
+ cls: ReflectivityDataLoader
7
+ prior_sampler:
8
+ cls: SubpriorParametricSampler
9
+ kwargs:
10
+ param_ranges:
11
+ thicknesses: [1., 500.]
12
+ roughnesses: [0., 60.]
13
+ slds: [0., 150.]
14
+ islds: [0., 30.]
15
+ bound_width_ranges:
16
+ thicknesses: [1.0e-2, 500.]
17
+ roughnesses: [1.0e-2, 60.]
18
+ slds: [ 1.0e-2, 5.]
19
+ islds: [1.0e-2, 5.]
20
+ model_name: model_with_absorption
21
+ max_num_layers: 2
22
+ constrained_roughness: true
23
+ constrained_isld: true
24
+ max_thickness_share: 0.5
25
+ max_sld_share: 0.2
26
+ logdist: false
27
+ scale_params_by_ranges: false
28
+ scaled_range: [-1., 1.]
29
+ device: 'cuda'
30
+
31
+ q_generator:
32
+ cls: ConstantQ
33
+ kwargs:
34
+ q: [0.02, 0.15, 128]
35
+ device: 'cuda'
36
+
37
+ intensity_noise:
38
+ cls: GaussianExpIntensityNoise
39
+ kwargs:
40
+ relative_errors: [0.01, 0.3]
41
+ consistent_rel_err: false
42
+ apply_shift: false #true
43
+ shift_range: [-0.3, 0.3]
44
+ add_to_context: true
45
+
46
+ curves_scaler:
47
+ cls: LogAffineCurvesScaler
48
+ kwargs:
49
+ weight: 0.2
50
+ bias: 1.0
51
+ eps: 1.0e-10
52
+
53
+ model:
54
+ network:
55
+ cls: NetworkWithPriors
56
+ pretrained_name: null
57
+ device: 'cuda'
58
+ kwargs:
59
+ embedding_net_type: 'conv'
60
+ embedding_net_kwargs:
61
+ in_channels: 1
62
+ hidden_channels: [32, 64, 128, 256, 512]
63
+ kernel_size: 3
64
+ dim_embedding: 128
65
+ dim_avpool: 1
66
+ use_batch_norm: true
67
+ use_se: false
68
+ activation: 'gelu'
69
+ pretrained_embedding_net: null
70
+ dim_out: 11
71
+ dim_conditioning_params: 0
72
+ layer_width: 512
73
+ num_blocks: 6
74
+ repeats_per_block: 2
75
+ residual: true
76
+ use_batch_norm: true
77
+ use_layer_norm: false
78
+ mlp_activation: 'gelu'
79
+ dropout_rate: 0.0
80
+ tanh_output: false
81
+ conditioning: 'concat' # 'concat', 'glu', 'film'
82
+ concat_condition_first_layer: false
83
+
84
+ training:
85
+ trainer_cls: PointEstimatorTrainer
86
+ num_iterations: 10000
87
+ batch_size: 4096
88
+ lr: 1.0e-3
89
+ grad_accumulation_steps: 1
90
+ clip_grad_norm_max: null
91
+ update_tqdm_freq: 1
92
+ optimizer: AdamW
93
+ trainer_kwargs:
94
+ train_with_q_input: false
95
+ train_with_sigmas: false
96
+ condition_on_q_resolutions: false
97
+ use_curve_reconstruction_loss: false
98
+ rescale_loss_interval_width: true #false
99
+ use_l1_loss: true #false
100
+ optim_kwargs:
101
+ betas: [0.9, 0.999]
102
+ weight_decay: 0.0005
103
+ callbacks:
104
+ save_best_model:
105
+ enable: true
106
+ freq: 500
107
+ lr_scheduler:
108
+ cls: CosineAnnealingWithWarmup
109
+ kwargs:
110
+ min_lr: 1.0e-6
111
+ warmup_iters: 100
112
+ total_iters: 10000
113
+
114
+ # logger:
115
+ # cls: TensorBoardLogger
116
+ # kwargs:
117
+ # log_dir: "tensorboard_runs/test_1"
@@ -0,0 +1,119 @@
1
+ general:
2
+ name: a_base_point_xray_conv_standard
3
+ root_dir: null
4
+
5
+ dset:
6
+ cls: ReflectivityDataLoader
7
+ prior_sampler:
8
+ cls: SubpriorParametricSampler
9
+ kwargs:
10
+ param_ranges:
11
+ thicknesses: [1., 500.]
12
+ roughnesses: [0., 60.]
13
+ slds: [0., 50.]
14
+ bound_width_ranges:
15
+ thicknesses: [1.0e-2, 500.]
16
+ roughnesses: [1.0e-2, 60.]
17
+ slds: [1.0e-2, 5.]
18
+ model_name: standard_model
19
+ max_num_layers: 2
20
+ constrained_roughness: true
21
+ max_thickness_share: 0.5
22
+ logdist: false
23
+ scale_params_by_ranges: false
24
+ scaled_range: [-1., 1.]
25
+ device: 'cuda'
26
+
27
+ q_generator:
28
+ cls: ConstantQ
29
+ kwargs:
30
+ q: [0.02, 0.15, 128]
31
+ device: 'cuda'
32
+
33
+ # q_generator:
34
+ # cls: VariableQ
35
+ # kwargs:
36
+ # q_min_range: [0.005, 0.03]
37
+ # q_max_range: [0.15, 0.3]
38
+ # n_q_range: [128, 128]
39
+ # device: 'cuda'
40
+
41
+ intensity_noise:
42
+ cls: GaussianExpIntensityNoise
43
+ kwargs:
44
+ relative_errors: [0.01, 0.3]
45
+ consistent_rel_err: false
46
+ apply_shift: true
47
+ shift_range: [-0.3, 0.3]
48
+ add_to_context: true
49
+
50
+ curves_scaler:
51
+ cls: LogAffineCurvesScaler
52
+ kwargs:
53
+ weight: 0.2
54
+ bias: 1.0
55
+ eps: 1.0e-10
56
+
57
+ model:
58
+ network:
59
+ cls: NetworkWithPriors
60
+ pretrained_name: null
61
+ device: 'cuda'
62
+ kwargs:
63
+ embedding_net_type: 'conv'
64
+ embedding_net_kwargs:
65
+ in_channels: 1
66
+ hidden_channels: [32, 64, 128, 256, 512]
67
+ kernel_size: 3
68
+ dim_embedding: 128
69
+ dim_avpool: 1
70
+ use_batch_norm: true
71
+ use_se: false
72
+ activation: 'gelu'
73
+ pretrained_embedding_net: null
74
+ dim_out: 8
75
+ dim_conditioning_params: 0
76
+ layer_width: 512
77
+ num_blocks: 8
78
+ repeats_per_block: 2
79
+ residual: true
80
+ use_batch_norm: true
81
+ use_layer_norm: false
82
+ mlp_activation: 'gelu'
83
+ dropout_rate: 0.0
84
+ tanh_output: false
85
+ conditioning: 'film' # 'concat', 'glu', 'film'
86
+ concat_condition_first_layer: false
87
+
88
+ training:
89
+ trainer_cls: PointEstimatorTrainer
90
+ num_iterations: 100000
91
+ batch_size: 4096
92
+ lr: 1.0e-3
93
+ grad_accumulation_steps: 1
94
+ clip_grad_norm_max: null
95
+ update_tqdm_freq: 1
96
+ optimizer: AdamW
97
+ trainer_kwargs:
98
+ train_with_q_input: false
99
+ condition_on_q_resolutions: false
100
+ rescale_loss_interval_width: true
101
+ use_l1_loss: true
102
+ optim_kwargs:
103
+ betas: [0.9, 0.999]
104
+ weight_decay: 0.0005
105
+ callbacks:
106
+ save_best_model:
107
+ enable: true
108
+ freq: 500
109
+ lr_scheduler:
110
+ cls: CosineAnnealingWithWarmup
111
+ kwargs:
112
+ min_lr: 1.0e-6
113
+ warmup_iters: 500
114
+ total_iters: 100000
115
+
116
+ # logger:
117
+ # cls: TensorBoardLogger
118
+ # kwargs:
119
+ # log_dir: "tensorboard_runs/test_1"
@@ -0,0 +1,118 @@
1
+ general:
2
+ name: b_mc_point_neutron_conv_standard_L1_InputDq
3
+ root_dir: null
4
+
5
+ dset:
6
+ cls: ReflectivityDataLoader
7
+ prior_sampler:
8
+ cls: SubpriorParametricSampler
9
+ kwargs:
10
+ param_ranges:
11
+ thicknesses: [1., 1000.]
12
+ roughnesses: [0., 60.]
13
+ slds: [-8., 16.]
14
+ bound_width_ranges:
15
+ thicknesses: [1.0e-2, 1000.]
16
+ roughnesses: [1.0e-2, 60.]
17
+ slds: [1.0e-2, 5.]
18
+ model_name: standard_model
19
+ max_num_layers: 1
20
+ constrained_roughness: true
21
+ max_thickness_share: 0.5
22
+ logdist: false
23
+ scale_params_by_ranges: false
24
+ scaled_range: [-1., 1.]
25
+ device: 'cuda'
26
+
27
+ q_generator:
28
+ cls: ConstantQ
29
+ kwargs:
30
+ q: [0.005, 0.2, 128]
31
+ device: 'cuda'
32
+
33
+ intensity_noise:
34
+ cls: GaussianExpIntensityNoise
35
+ kwargs:
36
+ relative_errors: [0.01, 0.3]
37
+ consistent_rel_err: false
38
+ apply_shift: true
39
+ shift_range: [-0.3, 0.3]
40
+ apply_background: true
41
+ background_range: [1.0e-10, 1.0e-4]
42
+ add_to_context: true
43
+
44
+ smearing:
45
+ cls: Smearing
46
+ kwargs:
47
+ sigma_range: [0.01, 0.10]
48
+ constant_dq: False
49
+ gauss_num: 17
50
+ share_smeared: 0.8
51
+
52
+ curves_scaler:
53
+ cls: LogAffineCurvesScaler
54
+ kwargs:
55
+ weight: 0.2
56
+ bias: 1.0
57
+ eps: 1.0e-10
58
+
59
+ model:
60
+ network:
61
+ cls: NetworkWithPriors
62
+ pretrained_name: null
63
+ device: 'cuda'
64
+ kwargs:
65
+ embedding_net_type: 'conv'
66
+ embedding_net_kwargs:
67
+ in_channels: 1
68
+ hidden_channels: [32, 64, 128, 256, 512]
69
+ kernel_size: 3
70
+ dim_embedding: 128
71
+ dim_avpool: 1
72
+ use_batch_norm: true
73
+ use_se: false
74
+ activation: 'gelu'
75
+ pretrained_embedding_net: null
76
+ dim_out: 5
77
+ dim_conditioning_params: 1
78
+ layer_width: 512
79
+ num_blocks: 8
80
+ repeats_per_block: 2
81
+ residual: true
82
+ use_batch_norm: true
83
+ use_layer_norm: false
84
+ mlp_activation: 'gelu'
85
+ dropout_rate: 0.0
86
+ tanh_output: false
87
+ conditioning: 'film'
88
+ concat_condition_first_layer: true ### back. comp.
89
+
90
+ training:
91
+ trainer_cls: PointEstimatorTrainer
92
+ num_iterations: 100000
93
+ batch_size: 4096
94
+ lr: 1.0e-3
95
+ grad_accumulation_steps: 1
96
+ clip_grad_norm_max: null
97
+ update_tqdm_freq: 1
98
+ optimizer: AdamW
99
+ trainer_kwargs:
100
+ train_with_q_input: false
101
+ train_with_sigmas: false
102
+ condition_on_q_resolutions: true
103
+ use_curve_reconstruction_loss: false
104
+ rescale_loss_interval_width: true
105
+ use_l1_loss: true
106
+ optim_kwargs:
107
+ betas: [0.9, 0.999]
108
+ weight_decay: 0.0005
109
+ callbacks:
110
+ save_best_model:
111
+ enable: true
112
+ freq: 500
113
+ lr_scheduler:
114
+ cls: CosineAnnealingWithWarmup
115
+ kwargs:
116
+ min_lr: 1.0e-6
117
+ warmup_iters: 500
118
+ total_iters: 100000