ratapi 0.0.0.dev8__tar.gz → 0.0.0.dev9__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.
Files changed (529) hide show
  1. {ratapi-0.0.0.dev8/ratapi.egg-info → ratapi-0.0.0.dev9}/PKG-INFO +12 -11
  2. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/README.md +2 -2
  3. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/groupLayersMod.cpp +1 -5
  4. ratapi-0.0.0.dev9/pyproject.toml +90 -0
  5. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/classlist.py +10 -9
  6. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/controls.py +6 -10
  7. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/events.py +4 -4
  8. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/domains/domains_XY_model.py +9 -11
  9. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/custom_XY_DSPC.py +12 -14
  10. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/inputs.py +2 -2
  11. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/outputs.py +7 -7
  12. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/project.py +13 -13
  13. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/utils/convert.py +5 -6
  14. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/utils/custom_errors.py +1 -3
  15. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/utils/enums.py +1 -3
  16. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/utils/orso.py +4 -5
  17. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/utils/plotting.py +121 -65
  18. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/wrappers.py +1 -1
  19. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9/ratapi.egg-info}/PKG-INFO +12 -11
  20. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi.egg-info/requires.txt +14 -11
  21. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/setup.py +1 -23
  22. ratapi-0.0.0.dev8/pyproject.toml +0 -41
  23. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/MANIFEST.in +0 -0
  24. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/CoderTimeAPI.cpp +0 -0
  25. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/CoderTimeAPI.h +0 -0
  26. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/DREAM.cpp +0 -0
  27. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/DREAM.h +0 -0
  28. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/DREAMWrapper.cpp +0 -0
  29. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/DREAMWrapper.h +0 -0
  30. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain.a +0 -0
  31. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain.cpp +0 -0
  32. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain.h +0 -0
  33. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_data.cpp +0 -0
  34. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_data.h +0 -0
  35. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_initialize.cpp +0 -0
  36. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_initialize.h +0 -0
  37. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_internal_types.h +0 -0
  38. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_rtwutil.cpp +0 -0
  39. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_rtwutil.h +0 -0
  40. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_terminate.cpp +0 -0
  41. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_terminate.h +0 -0
  42. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/RATMain_types.h +0 -0
  43. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/README.md +0 -0
  44. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/SLDFunction.cpp +0 -0
  45. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/SLDFunction.h +0 -0
  46. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/abelesParallelPoints.cpp +0 -0
  47. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/abelesParallelPoints.h +0 -0
  48. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/abelesSingle.cpp +0 -0
  49. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/abelesSingle.h +0 -0
  50. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/abs.cpp +0 -0
  51. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/abs.h +0 -0
  52. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/acos.cpp +0 -0
  53. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/acos.h +0 -0
  54. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/adaptPCR.cpp +0 -0
  55. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/adaptPCR.h +0 -0
  56. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/adaptive.cpp +0 -0
  57. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/adaptive.h +0 -0
  58. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/all.cpp +0 -0
  59. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/all.h +0 -0
  60. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/allOrAny.cpp +0 -0
  61. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/allOrAny.h +0 -0
  62. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/allocateLayersForContrast.cpp +0 -0
  63. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/allocateLayersForContrast.h +0 -0
  64. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/allocateParamsToLayers.cpp +0 -0
  65. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/allocateParamsToLayers.h +0 -0
  66. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/anyNonFinite.cpp +0 -0
  67. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/anyNonFinite.h +0 -0
  68. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/applyBackgroundCorrection.cpp +0 -0
  69. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/applyBackgroundCorrection.h +0 -0
  70. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/applyHydration.cpp +0 -0
  71. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/applyHydration.h +0 -0
  72. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/asinh.cpp +0 -0
  73. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/asinh.h +0 -0
  74. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/asymconvstep.cpp +0 -0
  75. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/asymconvstep.h +0 -0
  76. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/blockedSummation.cpp +0 -0
  77. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/blockedSummation.h +0 -0
  78. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/boundaryHandling.cpp +0 -0
  79. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/boundaryHandling.h +0 -0
  80. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/bsearch.cpp +0 -0
  81. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/bsearch.h +0 -0
  82. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcEllipsoid.cpp +0 -0
  83. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcEllipsoid.h +0 -0
  84. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcLogLikelihood.cpp +0 -0
  85. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcLogLikelihood.h +0 -0
  86. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcLogPrior.cpp +0 -0
  87. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcLogPrior.h +0 -0
  88. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcProposal.cpp +0 -0
  89. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/calcProposal.h +0 -0
  90. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/callCppFunction.cpp +0 -0
  91. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/callCppFunction.h +0 -0
  92. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/callReflectivity.cpp +0 -0
  93. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/callReflectivity.h +0 -0
  94. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/cat.cpp +0 -0
  95. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/cat.h +0 -0
  96. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/chiSquared.cpp +0 -0
  97. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/chiSquared.h +0 -0
  98. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/classHandle.hpp +0 -0
  99. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coderException.hpp +0 -0
  100. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coderFread.cpp +0 -0
  101. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coderFread.h +0 -0
  102. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coder_array.h +0 -0
  103. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coder_bounded_array.h +0 -0
  104. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coder_posix_time.c +0 -0
  105. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coder_posix_time.h +0 -0
  106. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coder_setenv.c +0 -0
  107. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coder_setenv.h +0 -0
  108. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/colon.cpp +0 -0
  109. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/colon.h +0 -0
  110. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/combineVectorElements.cpp +0 -0
  111. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/combineVectorElements.h +0 -0
  112. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/complexTimes.cpp +0 -0
  113. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/complexTimes.h +0 -0
  114. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/computeNormMTridiagonal.cpp +0 -0
  115. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/computeNormMTridiagonal.h +0 -0
  116. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/constructBackground.cpp +0 -0
  117. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/constructBackground.h +0 -0
  118. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/constructResolution.cpp +0 -0
  119. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/constructResolution.h +0 -0
  120. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coreCustomXYCalculation.cpp +0 -0
  121. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coreCustomXYCalculation.h +0 -0
  122. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coreLayersCalculation.cpp +0 -0
  123. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/coreLayersCalculation.h +0 -0
  124. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/cov.cpp +0 -0
  125. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/cov.h +0 -0
  126. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/deopt.cpp +0 -0
  127. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/deopt.h +0 -0
  128. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/det.cpp +0 -0
  129. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/det.h +0 -0
  130. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/diag.cpp +0 -0
  131. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/diag.h +0 -0
  132. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/discretize.cpp +0 -0
  133. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/discretize.h +0 -0
  134. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/domainsReflectivity.cpp +0 -0
  135. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/domainsReflectivity.h +0 -0
  136. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawCR.cpp +0 -0
  137. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawCR.h +0 -0
  138. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawEllipsoidPoints.cpp +0 -0
  139. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawEllipsoidPoints.h +0 -0
  140. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawMCMC.cpp +0 -0
  141. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawMCMC.h +0 -0
  142. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawMultiNest.cpp +0 -0
  143. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/drawMultiNest.h +0 -0
  144. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/dylib.hpp +0 -0
  145. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eig.cpp +0 -0
  146. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eig.h +0 -0
  147. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigHermitianStandard.cpp +0 -0
  148. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigHermitianStandard.h +0 -0
  149. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigRealSkewSymmetricStandard.cpp +0 -0
  150. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigRealSkewSymmetricStandard.h +0 -0
  151. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigSkewHermitianStandard.cpp +0 -0
  152. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigSkewHermitianStandard.h +0 -0
  153. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigStandard.cpp +0 -0
  154. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eigStandard.h +0 -0
  155. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_erfcore.cpp +0 -0
  156. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_erfcore.h +0 -0
  157. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_mtimes_helper.cpp +0 -0
  158. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_mtimes_helper.h +0 -0
  159. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_rand_mt19937ar.cpp +0 -0
  160. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_rand_mt19937ar.h +0 -0
  161. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_rand_mt19937ar_stateful.cpp +0 -0
  162. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_rand_mt19937ar_stateful.h +0 -0
  163. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_setop.cpp +0 -0
  164. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eml_setop.h +0 -0
  165. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eps.cpp +0 -0
  166. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eps.h +0 -0
  167. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/erf.cpp +0 -0
  168. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/erf.h +0 -0
  169. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/erfinv.cpp +0 -0
  170. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/erfinv.h +0 -0
  171. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eventHelper.hpp +0 -0
  172. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/events/eventManager.cpp +0 -0
  173. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/events/eventManager.h +0 -0
  174. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/events/eventManagerImpl.hpp +0 -0
  175. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/exp.cpp +0 -0
  176. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/exp.h +0 -0
  177. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eye.cpp +0 -0
  178. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/eye.h +0 -0
  179. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/fMinSearch.cpp +0 -0
  180. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/fMinSearch.h +0 -0
  181. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/fileManager.cpp +0 -0
  182. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/fileManager.h +0 -0
  183. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/find.cpp +0 -0
  184. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/find.h +0 -0
  185. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/findkn.cpp +0 -0
  186. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/findkn.h +0 -0
  187. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/flip.cpp +0 -0
  188. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/flip.h +0 -0
  189. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/fread.cpp +0 -0
  190. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/fread.h +0 -0
  191. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/gamma.cpp +0 -0
  192. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/gamma.h +0 -0
  193. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/gelman.cpp +0 -0
  194. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/gelman.h +0 -0
  195. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getFitNames.cpp +0 -0
  196. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getFitNames.h +0 -0
  197. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getFittedPriors.cpp +0 -0
  198. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getFittedPriors.h +0 -0
  199. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getTime.cpp +0 -0
  200. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getTime.h +0 -0
  201. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getenv.cpp +0 -0
  202. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/getenv.h +0 -0
  203. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/groupLayersMod.h +0 -0
  204. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/hasPlotHandler.cpp +0 -0
  205. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/hasPlotHandler.h +0 -0
  206. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/ifWhileCond.cpp +0 -0
  207. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/ifWhileCond.h +0 -0
  208. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/inEllipsoids.cpp +0 -0
  209. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/inEllipsoids.h +0 -0
  210. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/initializeDREAM.cpp +0 -0
  211. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/initializeDREAM.h +0 -0
  212. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/interp1.cpp +0 -0
  213. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/interp1.h +0 -0
  214. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/isRATStopped.cpp +0 -0
  215. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/isRATStopped.h +0 -0
  216. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/ishermitian.cpp +0 -0
  217. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/ishermitian.h +0 -0
  218. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/isrow.cpp +0 -0
  219. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/isrow.h +0 -0
  220. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/ixamax.cpp +0 -0
  221. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/ixamax.h +0 -0
  222. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/kmeans.cpp +0 -0
  223. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/kmeans.h +0 -0
  224. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/leftWin.cpp +0 -0
  225. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/leftWin.h +0 -0
  226. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/length.cpp +0 -0
  227. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/length.h +0 -0
  228. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/linspace.cpp +0 -0
  229. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/linspace.h +0 -0
  230. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/log1p.cpp +0 -0
  231. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/log1p.h +0 -0
  232. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/log2.cpp +0 -0
  233. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/log2.h +0 -0
  234. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/logPlus.cpp +0 -0
  235. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/logPlus.h +0 -0
  236. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/lower.cpp +0 -0
  237. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/lower.h +0 -0
  238. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/lusolve.cpp +0 -0
  239. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/lusolve.h +0 -0
  240. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeCell.cpp +0 -0
  241. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeCell.h +0 -0
  242. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeEmptyBayesResultsStruct.cpp +0 -0
  243. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeEmptyBayesResultsStruct.h +0 -0
  244. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeSLDProfile.cpp +0 -0
  245. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeSLDProfile.h +0 -0
  246. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeSimulationRange.cpp +0 -0
  247. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/makeSimulationRange.h +0 -0
  248. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mchol.cpp +0 -0
  249. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mchol.h +0 -0
  250. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mean.cpp +0 -0
  251. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mean.h +0 -0
  252. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mergesort.cpp +0 -0
  253. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mergesort.h +0 -0
  254. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/metropolisRule.cpp +0 -0
  255. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/metropolisRule.h +0 -0
  256. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/minOrMax.cpp +0 -0
  257. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/minOrMax.h +0 -0
  258. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mod.cpp +0 -0
  259. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mod.h +0 -0
  260. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mrdivide_helper.cpp +0 -0
  261. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mrdivide_helper.h +0 -0
  262. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mtimes.cpp +0 -0
  263. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/mtimes.h +0 -0
  264. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/multrnd.cpp +0 -0
  265. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/multrnd.h +0 -0
  266. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nest2pos.cpp +0 -0
  267. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nest2pos.h +0 -0
  268. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nestedSampler.cpp +0 -0
  269. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nestedSampler.h +0 -0
  270. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nonSingletonDim.cpp +0 -0
  271. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nonSingletonDim.h +0 -0
  272. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/norm.cpp +0 -0
  273. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/norm.h +0 -0
  274. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/normalReflectivity.cpp +0 -0
  275. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/normalReflectivity.h +0 -0
  276. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/normalize.cpp +0 -0
  277. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/normalize.h +0 -0
  278. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nsIntraFun.cpp +0 -0
  279. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nsIntraFun.h +0 -0
  280. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nullAssignment.cpp +0 -0
  281. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/nullAssignment.h +0 -0
  282. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/optimalEllipsoids.cpp +0 -0
  283. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/optimalEllipsoids.h +0 -0
  284. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/percentileConfidenceIntervals.cpp +0 -0
  285. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/percentileConfidenceIntervals.h +0 -0
  286. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/prctile.cpp +0 -0
  287. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/prctile.h +0 -0
  288. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/processBayes.cpp +0 -0
  289. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/processBayes.h +0 -0
  290. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/processCustomFunction.cpp +0 -0
  291. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/processCustomFunction.h +0 -0
  292. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/processCustomFunction1.cpp +0 -0
  293. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/processCustomFunction1.h +0 -0
  294. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/qrsolve.cpp +0 -0
  295. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/qrsolve.h +0 -0
  296. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rand.cpp +0 -0
  297. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rand.h +0 -0
  298. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/randSample.cpp +0 -0
  299. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/randSample.h +0 -0
  300. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/randn.cpp +0 -0
  301. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/randn.h +0 -0
  302. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/randperm.cpp +0 -0
  303. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/randperm.h +0 -0
  304. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rcond.cpp +0 -0
  305. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rcond.h +0 -0
  306. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/refPercentileConfidenceIntervals.cpp +0 -0
  307. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/refPercentileConfidenceIntervals.h +0 -0
  308. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/reflectivityCalculation.cpp +0 -0
  309. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/reflectivityCalculation.h +0 -0
  310. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/relop.cpp +0 -0
  311. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/relop.h +0 -0
  312. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/removeOutlier.cpp +0 -0
  313. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/removeOutlier.h +0 -0
  314. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/repmat.cpp +0 -0
  315. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/repmat.h +0 -0
  316. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/resampleLayers.cpp +0 -0
  317. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/resampleLayers.h +0 -0
  318. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rescaleParameters.cpp +0 -0
  319. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rescaleParameters.h +0 -0
  320. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/reshapeSizeChecks.cpp +0 -0
  321. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/reshapeSizeChecks.h +0 -0
  322. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/resolutionPolly.cpp +0 -0
  323. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/resolutionPolly.h +0 -0
  324. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rng.cpp +0 -0
  325. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rng.h +0 -0
  326. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rtGetInf.cpp +0 -0
  327. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rtGetInf.h +0 -0
  328. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rtGetNaN.cpp +0 -0
  329. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rtGetNaN.h +0 -0
  330. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rt_defines.h +0 -0
  331. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rt_nonfinite.cpp +0 -0
  332. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rt_nonfinite.h +0 -0
  333. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/rtwtypes.h +0 -0
  334. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runDE.cpp +0 -0
  335. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runDE.h +0 -0
  336. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runDREAM.cpp +0 -0
  337. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runDREAM.h +0 -0
  338. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runNestedSampler.cpp +0 -0
  339. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runNestedSampler.h +0 -0
  340. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runSimplex.cpp +0 -0
  341. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/runSimplex.h +0 -0
  342. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/setupCoreReflectivityCalculation.cpp +0 -0
  343. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/setupCoreReflectivityCalculation.h +0 -0
  344. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/setupDREAM.cpp +0 -0
  345. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/setupDREAM.h +0 -0
  346. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/shiftData.cpp +0 -0
  347. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/shiftData.h +0 -0
  348. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/simplexIntrafun.cpp +0 -0
  349. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/simplexIntrafun.h +0 -0
  350. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/simplexXTransform.cpp +0 -0
  351. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/simplexXTransform.h +0 -0
  352. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sort.cpp +0 -0
  353. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sort.h +0 -0
  354. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortAscendLE.cpp +0 -0
  355. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortAscendLE.h +0 -0
  356. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortIdx.cpp +0 -0
  357. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortIdx.h +0 -0
  358. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortLE.cpp +0 -0
  359. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortLE.h +0 -0
  360. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortrows.cpp +0 -0
  361. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sortrows.h +0 -0
  362. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/splitEllipsoid.cpp +0 -0
  363. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/splitEllipsoid.h +0 -0
  364. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sprintf.cpp +0 -0
  365. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sprintf.h +0 -0
  366. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sqrt.cpp +0 -0
  367. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sqrt.h +0 -0
  368. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sqrt1.cpp +0 -0
  369. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sqrt1.h +0 -0
  370. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/std.cpp +0 -0
  371. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/std.h +0 -0
  372. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/str2double.cpp +0 -0
  373. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/str2double.h +0 -0
  374. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/strcmp.cpp +0 -0
  375. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/strcmp.h +0 -0
  376. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/strjoin.cpp +0 -0
  377. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/strjoin.h +0 -0
  378. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/strlength.cpp +0 -0
  379. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/strlength.h +0 -0
  380. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/structConstructorHelper.cpp +0 -0
  381. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/structConstructorHelper.h +0 -0
  382. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sum.cpp +0 -0
  383. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/sum.h +0 -0
  384. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/tic.cpp +0 -0
  385. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/tic.h +0 -0
  386. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/timeKeeper.cpp +0 -0
  387. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/timeKeeper.h +0 -0
  388. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/tmwtypes.h +0 -0
  389. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/toc.cpp +0 -0
  390. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/toc.h +0 -0
  391. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/triggerEvent.cpp +0 -0
  392. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/triggerEvent.h +0 -0
  393. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/unpackParams.cpp +0 -0
  394. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/unpackParams.h +0 -0
  395. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/unsafeSxfun.cpp +0 -0
  396. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/unsafeSxfun.h +0 -0
  397. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/useConstantDim.cpp +0 -0
  398. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/useConstantDim.h +0 -0
  399. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/vAllOrAny.cpp +0 -0
  400. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/vAllOrAny.h +0 -0
  401. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/validate_print_arguments.cpp +0 -0
  402. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/validate_print_arguments.h +0 -0
  403. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/var.cpp +0 -0
  404. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/var.h +0 -0
  405. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/varstd.cpp +0 -0
  406. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/varstd.h +0 -0
  407. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xaxpy.cpp +0 -0
  408. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xaxpy.h +0 -0
  409. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdladiv.cpp +0 -0
  410. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdladiv.h +0 -0
  411. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlaev2.cpp +0 -0
  412. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlaev2.h +0 -0
  413. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlahqr.cpp +0 -0
  414. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlahqr.h +0 -0
  415. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlaln2.cpp +0 -0
  416. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlaln2.h +0 -0
  417. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlanv2.cpp +0 -0
  418. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdlanv2.h +0 -0
  419. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdotc.cpp +0 -0
  420. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdotc.h +0 -0
  421. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdtrevc3.cpp +0 -0
  422. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xdtrevc3.h +0 -0
  423. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgeev.cpp +0 -0
  424. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgeev.h +0 -0
  425. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgemm.cpp +0 -0
  426. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgemm.h +0 -0
  427. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgemv.cpp +0 -0
  428. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgemv.h +0 -0
  429. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgeqp3.cpp +0 -0
  430. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgeqp3.h +0 -0
  431. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgerc.cpp +0 -0
  432. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgerc.h +0 -0
  433. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgeru.cpp +0 -0
  434. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgeru.h +0 -0
  435. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgetrf.cpp +0 -0
  436. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xgetrf.h +0 -0
  437. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xnrm2.cpp +0 -0
  438. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xnrm2.h +0 -0
  439. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xrot.cpp +0 -0
  440. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xrot.h +0 -0
  441. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xscal.cpp +0 -0
  442. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xscal.h +0 -0
  443. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xswap.cpp +0 -0
  444. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xswap.h +0 -0
  445. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xsyheev.cpp +0 -0
  446. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xsyheev.h +0 -0
  447. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xtrsm.cpp +0 -0
  448. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xtrsm.h +0 -0
  449. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xtrsv.cpp +0 -0
  450. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xtrsv.h +0 -0
  451. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xunormqr.cpp +0 -0
  452. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xunormqr.h +0 -0
  453. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgebak.cpp +0 -0
  454. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgebak.h +0 -0
  455. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgebal.cpp +0 -0
  456. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgebal.h +0 -0
  457. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgehrd.cpp +0 -0
  458. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgehrd.h +0 -0
  459. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgeqp3.cpp +0 -0
  460. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzgeqp3.h +0 -0
  461. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlangeM.cpp +0 -0
  462. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlangeM.h +0 -0
  463. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlarf.cpp +0 -0
  464. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlarf.h +0 -0
  465. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlarfg.cpp +0 -0
  466. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlarfg.h +0 -0
  467. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlartg.cpp +0 -0
  468. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlartg.h +0 -0
  469. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlascl.cpp +0 -0
  470. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzlascl.h +0 -0
  471. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzsteqr.cpp +0 -0
  472. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzsteqr.h +0 -0
  473. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzsyheev.cpp +0 -0
  474. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzsyheev.h +0 -0
  475. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzsyhetrd.cpp +0 -0
  476. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzsyhetrd.h +0 -0
  477. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzunghr.cpp +0 -0
  478. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzunghr.h +0 -0
  479. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzungqr.cpp +0 -0
  480. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzungqr.h +0 -0
  481. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzunorgtr.cpp +0 -0
  482. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/RAT/xzunorgtr.h +0 -0
  483. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/includes/defines.h +0 -0
  484. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/includes/functions.h +0 -0
  485. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/cpp/rat.cpp +0 -0
  486. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/__init__.py +0 -0
  487. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/__init__.py +0 -0
  488. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/absorption/__init__.py +0 -0
  489. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/absorption/absorption.py +0 -0
  490. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/absorption/volume_thiol_bilayer.py +0 -0
  491. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/convert_rascal_project/Model_IIb.py +0 -0
  492. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/convert_rascal_project/__init__.py +0 -0
  493. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/convert_rascal_project/convert_rascal.py +0 -0
  494. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/D2O_spin_down.dat +0 -0
  495. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/D2O_spin_up.dat +0 -0
  496. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/DSPC_D2O.dat +0 -0
  497. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/DSPC_SMW.dat +0 -0
  498. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/H2O_spin_down.dat +0 -0
  499. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/H2O_spin_up.dat +0 -0
  500. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/__init__.py +0 -0
  501. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/c_PLP0016596.dat +0 -0
  502. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/c_PLP0016601.dat +0 -0
  503. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/c_PLP0016607.dat +0 -0
  504. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/data/d2o_background_data.dat +0 -0
  505. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/domains/__init__.py +0 -0
  506. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/domains/alloy_domains.py +0 -0
  507. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/domains/domains_custom_XY.py +0 -0
  508. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/domains/domains_custom_layers.py +0 -0
  509. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/domains/domains_standard_layers.py +0 -0
  510. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/languages/__init__.py +0 -0
  511. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/languages/custom_bilayer.py +0 -0
  512. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/languages/run_custom_file_languages.py +0 -0
  513. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/languages/setup_problem.py +0 -0
  514. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/DSPC_custom_XY.py +0 -0
  515. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/DSPC_custom_layers.py +0 -0
  516. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/DSPC_data_background.py +0 -0
  517. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/DSPC_function_background.py +0 -0
  518. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/DSPC_standard_layers.py +0 -0
  519. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/__init__.py +0 -0
  520. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/background_function.py +0 -0
  521. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/examples/normal_reflectivity/custom_bilayer_DSPC.py +0 -0
  522. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/models.py +0 -0
  523. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/run.py +0 -0
  524. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi/utils/__init__.py +0 -0
  525. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi.egg-info/SOURCES.txt +0 -0
  526. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi.egg-info/dependency_links.txt +0 -0
  527. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi.egg-info/not-zip-safe +0 -0
  528. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/ratapi.egg-info/top_level.txt +0 -0
  529. {ratapi-0.0.0.dev8 → ratapi-0.0.0.dev9}/setup.cfg +0 -0
@@ -1,20 +1,21 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ratapi
3
- Version: 0.0.0.dev8
3
+ Version: 0.0.0.dev9
4
4
  Summary: Python extension for the Reflectivity Analysis Toolbox (RAT)
5
5
  Home-page: https://github.com/RascalSoftware/python-RAT
6
6
  Author:
7
7
  Author-email:
8
8
  Requires-Python: >=3.10
9
9
  Description-Content-Type: text/markdown
10
- Provides-Extra: Dev
11
- Provides-Extra: Matlab_2023a
12
- Provides-Extra: Matlab_2023b
13
- Provides-Extra: Matlab_2024a
14
- Provides-Extra: Matlab_2024b
15
- Provides-Extra: Matlab_2025a
16
- Provides-Extra: Matlab_latest
17
- Provides-Extra: Orso
10
+ Provides-Extra: dev
11
+ Provides-Extra: matlab_2023a
12
+ Provides-Extra: matlab_2023b
13
+ Provides-Extra: matlab_2024a
14
+ Provides-Extra: matlab_2024b
15
+ Provides-Extra: matlab_2025a
16
+ Provides-Extra: matlab_2025b
17
+ Provides-Extra: matlab_latest
18
+ Provides-Extra: orso
18
19
 
19
20
  python-RAT
20
21
  ==========
@@ -30,11 +31,11 @@ To install in local directory:
30
31
 
31
32
  matlabengine is an optional dependency only required for Matlab custom functions. The version of matlabengine should match the version of Matlab installed on the machine. This can be installed as shown below:
32
33
 
33
- pip install -e .[Matlab-2023a]
34
+ pip install -e .[matlab-2023a]
34
35
 
35
36
  Development dependencies can be installed as shown below
36
37
 
37
- pip install -e .[Dev]
38
+ pip install -e .[dev]
38
39
 
39
40
  To build wheel:
40
41
 
@@ -12,11 +12,11 @@ To install in local directory:
12
12
 
13
13
  matlabengine is an optional dependency only required for Matlab custom functions. The version of matlabengine should match the version of Matlab installed on the machine. This can be installed as shown below:
14
14
 
15
- pip install -e .[Matlab-2023a]
15
+ pip install -e .[matlab-2023a]
16
16
 
17
17
  Development dependencies can be installed as shown below
18
18
 
19
- pip install -e .[Dev]
19
+ pip install -e .[dev]
20
20
 
21
21
  To build wheel:
22
22
 
@@ -139,11 +139,7 @@ namespace RAT
139
139
  }
140
140
  }
141
141
  } else {
142
- outputLayers.set_size(1, 4);
143
- outputLayers[0] = 0.0;
144
- outputLayers[outputLayers.size(0)] = 0.0;
145
- outputLayers[outputLayers.size(0) * 2] = 0.0;
146
- outputLayers[outputLayers.size(0) * 3] = 0.0;
142
+ outputLayers.set_size(0, 4);
147
143
  }
148
144
 
149
145
  return ssubs;
@@ -0,0 +1,90 @@
1
+ [build-system]
2
+ requires = [
3
+ 'setuptools>=61',
4
+ 'wheel',
5
+ 'pybind11>=2.4',
6
+ ]
7
+ build-backend = 'setuptools.build_meta'
8
+
9
+ [project]
10
+ name = "ratapi"
11
+ version = "0.0.0.dev9"
12
+ description = "Python extension for the Reflectivity Analysis Toolbox (RAT)"
13
+ readme = "README.md"
14
+ requires-python = ">=3.10"
15
+ dependencies = [
16
+ "matplotlib>=3.8.3",
17
+ "numpy>=1.20",
18
+ "prettytable>=3.9.0",
19
+ "pydantic>=2.7.2",
20
+ "scipy>=1.13.1",
21
+ "strenum>=0.4.15 ; python_full_version < '3.11'",
22
+ "tqdm>=4.66.5",
23
+ ]
24
+
25
+ [project.optional-dependencies]
26
+ dev = [
27
+ "pytest>=7.4.0",
28
+ "pytest-cov>=4.1.0",
29
+ "ruff>=0.4.10"
30
+ ]
31
+ orso = [
32
+ "orsopy>=1.2.1",
33
+ "pint>=0.24.4"
34
+ ]
35
+ matlab_latest = ["matlabengine"]
36
+ matlab_2025b = ["matlabengine == 25.2.*"]
37
+ matlab_2025a = ["matlabengine == 25.1.2"]
38
+ matlab_2024b = ["matlabengine == 24.2.2"]
39
+ matlab_2024a = ["matlabengine == 24.1.4"]
40
+ matlab_2023b = ["matlabengine == 23.2.3"]
41
+ matlab_2023a = ["matlabengine == 9.14.3"]
42
+
43
+ [tool.uv]
44
+ conflicts = [
45
+ [
46
+ { extra = "matlab_latest" },
47
+ { extra = "matlab_2025b" },
48
+ { extra = "matlab_2025a" },
49
+ { extra = "matlab_2024b" },
50
+ { extra = "matlab_2024a" },
51
+ { extra = "matlab_2023b" },
52
+ { extra = "matlab_2023a" },
53
+ ],
54
+ ]
55
+
56
+ [tool.ruff]
57
+ line-length = 120
58
+ extend-exclude = ["*.ipynb"]
59
+
60
+ [tool.ruff.lint]
61
+ select = ["E", # pycodestyle errors
62
+ "F", # pyflakes
63
+ "UP", # pyupgrade
64
+ "B", # flake8-bugbear
65
+ "SIM", # flake8-simplify
66
+ "I", # isort
67
+ "D"] # pydocstyle
68
+
69
+ ignore = ["SIM103", # needless bool
70
+ "SIM108", # if-else block instead of ternary operator
71
+ "D105", # undocumented __init__
72
+ "D107", # undocumented magic method
73
+ "D203", # blank line before class docstring
74
+ "D213", # multi line summary should start at second line
75
+ "UP038"] # non pep604 isinstance - to be removed
76
+
77
+ # ignore docstring lints in the tests and install script
78
+ [tool.ruff.lint.per-file-ignores]
79
+ "tests/*" = ["D"]
80
+ "setup.py" = ["D"]
81
+
82
+ [tool.ruff.lint.flake8-pytest-style]
83
+ fixture-parentheses = false
84
+ mark-parentheses = false
85
+
86
+ [tool.ruff.lint.pydocstyle]
87
+ convention = "numpy"
88
+
89
+ [tool.ruff.lint.isort]
90
+ known-first-party = ["ratapi.rat_core"]
@@ -5,7 +5,7 @@ import contextlib
5
5
  import importlib
6
6
  import warnings
7
7
  from collections.abc import Sequence
8
- from typing import Any, Generic, TypeVar, Union
8
+ from typing import Any, Generic, TypeVar
9
9
 
10
10
  import numpy as np
11
11
  import prettytable
@@ -38,7 +38,7 @@ class ClassList(collections.UserList, Generic[T]):
38
38
 
39
39
  """
40
40
 
41
- def __init__(self, init_list: Union[Sequence[T], T] = None, name_field: str = "name") -> None:
41
+ def __init__(self, init_list: Sequence[T] | T = None, name_field: str = "name") -> None:
42
42
  self.name_field = name_field
43
43
 
44
44
  # Set input as list if necessary
@@ -114,7 +114,7 @@ class ClassList(collections.UserList, Generic[T]):
114
114
  output = str(self.data)
115
115
  return output
116
116
 
117
- def __getitem__(self, index: Union[int, slice, str, T]) -> T:
117
+ def __getitem__(self, index: int | slice | str | T) -> T:
118
118
  """Get an item by its index, name, a slice, or the object itself."""
119
119
  if isinstance(index, (int, slice)):
120
120
  return self.data[index]
@@ -262,12 +262,12 @@ class ClassList(collections.UserList, Generic[T]):
262
262
  self._validate_name_field(kwargs)
263
263
  self.data.insert(index, self._class_handle(**kwargs))
264
264
 
265
- def remove(self, item: Union[T, str]) -> None:
265
+ def remove(self, item: T | str) -> None:
266
266
  """Remove an object from the ClassList using either the object itself or its ``name_field`` value."""
267
267
  item = self._get_item_from_name_field(item)
268
268
  self.data.remove(item)
269
269
 
270
- def count(self, item: Union[T, str]) -> int:
270
+ def count(self, item: T | str) -> int:
271
271
  """Return the number of times an object appears in the ClassList.
272
272
 
273
273
  This method can use either the object itself or its ``name_field`` value.
@@ -276,7 +276,7 @@ class ClassList(collections.UserList, Generic[T]):
276
276
  item = self._get_item_from_name_field(item)
277
277
  return self.data.count(item)
278
278
 
279
- def index(self, item: Union[T, str], offset: bool = False, *args) -> int:
279
+ def index(self, item: T | str, offset: bool = False, *args) -> int:
280
280
  """Return the index of a particular object in the ClassList.
281
281
 
282
282
  This method can use either the object itself or its ``name_field`` value.
@@ -309,7 +309,7 @@ class ClassList(collections.UserList, Generic[T]):
309
309
  ]
310
310
  )
311
311
 
312
- def set_fields(self, index: Union[int, slice, str, T], **kwargs) -> None:
312
+ def set_fields(self, index: int | slice | str | T, **kwargs) -> None:
313
313
  """Assign the values of an existing object's attributes using keyword arguments."""
314
314
  self._validate_name_field(kwargs)
315
315
  pydantic_object = False
@@ -519,7 +519,7 @@ class ClassList(collections.UserList, Generic[T]):
519
519
  f"In the input list:\n{newline.join(error for error in error_list)}\n"
520
520
  )
521
521
 
522
- def _get_item_from_name_field(self, value: Union[T, str]) -> Union[T, str]:
522
+ def _get_item_from_name_field(self, value: T | str) -> T | str:
523
523
  """Return the object with the given value of the ``name_field`` attribute in the ClassList.
524
524
 
525
525
  Parameters
@@ -577,11 +577,12 @@ class ClassList(collections.UserList, Generic[T]):
577
577
  @classmethod
578
578
  def __get_pydantic_core_schema__(cls, source: Any, handler):
579
579
  # import here so that the ClassList can be instantiated and used without Pydantic installed
580
+ from typing import get_args, get_origin
581
+
580
582
  from pydantic import ValidatorFunctionWrapHandler
581
583
  from pydantic.types import (
582
584
  core_schema, # import core_schema through here rather than making pydantic_core a dependency
583
585
  )
584
- from typing_extensions import get_args, get_origin
585
586
 
586
587
  # if annotated with a class, get the item type of that class
587
588
  origin = get_origin(source)
@@ -5,7 +5,6 @@ import os
5
5
  import tempfile
6
6
  import warnings
7
7
  from pathlib import Path
8
- from typing import Union
9
8
 
10
9
  import prettytable
11
10
  from pydantic import (
@@ -233,22 +232,19 @@ class Controls(BaseModel, validate_assignment=True, extra="forbid", use_attribut
233
232
  os.remove(self._IPCFilePath)
234
233
  return None
235
234
 
236
- def save(self, path: Union[str, Path], filename: str = "controls"):
235
+ def save(self, filepath: str | Path = "./controls.json"):
237
236
  """Save a controls object to a JSON file.
238
237
 
239
238
  Parameters
240
239
  ----------
241
- path : str or Path
242
- The directory in which the controls object will be written.
243
- filename : str
244
- The name for the JSON file containing the controls object.
245
-
240
+ filepath : str or Path
241
+ The path to where the controls file will be written.
246
242
  """
247
- file = Path(path, f"{filename.removesuffix('.json')}.json")
248
- file.write_text(self.model_dump_json())
243
+ filepath = Path(filepath).with_suffix(".json")
244
+ filepath.write_text(self.model_dump_json())
249
245
 
250
246
  @classmethod
251
- def load(cls, path: Union[str, Path]) -> "Controls":
247
+ def load(cls, path: str | Path) -> "Controls":
252
248
  """Load a controls object from file.
253
249
 
254
250
  Parameters
@@ -1,12 +1,12 @@
1
1
  """Hooks for connecting to run callback events."""
2
2
 
3
3
  import os
4
- from typing import Callable, Union
4
+ from collections.abc import Callable
5
5
 
6
6
  from ratapi.rat_core import EventBridge, EventTypes, PlotEventData, ProgressEventData
7
7
 
8
8
 
9
- def notify(event_type: EventTypes, data: Union[str, PlotEventData, ProgressEventData]) -> None:
9
+ def notify(event_type: EventTypes, data: str | PlotEventData | ProgressEventData) -> None:
10
10
  """Call registered callbacks with data when event type has been triggered.
11
11
 
12
12
  Parameters
@@ -22,7 +22,7 @@ def notify(event_type: EventTypes, data: Union[str, PlotEventData, ProgressEvent
22
22
  callback(data)
23
23
 
24
24
 
25
- def get_event_callback(event_type: EventTypes) -> list[Callable[[Union[str, PlotEventData, ProgressEventData]], None]]:
25
+ def get_event_callback(event_type: EventTypes) -> list[Callable[[str | PlotEventData | ProgressEventData], None]]:
26
26
  """Return all callbacks registered for the given event type.
27
27
 
28
28
  Parameters
@@ -39,7 +39,7 @@ def get_event_callback(event_type: EventTypes) -> list[Callable[[Union[str, Plot
39
39
  return list(__event_callbacks[event_type])
40
40
 
41
41
 
42
- def register(event_type: EventTypes, callback: Callable[[Union[str, PlotEventData, ProgressEventData]], None]) -> None:
42
+ def register(event_type: EventTypes, callback: Callable[[str | PlotEventData | ProgressEventData], None]) -> None:
43
43
  """Register a new callback for the event type.
44
44
 
45
45
  Parameters
@@ -1,8 +1,9 @@
1
1
  """Custom model file for the domains custom XY example."""
2
2
 
3
- import math
3
+ from math import sqrt
4
4
 
5
5
  import numpy as np
6
+ from scipy.special import erf
6
7
 
7
8
 
8
9
  def domains_XY_model(params, bulk_in, bulk_out, contrast, domain):
@@ -19,13 +20,13 @@ def domains_XY_model(params, bulk_in, bulk_out, contrast, domain):
19
20
  z = np.arange(0, 141)
20
21
 
21
22
  # Make the volume fraction distribution for our Silicon substrate
22
- [vfSilicon, siSurf] = makeLayer(z, -25, 50, 1, subRough, subRough)
23
+ [vfSilicon, siSurf] = make_layer(z, -25, 50, 1, subRough, subRough)
23
24
 
24
25
  # ... and the Oxide ...
25
- [vfOxide, oxSurface] = makeLayer(z, siSurf, oxideThick, 1, subRough, subRough)
26
+ [vfOxide, oxSurface] = make_layer(z, siSurf, oxideThick, 1, subRough, subRough)
26
27
 
27
28
  # ... and also our layer.
28
- [vfLayer, laySurface] = makeLayer(z, oxSurface, layerThick, 1, subRough, layerRough)
29
+ [vfLayer, laySurface] = make_layer(z, oxSurface, layerThick, 1, subRough, layerRough)
29
30
 
30
31
  # Everything that is not already occupied will be filled will water
31
32
  totalVF = vfSilicon + vfOxide + vfLayer
@@ -53,7 +54,7 @@ def domains_XY_model(params, bulk_in, bulk_out, contrast, domain):
53
54
  return SLD, subRough
54
55
 
55
56
 
56
- def makeLayer(z, prevLaySurf, thickness, height, Sigma_L, Sigma_R):
57
+ def make_layer(z, prevLaySurf, thickness, height, Sigma_L, Sigma_R):
57
58
  """Produce a layer, with a defined thickness, height and roughness.
58
59
 
59
60
  Each side of the layer has its own roughness value.
@@ -63,12 +64,9 @@ def makeLayer(z, prevLaySurf, thickness, height, Sigma_L, Sigma_R):
63
64
  right = prevLaySurf + thickness
64
65
 
65
66
  # Make our heaviside
66
- a = (z - left) / ((2**0.5) * Sigma_L)
67
- b = (z - right) / ((2**0.5) * Sigma_R)
67
+ erf_left = erf((z - left) / (sqrt(2) * Sigma_L))
68
+ erf_right = erf((z - right) / (sqrt(2) * Sigma_R))
68
69
 
69
- erf_a = np.array([math.erf(value) for value in a])
70
- erf_b = np.array([math.erf(value) for value in b])
71
-
72
- VF = np.array((height / 2) * (erf_a - erf_b))
70
+ VF = np.array((0.5 * height) * (erf_left - erf_right))
73
71
 
74
72
  return VF, right
@@ -1,8 +1,9 @@
1
1
  """A custom XY model for a supported DSPC bilayer."""
2
2
 
3
- import math
3
+ from math import sqrt
4
4
 
5
5
  import numpy as np
6
+ from scipy.special import erf
6
7
 
7
8
 
8
9
  def custom_XY_DSPC(params, bulk_in, bulk_out, contrast):
@@ -51,10 +52,10 @@ def custom_XY_DSPC(params, bulk_in, bulk_out, contrast):
51
52
  z = np.arange(0, 141)
52
53
 
53
54
  # Make our Silicon substrate
54
- vfSilicon, siSurf = layer(z, -25, 50, 1, subRough, subRough)
55
+ vfSilicon, siSurf = make_layer(z, -25, 50, 1, subRough, subRough)
55
56
 
56
57
  # Add the Oxide
57
- vfOxide, oxSurface = layer(z, siSurf, oxideThick, 1, subRough, subRough)
58
+ vfOxide, oxSurface = make_layer(z, siSurf, oxideThick, 1, subRough, subRough)
58
59
 
59
60
  # We fill in the water at the end, but there may be a hydration layer between the bilayer and the oxide,
60
61
  # so we start the bilayer stack an appropriate distance away
@@ -65,15 +66,15 @@ def custom_XY_DSPC(params, bulk_in, bulk_out, contrast):
65
66
  headThick = vHead / lipidAPM
66
67
 
67
68
  # ... and make a box for the volume fraction (1 for now, we correct for coverage later)
68
- vfHeadL, headLSurface = layer(z, watSurface, headThick, 1, bilayerRough, bilayerRough)
69
+ vfHeadL, headLSurface = make_layer(z, watSurface, headThick, 1, bilayerRough, bilayerRough)
69
70
 
70
71
  # ... also do the same for the tails
71
72
  # We'll make both together, so the thickness will be twice the volume
72
73
  tailsThick = (2 * vTail) / lipidAPM
73
- vfTails, tailsSurf = layer(z, headLSurface, tailsThick, 1, bilayerRough, bilayerRough)
74
+ vfTails, tailsSurf = make_layer(z, headLSurface, tailsThick, 1, bilayerRough, bilayerRough)
74
75
 
75
76
  # Finally the upper head ...
76
- vfHeadR, headSurface = layer(z, tailsSurf, headThick, 1, bilayerRough, bilayerRough)
77
+ vfHeadR, headSurface = make_layer(z, tailsSurf, headThick, 1, bilayerRough, bilayerRough)
77
78
 
78
79
  # Making the model
79
80
  # We've created the volume fraction profiles corresponding to each of the groups.
@@ -114,12 +115,12 @@ def custom_XY_DSPC(params, bulk_in, bulk_out, contrast):
114
115
  totSLD = sldSilicon + sldOxide + sldHeadL + sldTails + sldHeadR + sldWat
115
116
 
116
117
  # Make the SLD array for output
117
- SLD = [[a, b] for (a, b) in zip(z, totSLD)]
118
+ SLD = np.column_stack((z, totSLD))
118
119
 
119
120
  return SLD, subRough
120
121
 
121
122
 
122
- def layer(z, prevLaySurf, thickness, height, Sigma_L, Sigma_R):
123
+ def make_layer(z, prevLaySurf, thickness, height, Sigma_L, Sigma_R):
123
124
  """Produce a layer, with a defined thickness, height and roughness.
124
125
 
125
126
  Each side of the layer has its own roughness value.
@@ -129,12 +130,9 @@ def layer(z, prevLaySurf, thickness, height, Sigma_L, Sigma_R):
129
130
  right = prevLaySurf + thickness
130
131
 
131
132
  # Make our heaviside
132
- a = (z - left) / ((2**0.5) * Sigma_L)
133
- b = (z - right) / ((2**0.5) * Sigma_R)
133
+ erf_left = erf((z - left) / (sqrt(2) * Sigma_L))
134
+ erf_right = erf((z - right) / (sqrt(2) * Sigma_R))
134
135
 
135
- erf_a = np.array([math.erf(value) for value in a])
136
- erf_b = np.array([math.erf(value) for value in b])
137
-
138
- VF = np.array((height / 2) * (erf_a - erf_b))
136
+ VF = np.array((0.5 * height) * (erf_left - erf_right))
139
137
 
140
138
  return VF, right
@@ -3,7 +3,7 @@
3
3
  import importlib
4
4
  import os
5
5
  import pathlib
6
- from typing import Callable, Union
6
+ from collections.abc import Callable
7
7
 
8
8
  import numpy as np
9
9
 
@@ -23,7 +23,7 @@ parameter_field = {
23
23
  }
24
24
 
25
25
 
26
- def get_python_handle(file_name: str, function_name: str, path: Union[str, pathlib.Path] = "") -> Callable:
26
+ def get_python_handle(file_name: str, function_name: str, path: str | pathlib.Path = "") -> Callable:
27
27
  """Get the function handle from a function defined in a python module located anywhere within the filesystem.
28
28
 
29
29
  Parameters
@@ -3,7 +3,7 @@
3
3
  import json
4
4
  from dataclasses import dataclass
5
5
  from pathlib import Path
6
- from typing import Any, Optional, Union
6
+ from typing import Any, Union
7
7
 
8
8
  import numpy as np
9
9
 
@@ -244,7 +244,7 @@ class Results:
244
244
  output += get_field_string(key, value, 100)
245
245
  return output
246
246
 
247
- def save(self, filepath: Union[str, Path] = "./results.json"):
247
+ def save(self, filepath: str | Path = "./results.json"):
248
248
  """Save the Results object to a JSON file.
249
249
 
250
250
  Parameters
@@ -258,7 +258,7 @@ class Results:
258
258
  filepath.write_text(json.dumps(json_dict))
259
259
 
260
260
  @classmethod
261
- def load(cls, path: Union[str, Path]) -> Union["Results", "BayesResults"]:
261
+ def load(cls, path: str | Path) -> Union["Results", "BayesResults"]:
262
262
  """Load a Results object from file.
263
263
 
264
264
  Parameters
@@ -538,7 +538,7 @@ class BayesResults(Results):
538
538
  nestedSamplerOutput: NestedSamplerOutput
539
539
  chain: np.ndarray
540
540
 
541
- def save(self, filepath: Union[str, Path] = "./results.json"):
541
+ def save(self, filepath: str | Path = "./results.json"):
542
542
  """Save the BayesResults object to a JSON file.
543
543
 
544
544
  Parameters
@@ -574,7 +574,7 @@ class BayesResults(Results):
574
574
  filepath.write_text(json.dumps(json_dict))
575
575
 
576
576
 
577
- def write_core_results_fields(results: Union[Results, BayesResults], json_dict: Optional[dict] = None) -> dict:
577
+ def write_core_results_fields(results: Results | BayesResults, json_dict: dict | None = None) -> dict:
578
578
  """Modify the values of the fields that appear in both Results and BayesResults when saving to a json file.
579
579
 
580
580
  Parameters
@@ -684,8 +684,8 @@ def read_bayes_results_fields(results_dict: dict) -> dict:
684
684
  def make_results(
685
685
  procedure: Procedures,
686
686
  output_results: ratapi.rat_core.OutputResult,
687
- bayes_results: Optional[ratapi.rat_core.OutputBayesResult] = None,
688
- ) -> Union[Results, BayesResults]:
687
+ bayes_results: ratapi.rat_core.OutputBayesResult | None = None,
688
+ ) -> Results | BayesResults:
689
689
  """Initialise a python Results or BayesResults object using the outputs from a RAT calculation.
690
690
 
691
691
  Parameters
@@ -5,10 +5,11 @@ import copy
5
5
  import functools
6
6
  import json
7
7
  import warnings
8
+ from collections.abc import Callable
8
9
  from enum import Enum
9
10
  from pathlib import Path
10
11
  from textwrap import indent
11
- from typing import Annotated, Any, Callable, Union
12
+ from typing import Annotated, Any, get_args, get_origin
12
13
 
13
14
  import numpy as np
14
15
  from pydantic import (
@@ -21,7 +22,6 @@ from pydantic import (
21
22
  field_validator,
22
23
  model_validator,
23
24
  )
24
- from typing_extensions import get_args, get_origin
25
25
 
26
26
  import ratapi.models
27
27
  from ratapi.classlist import ClassList
@@ -248,10 +248,10 @@ class Project(BaseModel, validate_assignment=True, extra="forbid", use_attribute
248
248
  data: ClassList[ratapi.models.Data] = ClassList()
249
249
  """Experimental data for a model."""
250
250
 
251
- layers: Union[
252
- Annotated[ClassList[ratapi.models.Layer], Tag("no_abs")],
253
- Annotated[ClassList[ratapi.models.AbsorptionLayer], Tag("abs")],
254
- ] = Field(
251
+ layers: (
252
+ Annotated[ClassList[ratapi.models.Layer], Tag("no_abs")]
253
+ | Annotated[ClassList[ratapi.models.AbsorptionLayer], Tag("abs")]
254
+ ) = Field(
255
255
  default=ClassList(),
256
256
  discriminator=Discriminator(
257
257
  discriminate_layers,
@@ -265,10 +265,10 @@ class Project(BaseModel, validate_assignment=True, extra="forbid", use_attribute
265
265
  domain_contrasts: ClassList[ratapi.models.DomainContrast] = ClassList()
266
266
  """The groups of layers required by each domain in a domains model."""
267
267
 
268
- contrasts: Union[
269
- Annotated[ClassList[ratapi.models.Contrast], Tag("no_ratio")],
270
- Annotated[ClassList[ratapi.models.ContrastWithRatio], Tag("ratio")],
271
- ] = Field(
268
+ contrasts: (
269
+ Annotated[ClassList[ratapi.models.Contrast], Tag("no_ratio")]
270
+ | Annotated[ClassList[ratapi.models.ContrastWithRatio], Tag("ratio")]
271
+ ) = Field(
272
272
  default=ClassList(),
273
273
  discriminator=Discriminator(
274
274
  discriminate_contrasts,
@@ -577,7 +577,7 @@ class Project(BaseModel, validate_assignment=True, extra="forbid", use_attribute
577
577
  old_names = self._all_names[class_list]
578
578
  new_names = getattr(self, class_list).get_names()
579
579
  if len(old_names) == len(new_names):
580
- name_diff = [(old, new) for (old, new) in zip(old_names, new_names) if old != new]
580
+ name_diff = [(old, new) for (old, new) in zip(old_names, new_names, strict=False) if old != new]
581
581
  for old_name, new_name in name_diff:
582
582
  for field in fields_to_update:
583
583
  project_field = getattr(self, field.attribute)
@@ -927,7 +927,7 @@ from numpy import array, empty, inf
927
927
  + "\n)"
928
928
  )
929
929
 
930
- def save(self, filepath: Union[str, Path] = "./project.json"):
930
+ def save(self, filepath: str | Path = "./project.json"):
931
931
  """Save a project to a JSON file.
932
932
 
933
933
  Parameters
@@ -973,7 +973,7 @@ from numpy import array, empty, inf
973
973
  filepath.write_text(json.dumps(json_dict))
974
974
 
975
975
  @classmethod
976
- def load(cls, path: Union[str, Path]) -> "Project":
976
+ def load(cls, path: str | Path) -> "Project":
977
977
  """Load a project from file.
978
978
 
979
979
  Parameters
@@ -4,7 +4,6 @@ import warnings
4
4
  from collections.abc import Iterable
5
5
  from os import PathLike
6
6
  from pathlib import Path
7
- from typing import Union
8
7
 
9
8
  from numpy import array, empty
10
9
  from scipy.io.matlab import MatlabOpaque, loadmat
@@ -15,7 +14,7 @@ from ratapi.models import Background, Contrast, CustomFile, Data, Layer, Paramet
15
14
  from ratapi.utils.enums import Geometries, Languages, LayerModels
16
15
 
17
16
 
18
- def r1_to_project(filename: Union[str, PathLike]) -> Project:
17
+ def r1_to_project(filename: str | PathLike) -> Project:
19
18
  """Read a RasCAL1 project struct as a Python `Project`.
20
19
 
21
20
  Parameters
@@ -43,7 +42,7 @@ def r1_to_project(filename: Union[str, PathLike]) -> Project:
43
42
  layer_model = LayerModels.CustomXY
44
43
  layer_model = LayerModels(layer_model)
45
44
 
46
- def zip_if_several(*params) -> Union[tuple, list[tuple]]:
45
+ def zip_if_several(*params) -> tuple | list[tuple]:
47
46
  """Zips parameters if necessary, but can handle single-item parameters.
48
47
 
49
48
  Examples
@@ -64,7 +63,7 @@ def r1_to_project(filename: Union[str, PathLike]) -> Project:
64
63
 
65
64
  """
66
65
  if all(isinstance(param, Iterable) and not isinstance(param, str) for param in params):
67
- return zip(*params)
66
+ return zip(*params, strict=False)
68
67
  return [params]
69
68
 
70
69
  def read_param(names, constrs, values, fits):
@@ -319,8 +318,8 @@ def r1_to_project(filename: Union[str, PathLike]) -> Project:
319
318
 
320
319
 
321
320
  def project_to_r1(
322
- project: Project, filename: Union[str, PathLike] = "RAT_project", return_struct: bool = False
323
- ) -> Union[dict, None]:
321
+ project: Project, filename: str | PathLike = "RAT_project", return_struct: bool = False
322
+ ) -> dict | None:
324
323
  """Convert a RAT Project to a RasCAL1 project struct.
325
324
 
326
325
  Parameters
@@ -1,13 +1,11 @@
1
1
  """Defines routines for custom error handling in RAT."""
2
2
 
3
- from typing import Optional
4
-
5
3
  import pydantic_core
6
4
 
7
5
 
8
6
  def custom_pydantic_validation_error(
9
7
  error_list: list[pydantic_core.ErrorDetails],
10
- custom_error_msgs: Optional[dict[str, str]] = None,
8
+ custom_error_msgs: dict[str, str] | None = None,
11
9
  ) -> list[pydantic_core.ErrorDetails]:
12
10
  """Give Pydantic errors a better custom message with extraneous information removed.
13
11