mirror of
https://github.com/fjosw/pyerrors.git
synced 2025-05-14 19:43:41 +02:00
refactor: isinstance comparisons in correlators module simplified
This commit is contained in:
parent
31a98f81c4
commit
3523bfa568
1 changed files with 8 additions and 8 deletions
|
@ -69,10 +69,10 @@ class Corr:
|
||||||
|
|
||||||
if isinstance(data_input, list):
|
if isinstance(data_input, list):
|
||||||
|
|
||||||
if all([(isinstance(item, Obs) or isinstance(item, CObs)) for item in data_input]):
|
if all([isinstance(item, (Obs, CObs)) for item in data_input]):
|
||||||
_assert_equal_properties(data_input)
|
_assert_equal_properties(data_input)
|
||||||
self.content = [np.asarray([item]) for item in data_input]
|
self.content = [np.asarray([item]) for item in data_input]
|
||||||
if all([(isinstance(item, Obs) or isinstance(item, CObs)) or item is None for item in data_input]):
|
if all([isinstance(item, (Obs, CObs)) or item is None for item in data_input]):
|
||||||
_assert_equal_properties([o for o in data_input if o is not None])
|
_assert_equal_properties([o for o in data_input if o is not None])
|
||||||
self.content = [np.asarray([item]) if item is not None else None for item in data_input]
|
self.content = [np.asarray([item]) if item is not None else None for item in data_input]
|
||||||
self.N = 1
|
self.N = 1
|
||||||
|
@ -735,7 +735,7 @@ class Corr:
|
||||||
else:
|
else:
|
||||||
ax1.set_ylim(y_range)
|
ax1.set_ylim(y_range)
|
||||||
if comp:
|
if comp:
|
||||||
if isinstance(comp, Corr) or isinstance(comp, list):
|
if isinstance(comp, (Corr, list)):
|
||||||
for corr in comp if isinstance(comp, list) else [comp]:
|
for corr in comp if isinstance(comp, list) else [comp]:
|
||||||
x, y, y_err = corr.plottable()
|
x, y, y_err = corr.plottable()
|
||||||
plt.errorbar(x, y, y_err, label=corr.tag, mfc=plt.rcParams['axes.facecolor'])
|
plt.errorbar(x, y, y_err, label=corr.tag, mfc=plt.rcParams['axes.facecolor'])
|
||||||
|
@ -846,7 +846,7 @@ class Corr:
|
||||||
newcontent.append(self.content[t] + y.content[t])
|
newcontent.append(self.content[t] + y.content[t])
|
||||||
return Corr(newcontent)
|
return Corr(newcontent)
|
||||||
|
|
||||||
elif isinstance(y, Obs) or isinstance(y, int) or isinstance(y, float) or isinstance(y, CObs):
|
elif isinstance(y, (Obs, int, float, CObs)):
|
||||||
newcontent = []
|
newcontent = []
|
||||||
for t in range(self.T):
|
for t in range(self.T):
|
||||||
if (self.content[t] is None):
|
if (self.content[t] is None):
|
||||||
|
@ -869,7 +869,7 @@ class Corr:
|
||||||
newcontent.append(self.content[t] * y.content[t])
|
newcontent.append(self.content[t] * y.content[t])
|
||||||
return Corr(newcontent)
|
return Corr(newcontent)
|
||||||
|
|
||||||
elif isinstance(y, Obs) or isinstance(y, int) or isinstance(y, float) or isinstance(y, CObs):
|
elif isinstance(y, (Obs, int, float, CObs)):
|
||||||
newcontent = []
|
newcontent = []
|
||||||
for t in range(self.T):
|
for t in range(self.T):
|
||||||
if (self.content[t] is None):
|
if (self.content[t] is None):
|
||||||
|
@ -900,7 +900,7 @@ class Corr:
|
||||||
raise Exception("Division returns completely undefined correlator")
|
raise Exception("Division returns completely undefined correlator")
|
||||||
return Corr(newcontent)
|
return Corr(newcontent)
|
||||||
|
|
||||||
elif isinstance(y, Obs) or isinstance(y, CObs):
|
elif isinstance(y, (Obs, CObs)):
|
||||||
if isinstance(y, Obs):
|
if isinstance(y, Obs):
|
||||||
if y.value == 0:
|
if y.value == 0:
|
||||||
raise Exception('Division by zero will return undefined correlator')
|
raise Exception('Division by zero will return undefined correlator')
|
||||||
|
@ -916,7 +916,7 @@ class Corr:
|
||||||
newcontent.append(self.content[t] / y)
|
newcontent.append(self.content[t] / y)
|
||||||
return Corr(newcontent, prange=self.prange)
|
return Corr(newcontent, prange=self.prange)
|
||||||
|
|
||||||
elif isinstance(y, int) or isinstance(y, float):
|
elif isinstance(y, (int, float)):
|
||||||
if y == 0:
|
if y == 0:
|
||||||
raise Exception('Division by zero will return undefined correlator')
|
raise Exception('Division by zero will return undefined correlator')
|
||||||
newcontent = []
|
newcontent = []
|
||||||
|
@ -937,7 +937,7 @@ class Corr:
|
||||||
return self + (-y)
|
return self + (-y)
|
||||||
|
|
||||||
def __pow__(self, y):
|
def __pow__(self, y):
|
||||||
if isinstance(y, Obs) or isinstance(y, int) or isinstance(y, float) or isinstance(y, CObs):
|
if isinstance(y, (Obs, int, float, CObs)):
|
||||||
newcontent = [None if (item is None) else item**y for item in self.content]
|
newcontent = [None if (item is None) else item**y for item in self.content]
|
||||||
return Corr(newcontent, prange=self.prange)
|
return Corr(newcontent, prange=self.prange)
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue