diffpy.srfit 3.2.0rc1__tar.gz → 3.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/AUTHORS.rst +2 -2
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/LICENSE.rst +1 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/MANIFEST.in +0 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/PKG-INFO +44 -14
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/README.rst +34 -7
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/pyproject.toml +18 -6
- diffpy_srfit-3.3.0/requirements/conda.txt +6 -0
- diffpy_srfit-3.3.0/requirements/pip.txt +6 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/__init__.py +7 -2
- diffpy_srfit-3.3.0/src/diffpy/srfit/__init__.py +25 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/builder.py +96 -44
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/equationmod.py +7 -8
- diffpy_srfit-3.3.0/src/diffpy/srfit/equation/literals/abcs.py +123 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/literals/argument.py +5 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/literals/literal.py +2 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/literals/operators.py +16 -13
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/visitors/__init__.py +2 -2
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/visitors/printer.py +4 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/visitors/swapper.py +8 -9
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/visitors/validator.py +0 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/exceptions.py +3 -3
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/__init__.py +2 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/calculator.py +30 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/configurable.py +8 -10
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/constraint.py +67 -13
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/fitcontribution.py +228 -75
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/fithook.py +51 -46
- diffpy_srfit-3.3.0/src/diffpy/srfit/fitbase/fitrecipe.py +1858 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/fitresults.py +312 -150
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/parameter.py +194 -98
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/parameterset.py +87 -26
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/profile.py +192 -74
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/profilegenerator.py +52 -26
- diffpy_srfit-3.3.0/src/diffpy/srfit/fitbase/profileparser.py +480 -0
- diffpy_srfit-3.3.0/src/diffpy/srfit/fitbase/recipeorganizer.py +1828 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/restraint.py +46 -38
- diffpy_srfit-3.3.0/src/diffpy/srfit/fitbase/simplerecipe.py +426 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/fitbase/validatable.py +13 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/interface/__init__.py +0 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/interface/interface.py +85 -36
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/pdf/basepdfgenerator.py +88 -40
- diffpy_srfit-3.3.0/src/diffpy/srfit/pdf/characteristicfunctions.py +752 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/pdf/debyepdfgenerator.py +20 -14
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/pdf/pdfcontribution.py +98 -64
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/pdf/pdfgenerator.py +11 -6
- diffpy_srfit-3.3.0/src/diffpy/srfit/pdf/pdfparser.py +96 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/prcalculator.py +7 -6
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/sasgenerator.py +7 -7
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/sasimport.py +3 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/sasparameter.py +4 -4
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/sasparser.py +43 -60
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/sasprofile.py +13 -10
- diffpy_srfit-3.3.0/src/diffpy/srfit/srfit_app.py +33 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/__init__.py +9 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/bvsrestraint.py +3 -3
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/cctbxparset.py +13 -13
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/diffpyparset.py +15 -13
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/objcrystparset.py +227 -113
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/sgconstraints.py +171 -131
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/srrealparset.py +3 -4
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/__init__.py +2 -2
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/argbinders.py +4 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/inpututils.py +43 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/observable.py +2 -2
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/tagmanager.py +9 -7
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/weakrefcallable.py +5 -4
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/version.py +9 -8
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy.srfit.egg-info/PKG-INFO +44 -14
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy.srfit.egg-info/SOURCES.txt +3 -0
- diffpy_srfit-3.3.0/src/diffpy.srfit.egg-info/entry_points.txt +2 -0
- diffpy_srfit-3.3.0/src/diffpy.srfit.egg-info/requires.txt +6 -0
- diffpy_srfit-3.3.0/tests/conftest.py +455 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/debug.py +0 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/run.py +0 -1
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_builder.py +15 -16
- diffpy_srfit-3.3.0/tests/test_characteristicfunctions.py +869 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_constraint.py +44 -7
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_contribution.py +98 -47
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_diffpyparset.py +8 -15
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_equation.py +10 -12
- diffpy_srfit-3.3.0/tests/test_fitrecipe.py +1233 -0
- diffpy_srfit-3.3.0/tests/test_fitresults.py +277 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_literals.py +6 -8
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_objcrystparset.py +11 -12
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_parameter.py +100 -7
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_parameterset.py +23 -2
- diffpy_srfit-3.3.0/tests/test_pdf.py +517 -0
- diffpy_srfit-3.3.0/tests/test_profile.py +383 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_profilegenerator.py +7 -6
- diffpy_srfit-3.3.0/tests/test_profileparser.py +444 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_recipeorganizer.py +220 -97
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_restraint.py +10 -11
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_sas.py +5 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_sgconstraints.py +53 -15
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_speed.py +83 -79
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_visitors.py +9 -12
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_weakrefcallable.py +4 -5
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/ni-q27r100-neutron.gr +23 -47
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/si-q27r60-xray.gr +18 -122
- diffpy_srfit-3.2.0rc1/requirements/conda.txt +0 -3
- diffpy_srfit-3.2.0rc1/requirements/pip.txt +0 -3
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/__init__.py +0 -41
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/equation/literals/abcs.py +0 -81
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/fitrecipe.py +0 -900
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/profileparser.py +0 -205
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/recipeorganizer.py +0 -1164
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/fitbase/simplerecipe.py +0 -269
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/pdf/characteristicfunctions.py +0 -473
- diffpy_srfit-3.2.0rc1/src/diffpy/srfit/pdf/pdfparser.py +0 -257
- diffpy_srfit-3.2.0rc1/src/diffpy.srfit.egg-info/requires.txt +0 -3
- diffpy_srfit-3.2.0rc1/tests/conftest.py +0 -144
- diffpy_srfit-3.2.0rc1/tests/test_characteristicfunctions.py +0 -192
- diffpy_srfit-3.2.0rc1/tests/test_fitrecipe.py +0 -288
- diffpy_srfit-3.2.0rc1/tests/test_fitresults.py +0 -93
- diffpy_srfit-3.2.0rc1/tests/test_pdf.py +0 -320
- diffpy_srfit-3.2.0rc1/tests/test_profile.py +0 -231
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/LICENSE_DANSE.rst +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/requirements/build.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/requirements/docs.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/requirements/tests.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/setup.cfg +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/__init__.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/literals/__init__.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/visitors/argfinder.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/equation/visitors/visitor.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/pdf/__init__.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/sas/__init__.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/structure/basestructureparset.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy/srfit/util/nameutils.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy.srfit.egg-info/dependency_links.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/src/diffpy.srfit.egg-info/top_level.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/__init__.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_tagmanager.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/test_version.py +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/LaMnO3.stru +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/ni.cif +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/results.res +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/sas_ascii_test_1.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/sas_ellipsoid_testdata.txt +0 -0
- {diffpy_srfit-3.2.0rc1 → diffpy_srfit-3.3.0}/tests/testdata/testdata.txt +0 -0
|
@@ -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
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: diffpy.srfit
|
|
3
|
-
Version: 3.
|
|
4
|
-
Summary:
|
|
5
|
-
Author-email: Simon Billinge <
|
|
6
|
-
Maintainer-email: Simon Billinge <
|
|
3
|
+
Version: 3.3.0
|
|
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,
|
|
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.
|
|
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
|
-
|
|
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/
|
|
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
|
|
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
|
-
|
|
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/
|
|
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
|
|
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
|
-
{
|
|
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
|
-
{
|
|
15
|
+
{name='Caden Myers', email='cjm2304@columbia.edu'},
|
|
16
|
+
{name='Simon J. L. Billinge', email='sbillinge@ucsb.edu'},
|
|
13
17
|
]
|
|
14
|
-
description = "
|
|
15
|
-
keywords = ['regression', '
|
|
18
|
+
description = "Generalized code base for modeling problems."
|
|
19
|
+
keywords = ['regression', 'modeling', 'fitting', 'diffraction', 'PDF']
|
|
16
20
|
readme = "README.rst"
|
|
17
|
-
requires-python = ">=3.
|
|
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.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?$'
|
|
@@ -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
|
-
#
|
|
8
|
-
#
|
|
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
|