diffpy.srfit 3.2.0rc1__tar.gz → 3.3.0rc2__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 (140) hide show
  1. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/AUTHORS.rst +2 -2
  2. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/LICENSE.rst +1 -1
  3. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/MANIFEST.in +0 -1
  4. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/PKG-INFO +44 -14
  5. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/README.rst +34 -7
  6. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/pyproject.toml +18 -6
  7. diffpy_srfit-3.3.0rc2/requirements/conda.txt +6 -0
  8. diffpy_srfit-3.3.0rc2/requirements/pip.txt +6 -0
  9. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/__init__.py +7 -2
  10. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/__init__.py +25 -0
  11. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/builder.py +96 -44
  12. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/equationmod.py +7 -8
  13. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/equation/literals/abcs.py +123 -0
  14. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/literals/argument.py +5 -5
  15. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/literals/literal.py +2 -1
  16. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/literals/operators.py +16 -13
  17. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/visitors/__init__.py +2 -2
  18. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/visitors/printer.py +4 -5
  19. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/visitors/swapper.py +8 -9
  20. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/visitors/validator.py +0 -1
  21. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/exceptions.py +3 -3
  22. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/__init__.py +2 -0
  23. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/calculator.py +30 -5
  24. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/configurable.py +8 -10
  25. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/constraint.py +67 -13
  26. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/fitcontribution.py +228 -75
  27. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/fithook.py +51 -46
  28. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/fitbase/fitrecipe.py +1858 -0
  29. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/fitresults.py +312 -150
  30. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/parameter.py +194 -98
  31. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/parameterset.py +87 -26
  32. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/profile.py +192 -74
  33. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/profilegenerator.py +52 -26
  34. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/fitbase/profileparser.py +480 -0
  35. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/fitbase/recipeorganizer.py +1828 -0
  36. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/restraint.py +46 -38
  37. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/fitbase/simplerecipe.py +426 -0
  38. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/fitbase/validatable.py +13 -5
  39. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/interface/__init__.py +0 -1
  40. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/interface/interface.py +85 -36
  41. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/pdf/basepdfgenerator.py +88 -40
  42. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/pdf/characteristicfunctions.py +752 -0
  43. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/pdf/debyepdfgenerator.py +20 -14
  44. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/pdf/pdfcontribution.py +98 -64
  45. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/pdf/pdfgenerator.py +11 -6
  46. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/pdf/pdfparser.py +96 -0
  47. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/prcalculator.py +7 -6
  48. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/sasgenerator.py +7 -7
  49. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/sasimport.py +3 -1
  50. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/sasparameter.py +4 -4
  51. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/sasparser.py +43 -60
  52. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/sasprofile.py +13 -10
  53. diffpy_srfit-3.3.0rc2/src/diffpy/srfit/srfit_app.py +33 -0
  54. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/__init__.py +9 -5
  55. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/bvsrestraint.py +3 -3
  56. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/cctbxparset.py +13 -13
  57. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/diffpyparset.py +15 -13
  58. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/objcrystparset.py +227 -113
  59. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/sgconstraints.py +171 -131
  60. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/srrealparset.py +3 -4
  61. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/__init__.py +2 -2
  62. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/argbinders.py +4 -1
  63. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/inpututils.py +43 -1
  64. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/observable.py +2 -2
  65. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/tagmanager.py +9 -7
  66. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/weakrefcallable.py +5 -4
  67. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/version.py +9 -8
  68. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy.srfit.egg-info/PKG-INFO +44 -14
  69. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy.srfit.egg-info/SOURCES.txt +3 -0
  70. diffpy_srfit-3.3.0rc2/src/diffpy.srfit.egg-info/entry_points.txt +2 -0
  71. diffpy_srfit-3.3.0rc2/src/diffpy.srfit.egg-info/requires.txt +6 -0
  72. diffpy_srfit-3.3.0rc2/tests/conftest.py +455 -0
  73. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/debug.py +0 -1
  74. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/run.py +0 -1
  75. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_builder.py +15 -16
  76. diffpy_srfit-3.3.0rc2/tests/test_characteristicfunctions.py +869 -0
  77. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_constraint.py +44 -7
  78. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_contribution.py +98 -47
  79. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_diffpyparset.py +8 -15
  80. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_equation.py +10 -12
  81. diffpy_srfit-3.3.0rc2/tests/test_fitrecipe.py +1233 -0
  82. diffpy_srfit-3.3.0rc2/tests/test_fitresults.py +277 -0
  83. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_literals.py +6 -8
  84. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_objcrystparset.py +11 -12
  85. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_parameter.py +100 -7
  86. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_parameterset.py +23 -2
  87. diffpy_srfit-3.3.0rc2/tests/test_pdf.py +517 -0
  88. diffpy_srfit-3.3.0rc2/tests/test_profile.py +383 -0
  89. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_profilegenerator.py +7 -6
  90. diffpy_srfit-3.3.0rc2/tests/test_profileparser.py +444 -0
  91. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_recipeorganizer.py +220 -97
  92. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_restraint.py +10 -11
  93. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_sas.py +5 -5
  94. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_sgconstraints.py +53 -15
  95. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_speed.py +83 -79
  96. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_visitors.py +9 -12
  97. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_weakrefcallable.py +4 -5
  98. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/ni-q27r100-neutron.gr +23 -47
  99. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/si-q27r60-xray.gr +18 -122
  100. diffpy_srfit-3.2.0rc1/requirements/conda.txt +0 -3
  101. diffpy_srfit-3.2.0rc1/requirements/pip.txt +0 -3
  102. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/__init__.py +0 -41
  103. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/equation/literals/abcs.py +0 -81
  104. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/fitrecipe.py +0 -900
  105. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/profileparser.py +0 -205
  106. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/recipeorganizer.py +0 -1164
  107. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/simplerecipe.py +0 -269
  108. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/pdf/characteristicfunctions.py +0 -473
  109. diffpy_srfit-3.2.0rc1/src/diffpy/srfit/pdf/pdfparser.py +0 -257
  110. diffpy_srfit-3.2.0rc1/src/diffpy.srfit.egg-info/requires.txt +0 -3
  111. diffpy_srfit-3.2.0rc1/tests/conftest.py +0 -144
  112. diffpy_srfit-3.2.0rc1/tests/test_characteristicfunctions.py +0 -192
  113. diffpy_srfit-3.2.0rc1/tests/test_fitrecipe.py +0 -288
  114. diffpy_srfit-3.2.0rc1/tests/test_fitresults.py +0 -93
  115. diffpy_srfit-3.2.0rc1/tests/test_pdf.py +0 -320
  116. diffpy_srfit-3.2.0rc1/tests/test_profile.py +0 -231
  117. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/LICENSE_DANSE.rst +0 -0
  118. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/requirements/build.txt +0 -0
  119. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/requirements/docs.txt +0 -0
  120. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/requirements/tests.txt +0 -0
  121. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/setup.cfg +0 -0
  122. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/__init__.py +0 -0
  123. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/literals/__init__.py +0 -0
  124. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/visitors/argfinder.py +0 -0
  125. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/equation/visitors/visitor.py +0 -0
  126. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/pdf/__init__.py +0 -0
  127. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/sas/__init__.py +0 -0
  128. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/structure/basestructureparset.py +0 -0
  129. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy/srfit/util/nameutils.py +0 -0
  130. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy.srfit.egg-info/dependency_links.txt +0 -0
  131. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/src/diffpy.srfit.egg-info/top_level.txt +0 -0
  132. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/__init__.py +0 -0
  133. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_tagmanager.py +0 -0
  134. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/test_version.py +0 -0
  135. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/LaMnO3.stru +0 -0
  136. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/ni.cif +0 -0
  137. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/results.res +0 -0
  138. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/sas_ascii_test_1.txt +0 -0
  139. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/sas_ellipsoid_testdata.txt +0 -0
  140. {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0rc2}/tests/testdata/testdata.txt +0 -0
@@ -1,7 +1,7 @@
1
1
  Authors
2
- =======
2
+ -------
3
3
 
4
- Christopher Farrow, Pavol Juhas, Simon J. L. Billinge, and members of the Billinge Group
4
+ Christopher Farrow, Pavol Juhas, Caden Myers, Simon J. L. Billinge, and members of the Billinge Group
5
5
 
6
6
  Contributors
7
7
  ------------
@@ -9,7 +9,7 @@ OPEN SOURCE LICENSE AGREEMENT
9
9
  - Copyright (c) 2008-2012, The Trustees of Columbia University in the City of New York
10
10
  - Copyright (c) 2014-2019, Brookhaven Science Associates, Brookhaven National Laboratory
11
11
  - Copyright (c) 2020-2025, The Trustees of Columbia University in the City of New York
12
-
12
+ - Copyright (c) 2026-present, The DiffPy Team.
13
13
 
14
14
  The "DiffPy-CMI" is distributed subject to the following license conditions:
15
15
 
@@ -11,4 +11,3 @@ global-exclude __pycache__ # Exclude Python cache directories.
11
11
  global-exclude .git* # Exclude git files and directories.
12
12
  global-exclude .idea # Exclude PyCharm project settings.
13
13
  exclude .codecov.yml
14
- exclude .coveragerc
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: diffpy.srfit
3
- Version: 3.2.0rc1
4
- Summary: Configurable code for solving atomic structures.
5
- Author-email: Simon Billinge <sb2896@columbia.edu>
6
- Maintainer-email: Simon Billinge <sb2896@columbia.edu>
3
+ Version: 3.3.0rc2
4
+ Summary: Generalized code base for modeling problems.
5
+ Author-email: Christopher Farrow <farrowch@gmail.com>, Pavol Juhas <pavol.juhas@gmail.com>, Caden Myers <cjm2304@columbia.edu>, "Simon J. L. Billinge" <sbillinge@ucsb.edu>
6
+ Maintainer-email: Caden Myers <cjm2304@columbia.edu>, "Simon J. L. Billinge" <sbillinge@ucsb.edu>
7
7
  Project-URL: Homepage, https://github.com/diffpy/diffpy.srfit/
8
8
  Project-URL: Issues, https://github.com/diffpy/diffpy.srfit/issues/
9
- Keywords: regression,modelling,fitting,diffraction,PDF
9
+ Keywords: regression,modeling,fitting,diffraction,PDF
10
10
  Classifier: Development Status :: 5 - Production/Stable
11
11
  Classifier: Environment :: Console
12
12
  Classifier: Intended Audience :: Developers
@@ -16,12 +16,12 @@ Classifier: Operating System :: MacOS :: MacOS X
16
16
  Classifier: Operating System :: Microsoft :: Windows
17
17
  Classifier: Operating System :: POSIX
18
18
  Classifier: Operating System :: Unix
19
- Classifier: Programming Language :: Python :: 3.11
20
19
  Classifier: Programming Language :: Python :: 3.12
21
20
  Classifier: Programming Language :: Python :: 3.13
21
+ Classifier: Programming Language :: Python :: 3.14
22
22
  Classifier: Topic :: Scientific/Engineering :: Physics
23
23
  Classifier: Topic :: Scientific/Engineering :: Chemistry
24
- Requires-Python: <3.14,>=3.11
24
+ Requires-Python: <3.15,>=3.12
25
25
  Description-Content-Type: text/x-rst
26
26
  License-File: LICENSE.rst
27
27
  License-File: LICENSE_DANSE.rst
@@ -29,6 +29,9 @@ License-File: AUTHORS.rst
29
29
  Requires-Dist: matplotlib
30
30
  Requires-Dist: numpy
31
31
  Requires-Dist: scipy
32
+ Requires-Dist: bg-mpl-stylesheets
33
+ Requires-Dist: diffpy.utils
34
+ Requires-Dist: diffpy.structure
32
35
  Dynamic: license-file
33
36
 
34
37
  |Icon| |title|_
@@ -58,6 +61,7 @@ Dynamic: license-file
58
61
  :target: https://anaconda.org/conda-forge/diffpy.srfit
59
62
 
60
63
  .. |PR| image:: https://img.shields.io/badge/PR-Welcome-29ab47ff
64
+ :target: https://github.com/diffpy/diffpy.srfit/pulls
61
65
 
62
66
  .. |PyPI| image:: https://img.shields.io/pypi/v/diffpy.srfit
63
67
  :target: https://pypi.org/project/diffpy.srfit/
@@ -71,7 +75,7 @@ Dynamic: license-file
71
75
  diffpy.srfit
72
76
  ============
73
77
 
74
- Configurable code for solving atomic structures.
78
+ Generalized code base for modeling problems.
75
79
 
76
80
  The diffpy.srfit package provides the framework for building a global optimizer
77
81
  on the fly from components such as function calculators (that calculate
@@ -95,6 +99,23 @@ obtain the total cost function. Additionally, diffpy.srfit is designed to be
95
99
  extensible, allowing the user to integrate external calculators to perform
96
100
  co-refinements with other techniques.
97
101
 
102
+
103
+ SrFit has tools for coherently combining known information about a
104
+ material to derive other properties, in particular material structure.
105
+ SrFit allows the customization and creation of structure
106
+ representations, profile calculators, constraints, restraints and file
107
+ input parsers. The customized pieces can be glued together within SrFit
108
+ to optimize a structure, or other physically relevant information from
109
+ one or more experimental profiles. Other known information about the
110
+ system of interest can be included with arbitrarily complex constraints
111
+ and restraints. In this way, the end user creates a customized fitting
112
+ application that suits the problem to the available information.
113
+
114
+ The subpackages herein define various pieces of the SrFit framework.
115
+ Developers are encouraged to work through the examples described in the
116
+ documentation to learn how to use and customize the various parts of
117
+ SrFit.
118
+
98
119
  For more information about the diffpy.srfit library, please consult our `online documentation <https://diffpy.github.io/diffpy.srfit>`_.
99
120
 
100
121
  Citation
@@ -127,10 +148,6 @@ The following creates and activates a new environment named ``diffpy.srfit_env``
127
148
  conda create -n diffpy.srfit_env diffpy.srfit
128
149
  conda activate diffpy.srfit_env
129
150
 
130
- To confirm that the installation was successful, type ::
131
-
132
- python -c "import diffpy.srfit; print(diffpy.srfit.__version__)"
133
-
134
151
  The output should print the latest version displayed on the badges above.
135
152
 
136
153
  This will install the minimal `diffpy.srfit` installation. It will often be used
@@ -169,6 +186,19 @@ and run the following ::
169
186
 
170
187
  pip install .
171
188
 
189
+ This package also provides command-line utilities. To check the software has been installed correctly, type ::
190
+
191
+ diffpy.srfit --version
192
+
193
+ You can also type the following command to verify the installation. ::
194
+
195
+ python -c "import diffpy.srfit; print(diffpy.srfit.__version__)"
196
+
197
+
198
+ To view the basic usage and available commands, type ::
199
+
200
+ diffpy.srfit -h
201
+
172
202
  Getting Started
173
203
  ---------------
174
204
 
@@ -200,12 +230,12 @@ trying to commit again.
200
230
 
201
231
  Improvements and fixes are always appreciated.
202
232
 
203
- Before contributing, please read our `Code of Conduct <https://github.com/diffpy/diffpy.srfit/blob/main/CODE_OF_CONDUCT.rst>`_.
233
+ Before contributing, please read our `Code of Conduct <https://github.com/diffpy/diffpy.srfit/blob/main/CODE-OF-CONDUCT.rst>`_.
204
234
 
205
235
  Contact
206
236
  -------
207
237
 
208
- For more information on diffpy.srfit please visit the project `web-page <https://diffpy.github.io/>`_ or email Simon Billinge at sb2896@columbia.edu.
238
+ For more information on diffpy.srfit please visit the project `web-page <https://diffpy.github.io/>`_ or email the maintainers ``Caden Myers(cjm2304@columbia.edu) and Simon J. L. Billinge(sbillinge@ucsb.edu)``.
209
239
 
210
240
  Acknowledgements
211
241
  ----------------
@@ -25,6 +25,7 @@
25
25
  :target: https://anaconda.org/conda-forge/diffpy.srfit
26
26
 
27
27
  .. |PR| image:: https://img.shields.io/badge/PR-Welcome-29ab47ff
28
+ :target: https://github.com/diffpy/diffpy.srfit/pulls
28
29
 
29
30
  .. |PyPI| image:: https://img.shields.io/pypi/v/diffpy.srfit
30
31
  :target: https://pypi.org/project/diffpy.srfit/
@@ -38,7 +39,7 @@
38
39
  diffpy.srfit
39
40
  ============
40
41
 
41
- Configurable code for solving atomic structures.
42
+ Generalized code base for modeling problems.
42
43
 
43
44
  The diffpy.srfit package provides the framework for building a global optimizer
44
45
  on the fly from components such as function calculators (that calculate
@@ -62,6 +63,23 @@ obtain the total cost function. Additionally, diffpy.srfit is designed to be
62
63
  extensible, allowing the user to integrate external calculators to perform
63
64
  co-refinements with other techniques.
64
65
 
66
+
67
+ SrFit has tools for coherently combining known information about a
68
+ material to derive other properties, in particular material structure.
69
+ SrFit allows the customization and creation of structure
70
+ representations, profile calculators, constraints, restraints and file
71
+ input parsers. The customized pieces can be glued together within SrFit
72
+ to optimize a structure, or other physically relevant information from
73
+ one or more experimental profiles. Other known information about the
74
+ system of interest can be included with arbitrarily complex constraints
75
+ and restraints. In this way, the end user creates a customized fitting
76
+ application that suits the problem to the available information.
77
+
78
+ The subpackages herein define various pieces of the SrFit framework.
79
+ Developers are encouraged to work through the examples described in the
80
+ documentation to learn how to use and customize the various parts of
81
+ SrFit.
82
+
65
83
  For more information about the diffpy.srfit library, please consult our `online documentation <https://diffpy.github.io/diffpy.srfit>`_.
66
84
 
67
85
  Citation
@@ -94,10 +112,6 @@ The following creates and activates a new environment named ``diffpy.srfit_env``
94
112
  conda create -n diffpy.srfit_env diffpy.srfit
95
113
  conda activate diffpy.srfit_env
96
114
 
97
- To confirm that the installation was successful, type ::
98
-
99
- python -c "import diffpy.srfit; print(diffpy.srfit.__version__)"
100
-
101
115
  The output should print the latest version displayed on the badges above.
102
116
 
103
117
  This will install the minimal `diffpy.srfit` installation. It will often be used
@@ -136,6 +150,19 @@ and run the following ::
136
150
 
137
151
  pip install .
138
152
 
153
+ This package also provides command-line utilities. To check the software has been installed correctly, type ::
154
+
155
+ diffpy.srfit --version
156
+
157
+ You can also type the following command to verify the installation. ::
158
+
159
+ python -c "import diffpy.srfit; print(diffpy.srfit.__version__)"
160
+
161
+
162
+ To view the basic usage and available commands, type ::
163
+
164
+ diffpy.srfit -h
165
+
139
166
  Getting Started
140
167
  ---------------
141
168
 
@@ -167,12 +194,12 @@ trying to commit again.
167
194
 
168
195
  Improvements and fixes are always appreciated.
169
196
 
170
- Before contributing, please read our `Code of Conduct <https://github.com/diffpy/diffpy.srfit/blob/main/CODE_OF_CONDUCT.rst>`_.
197
+ Before contributing, please read our `Code of Conduct <https://github.com/diffpy/diffpy.srfit/blob/main/CODE-OF-CONDUCT.rst>`_.
171
198
 
172
199
  Contact
173
200
  -------
174
201
 
175
- For more information on diffpy.srfit please visit the project `web-page <https://diffpy.github.io/>`_ or email Simon Billinge at sb2896@columbia.edu.
202
+ For more information on diffpy.srfit please visit the project `web-page <https://diffpy.github.io/>`_ or email the maintainers ``Caden Myers(cjm2304@columbia.edu) and Simon J. L. Billinge(sbillinge@ucsb.edu)``.
176
203
 
177
204
  Acknowledgements
178
205
  ----------------
@@ -6,15 +6,19 @@ build-backend = "setuptools.build_meta"
6
6
  name = "diffpy.srfit"
7
7
  dynamic=['version', 'dependencies']
8
8
  authors = [
9
- { name="Simon Billinge", email="sb2896@columbia.edu" },
9
+ {name='Christopher Farrow', email='farrowch@gmail.com'},
10
+ {name='Pavol Juhas', email='pavol.juhas@gmail.com'},
11
+ {name='Caden Myers', email='cjm2304@columbia.edu'},
12
+ {name='Simon J. L. Billinge', email='sbillinge@ucsb.edu'},
10
13
  ]
11
14
  maintainers = [
12
- { name="Simon Billinge", email="sb2896@columbia.edu" },
15
+ {name='Caden Myers', email='cjm2304@columbia.edu'},
16
+ {name='Simon J. L. Billinge', email='sbillinge@ucsb.edu'},
13
17
  ]
14
- description = "Configurable code for solving atomic structures."
15
- keywords = ['regression', 'modelling', 'fitting', 'diffraction', 'PDF']
18
+ description = "Generalized code base for modeling problems."
19
+ keywords = ['regression', 'modeling', 'fitting', 'diffraction', 'PDF']
16
20
  readme = "README.rst"
17
- requires-python = ">=3.11, <3.14"
21
+ requires-python = ">=3.12, <3.15"
18
22
  classifiers = [
19
23
  'Development Status :: 5 - Production/Stable',
20
24
  'Environment :: Console',
@@ -25,9 +29,9 @@ classifiers = [
25
29
  'Operating System :: Microsoft :: Windows',
26
30
  'Operating System :: POSIX',
27
31
  'Operating System :: Unix',
28
- 'Programming Language :: Python :: 3.11',
29
32
  'Programming Language :: Python :: 3.12',
30
33
  'Programming Language :: Python :: 3.13',
34
+ 'Programming Language :: Python :: 3.14',
31
35
  'Topic :: Scientific/Engineering :: Physics',
32
36
  'Topic :: Scientific/Engineering :: Chemistry',
33
37
  ]
@@ -48,6 +52,9 @@ include = ["*"] # package names should match these glob patterns (["*"] by defa
48
52
  exclude = [] # exclude packages matching these glob patterns (empty by default)
49
53
  namespaces = false # to disable scanning PEP 420 namespaces (true by default)
50
54
 
55
+ [project.scripts]
56
+ diffpy-srfit = "diffpy.srfit.app:main"
57
+
51
58
  [tool.setuptools.dynamic]
52
59
  dependencies = {file = ["requirements/pip.txt"]}
53
60
 
@@ -56,6 +63,11 @@ exclude-file = ".codespell/ignore_lines.txt"
56
63
  ignore-words = ".codespell/ignore_words.txt"
57
64
  skip = "*.cif,*.dat"
58
65
 
66
+ [tool.docformatter]
67
+ recursive = true
68
+ wrap-summaries = 72
69
+ wrap-descriptions = 72
70
+
59
71
  [tool.black]
60
72
  line-length = 79
61
73
  include = '\.pyi?$'
@@ -0,0 +1,6 @@
1
+ matplotlib-base
2
+ numpy
3
+ scipy
4
+ bg-mpl-stylesheets
5
+ diffpy.utils
6
+ diffpy.structure
@@ -0,0 +1,6 @@
1
+ matplotlib
2
+ numpy
3
+ scipy
4
+ bg-mpl-stylesheets
5
+ diffpy.utils
6
+ diffpy.structure
@@ -4,8 +4,10 @@
4
4
  # (c) 2008-2025 The Trustees of Columbia University in the City of New York.
5
5
  # All rights reserved.
6
6
  #
7
- # File coded by: Chris Farrow and Billinge Group members and community
8
- # contributors.
7
+ # (c) 2025-present The DiffPy Team.
8
+ #
9
+ # File coded by: Christopher Farrow, Pavol Juhas, Caden Myers,
10
+ # Simon J. L. Billinge, Billinge Group members and community contributors.
9
11
  #
10
12
  # See GitHub contributions for a more detailed list of contributors.
11
13
  # https://github.com/diffpy/diffpy.srfit/graphs/contributors
@@ -13,3 +15,6 @@
13
15
  # See LICENSE.rst for license information.
14
16
  #
15
17
  ##############################################################################
18
+ from pkgutil import extend_path
19
+
20
+ __path__ = extend_path(__path__, __name__)
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env python
2
+ ##############################################################################
3
+ #
4
+ # (c) 2008-2025 The Trustees of Columbia University in the City of New York.
5
+ # All rights reserved.
6
+ # (c) 2026-present The DiffPy Team. All rights reserved.
7
+ #
8
+ # File coded by: Christopher Farrow, Pavol Juhas, Caden Myers,
9
+ # Simon J. L. Billinge, Billinge Group members and community contributors.
10
+ #
11
+ # See GitHub contributions for a more detailed list of contributors.
12
+ # https://github.com/diffpy/diffpy.srfit/graphs/contributors
13
+ #
14
+ # See LICENSE.rst for license information.
15
+ #
16
+ ##############################################################################
17
+ """Generalized code base for modeling problems."""
18
+
19
+ # package version
20
+ from diffpy.srfit.version import __version__ # noqa
21
+
22
+ # silence the pyflakes syntax checker
23
+ assert __version__ or True
24
+
25
+ # End of file