Skip to content

Commit 7dd69bc

Browse files
lint check, fix break import modules, remove unused import modules, remove some # (#33)
1 parent 30d0909 commit 7dd69bc

File tree

8 files changed

+50
-62
lines changed

8 files changed

+50
-62
lines changed

Diff for: diffpy/srmise/applications/extract.py

+13-21
Original file line numberDiff line numberDiff line change
@@ -419,25 +419,19 @@ def main():
419419
from diffpy.srmise.pdfpeakextraction import PDFPeakExtraction
420420
from diffpy.srmise.srmiseerrors import SrMiseDataFormatError, SrMiseFileError
421421

422-
if options.peakfunction is not None:
423-
from diffpy.srmise import peaks
424-
425-
try:
426-
options.peakfunction = eval("peaks." + options.peakfunction)
427-
except Exception as err:
428-
print(err)
429-
print("Could not create peak function '%s'. Exiting." % options.peakfunction)
430-
return
431-
432-
if options.modelevaluator is not None:
433-
from diffpy.srmise import modelevaluators
434-
435-
try:
436-
options.modelevaluator = eval("modelevaluators." + options.modelevaluator)
437-
except Exception as err:
438-
print(err)
439-
print("Could not find ModelEvaluator '%s'. Exiting." % options.modelevaluator)
440-
return
422+
try:
423+
options.peakfunction = eval("peaks." + options.peakfunction)
424+
except Exception as err:
425+
print(err)
426+
print("Could not create peak function '%s'. Exiting." % options.peakfunction)
427+
return
428+
429+
try:
430+
options.modelevaluator = eval("modelevaluators." + options.modelevaluator)
431+
except Exception as err:
432+
print(err)
433+
print("Could not find ModelEvaluator '%s'. Exiting." % options.modelevaluator)
434+
return
441435

442436
if options.bcrystal is not None:
443437
from diffpy.srmise.baselines import Polynomial
@@ -475,8 +469,6 @@ def main():
475469

476470
bl = NanoSpherical()
477471
options.baseline = parsepars(bl, options.bspherical)
478-
elif options.baseline is not None:
479-
from diffpy.srmise import baselines
480472

481473
try:
482474
options.baseline = eval("baselines." + options.baseline)

Diff for: diffpy/srmise/modelevaluators/aic.py

+7-6
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616

1717
import numpy as np
1818

19-
import diffpy.srmise.srmiselog
2019
from diffpy.srmise.modelevaluators.base import ModelEvaluator
2120
from diffpy.srmise.srmiseerrors import SrMiseModelEvaluatorError
2221

@@ -72,7 +71,7 @@ def evaluate(self, fit, count_fixed=False, kshift=0):
7271
logger.warn("AIC.evaluate(): too few data to evaluate quality reliably.")
7372
n = self.minpoints(k)
7473

75-
if self.chisq == None:
74+
if self.chisq is None:
7675
self.chisq = self.chi_squared(fit.value(), fit.y_cluster, fit.error_cluster)
7776

7877
self.stat = self.chisq + self.parpenalty(k, n)
@@ -94,10 +93,12 @@ def parpenalty(self, k, n):
9493
return (2 * k) * fudgefactor
9594

9695
def growth_justified(self, fit, k_prime):
97-
"""Returns whether adding k_prime parameters to the given model (ModelCluster) is justified given the current quality of the fit.
98-
The assumption is that adding k_prime parameters will result in "effectively 0" chiSquared cost, and so adding it is justified
99-
if the cost of adding these parameters is less than the current chiSquared cost. The validity of this assumption (which
100-
depends on an unknown chiSquared value) and the impact of the errors used should be examined more thoroughly in the future.
96+
"""Returns whether adding k_prime parameters to the given model (ModelCluster) is justified
97+
given the current quality of the fit. The assumption is that adding k_prime parameters will
98+
result in "effectively 0" chiSquared cost, and so adding it is justified if the cost of adding
99+
these parameters is less than the current chiSquared cost.
100+
The validity of this assumption (which depends on an unknown chiSquared value)
101+
and the impact of the errors used should be examined more thoroughly in the future.
101102
"""
102103

103104
if self.chisq is None:

Diff for: diffpy/srmise/pdfpeakextraction.py

+10-6
Original file line numberDiff line numberDiff line change
@@ -16,20 +16,24 @@
1616
import os.path
1717
import re
1818

19-
import matplotlib.pyplot as plt
2019
import numpy as np
2120

21+
from diffpy.srmise import srmiselog
2222
from diffpy.srmise.modelcluster import ModelCluster, ModelCovariance
2323

2424
# from diffpy.pdfgui.control.pdfdataset import PDFDataSet
2525
from diffpy.srmise.pdfdataset import PDFDataSet
2626
from diffpy.srmise.peakextraction import PeakExtraction
27-
from diffpy.srmise.srmiseerrors import *
27+
from diffpy.srmise.srmiseerrors import (
28+
SrMiseDataFormatError,
29+
SrMiseError,
30+
SrMiseQmaxError,
31+
SrMiseStaticOwnerError,
32+
SrMiseUndefinedCovarianceError,
33+
)
2834

2935
logger = logging.getLogger("diffpy.srmise")
3036

31-
from diffpy.srmise import srmiselog
32-
3337

3438
class PDFPeakExtraction(PeakExtraction):
3539
"""Class for peak extraction of peaks from the PDF.
@@ -454,7 +458,7 @@ def extract(self, **kwds):
454458
try:
455459
logger.info(str(cov))
456460
# logger.info("Correlations > .8:\n%s", "\n".join(str(c) for c in cov.correlationwarning(.8)))
457-
except SrMiseUndefinedCovarianceError as e:
461+
except SrMiseUndefinedCovarianceError:
458462
logger.warn("Covariance not defined for final model. Fit may not have converged.")
459463
logger.info(str(ext))
460464

@@ -527,7 +531,7 @@ def fit(self, **kwds):
527531
logger.info(str(ext))
528532
try:
529533
logger.info(str(cov))
530-
except SrMiseUndefinedCovarianceError as e:
534+
except SrMiseUndefinedCovarianceError:
531535
logger.warn("Covariance not defined for final model. Fit may not have converged.")
532536

533537
# Update calculated instance variables

Diff for: diffpy/srmise/peaks/__init__.py

-5
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,3 @@
1313
##############################################################################
1414

1515
__all__ = ["base", "gaussian", "gaussianoverr", "terminationripples"]
16-
17-
from base import Peak, Peaks
18-
from gaussian import Gaussian
19-
from gaussianoverr import GaussianOverR
20-
from terminationripples import TerminationRipples

Diff for: diffpy/srmise/peaks/base.py

+4-6
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,9 @@
1616

1717
import numpy as np
1818

19-
import diffpy.srmise.srmiselog
2019
from diffpy.srmise.basefunction import BaseFunction
2120
from diffpy.srmise.modelparts import ModelPart, ModelParts
22-
from diffpy.srmise.srmiseerrors import *
21+
from diffpy.srmise.srmiseerrors import SrMiseDataFormatError, SrMiseScalingError
2322

2423
logger = logging.getLogger("diffpy.srmise")
2524

@@ -263,17 +262,16 @@ def factory(peakstr, ownerlist):
263262
peakstr: string representing peak
264263
ownerlist: List of BaseFunctions that owner is in
265264
"""
266-
from numpy import array
267265

268266
data = peakstr.strip().splitlines()
269267

270268
# dictionary of parameters
271269
pdict = {}
272270
for d in data:
273-
l = d.split("=", 1)
274-
if len(l) == 2:
271+
parse_value = d.split("=", 1)
272+
if len(parse_value) == 2:
275273
try:
276-
pdict[l[0]] = eval(l[1])
274+
pdict[parse_value[0]] = eval(parse_value[1])
277275
except Exception:
278276
emsg = "Invalid parameter: %s" % d
279277
raise SrMiseDataFormatError(emsg)

Diff for: diffpy/srmise/peaks/terminationripples.py

-1
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,6 @@ def extend_grid(self, r, dr):
281281
from diffpy.srmise.modelevaluators import AICc
282282
from diffpy.srmise.peaks import Peaks
283283
from diffpy.srmise.peaks.gaussianoverr import GaussianOverR
284-
from diffpy.srmise.peaks.terminationripples import TerminationRipples
285284

286285
res = 0.01
287286
r = np.arange(2, 4, res)

Diff for: diffpy/srmise/srmiselog.py

+6-7
Original file line numberDiff line numberDiff line change
@@ -41,11 +41,10 @@
4141
import logging
4242
import os.path
4343
import re
44-
import sys
4544

4645
from diffpy.srmise.srmiseerrors import SrMiseDataFormatError, SrMiseFileError, SrMiseLogError
4746

48-
### Default settings ###
47+
# Default settings ###
4948
defaultformat = "%(message)s"
5049
defaultlevel = logging.INFO
5150

@@ -57,7 +56,7 @@
5756
"critical": logging.CRITICAL,
5857
}
5958

60-
### Set up logging to stdout ###
59+
# Set up logging to stdout ###
6160
logger = logging.getLogger("diffpy.srmise")
6261
logger.setLevel(defaultlevel)
6362
ch = logging.StreamHandler()
@@ -68,10 +67,10 @@
6867

6968
logger.addHandler(ch)
7069

71-
### Optional file logger ###
70+
# Optional file logger ###
7271
fh = None
7372

74-
### Make updated plots as fitting progresses. ###
73+
# Make updated plots as fitting progresses. ###
7574
liveplots = False
7675
wait = False
7776

@@ -144,7 +143,7 @@ def liveplotting(lp, w=False):
144143
raise ValueError(emsg)
145144

146145

147-
### TracePeaks. Primary purpose is to enable creating movies. ###
146+
# TracePeaks. Primary purpose is to enable creating movies. ###
148147

149148

150149
class TracePeaks(object):
@@ -345,7 +344,7 @@ def getfilter(self):
345344
filter = property(getfilter, setfilter)
346345

347346

348-
### End of class TracePeaks
347+
# End of class TracePeaks
349348

350349

351350
def settracer(**kwds):

Diff for: doc/examples/extract_single_peak.py

+10-10
Original file line numberDiff line numberDiff line change
@@ -27,26 +27,26 @@
2727

2828
import matplotlib.pyplot as plt
2929

30-
from diffpy.srmise import PDFPeakExtraction
3130
from diffpy.srmise.applications.plot import makeplot
3231
from diffpy.srmise.baselines import Polynomial
32+
from diffpy.srmise.pdfpeakextraction import PDFPeakExtraction
3333

3434

3535
def run(plot=True):
3636

37-
## Initialize peak extraction
37+
# Initialize peak extraction
3838
# Create peak extraction object
3939
ppe = PDFPeakExtraction()
4040

4141
# Load the PDF from a file
4242
ppe.loadpdf("data/Ag_nyquist_qmax30.gr")
4343

44-
## Set up extraction parameters.
45-
# For convenience we add all parameters to a dictionary before passing them
44+
# Set up extraction parameters.
45+
# For convenience, we add all parameters to a dictionary before passing them
4646
# to the extraction object.
4747
#
4848
# The "rng" (range) parameter defines the region over which peaks will be
49-
# extracted and fit. For the well isolated nearest-neighbor silver peak,
49+
# extracted and fit. For the well isolated nearest-neighbor silver peak,
5050
# which occurs near 2.9 angstroms, it is sufficient to perform extraction
5151
# between 2 and 3.5 angstroms.
5252
#
@@ -61,24 +61,24 @@ def run(plot=True):
6161
# Apply peak extraction parameters.
6262
ppe.setvars(**kwds)
6363

64-
## Perform peak extraction
64+
# Perform peak extraction
6565
ppe.extract()
6666

67-
## Save output
67+
# Save output
6868
# The write() method saves a file which preserves all aspects of peak
6969
# extraction and its results, by convention using the .srmise extension,
7070
# and which can later be read by diffpy.srmise.
7171
#
7272
# The writepwa() method saves a file intended as a human-readable summary.
7373
# In particular, it reports the position, width (as full-width at
74-
# half-maximum), and area of of extracted peaks. The reported values
74+
# half-maximum), and area of extracted peaks. The reported values
7575
# are for Gaussians in the radial distribution function (RDF) corresponding
7676
# to this PDF.
7777
ppe.write("output/extract_single_peak.srmise")
7878
ppe.writepwa("output/extract_single_peak.pwa")
7979

80-
## Plot results.
81-
# Display plot of extracted peak. It is also possible to plot an existing
80+
# Plot results.
81+
# Display plot of extracted peak. It is also possible to plot an existing
8282
# .srmise file from the command line using
8383
# srmise output/Ag_singlepeak.srmise --no-extract --plot
8484
# For additional plotting options, run "srmiseplot --help".

0 commit comments

Comments
 (0)