Skip to content

Commit bb878b0

Browse files
authored
Merge branch 'master' into python_versions_test
2 parents c5b0777 + 2730bb5 commit bb878b0

File tree

4 files changed

+158
-159
lines changed

4 files changed

+158
-159
lines changed

ctaplot/ana/ana.py

Lines changed: 24 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -222,19 +222,18 @@ def get_effective_area(self, observation_time=50 * u.h):
222222
-------
223223
`numpy.ndarray`, `numpy.ndarray`
224224
"""
225-
if observation_time == 50 * u.h:
226-
if self.site in _south_site_names:
227-
energy, effective_area = np.loadtxt(ds.get('cta_requirements_South-30m-EffectiveArea.dat'),
228-
unpack=True)
229-
elif self.site in _north_site_names:
230-
energy, effective_area = np.loadtxt(ds.get('cta_requirements_North-30m-EffectiveArea.dat'),
231-
unpack=True)
232-
else:
233-
raise ValueError(
234-
f'incorrect site specified, accepted values are {_north_site_names} or {_south_site_names}')
235-
else:
225+
if observation_time != 50 * u.h:
236226
raise ValueError(f"no effective area for an observation time of {observation_time}")
237227

228+
if self.site in _south_site_names:
229+
energy, effective_area = np.loadtxt(ds.get('cta_requirements_South-30m-EffectiveArea.dat'),
230+
unpack=True)
231+
elif self.site in _north_site_names:
232+
energy, effective_area = np.loadtxt(ds.get('cta_requirements_North-30m-EffectiveArea.dat'),
233+
unpack=True)
234+
else:
235+
raise ValueError(
236+
f'incorrect site specified, accepted values are {_north_site_names} or {_south_site_names}')
238237
self.energy = energy * u.TeV
239238
self.effective_area = effective_area * u.m
240239
return self.energy, self.effective_area
@@ -264,16 +263,15 @@ def get_energy_resolution(self):
264263

265264
@u.quantity_input(observation_time=u.h)
266265
def get_sensitivity(self, observation_time=50 * u.h):
267-
if observation_time == 50 * u.h:
268-
if self.site in _south_site_names:
269-
energy, sensitivity = np.loadtxt(ds.get('cta_requirements_South-50h.dat'), unpack=True)
270-
elif self.site in _north_site_names:
271-
energy, sensitivity = np.loadtxt(ds.get('cta_requirements_North-50h.dat'), unpack=True)
272-
else:
273-
raise ValueError(
274-
f'incorrect site specified, accepted values are {_north_site_names} or {_south_site_names}')
275-
else:
266+
if observation_time != 50 * u.h:
276267
raise ValueError(f"no sensitivity for an observation time of {observation_time}")
268+
if self.site in _south_site_names:
269+
energy, sensitivity = np.loadtxt(ds.get('cta_requirements_South-50h.dat'), unpack=True)
270+
elif self.site in _north_site_names:
271+
energy, sensitivity = np.loadtxt(ds.get('cta_requirements_North-50h.dat'), unpack=True)
272+
else:
273+
raise ValueError(
274+
f'incorrect site specified, accepted values are {_north_site_names} or {_south_site_names}')
277275
self.energy = energy * u.TeV
278276
self.sensitivity = sensitivity * u.erg / (u.cm ** 2 * u.s)
279277
return self.energy, self.sensitivity
@@ -933,13 +931,12 @@ def _percentile(x, percentile=68.27):
933931
-------
934932
float
935933
"""
936-
if len(x) == 0:
937-
if isinstance(x, u.Quantity):
938-
return 0 * x.unit
939-
else:
940-
return 0
941-
else:
934+
if len(x) != 0:
942935
return np.percentile(x, percentile)
936+
if isinstance(x, u.Quantity):
937+
return 0 * x.unit
938+
else:
939+
return 0
943940

944941

945942
@u.quantity_input(alt1=u.rad, az1=u.rad, alt2=u.rad, az2=u.rad)
@@ -966,9 +963,7 @@ def angular_separation_altaz(alt1, az1, alt2, az2):
966963
cosdelta[cosdelta > 1] = 1.
967964
cosdelta[cosdelta < -1] = -1.
968965

969-
ang_sep = np.arccos(cosdelta) * u.rad
970-
971-
return ang_sep
966+
return np.arccos(cosdelta) * u.rad
972967

973968

974969
def logbin_mean(x_bin):

0 commit comments

Comments
 (0)