Skip to content

Instantly share code, notes, and snippets.

@cdeil
Created June 8, 2016 12:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cdeil/8f61fc0cb0604c9115942da283da9552 to your computer and use it in GitHub Desktop.
Save cdeil/8f61fc0cb0604c9115942da283da9552 to your computer and use it in GitHub Desktop.
import numpy as np
class PSF:
def __init__(self, exposure, psf_value):
self.exposure = exposure
self.psf_value = psf_value
def get_psf(obs_id):
psfs = {
0 : PSF(exposure=np.ones_like(energies), psf_value=np.ones((len(energies), len(offsets)))),
42 : PSF(exposure=np.ones_like(energies), psf_value=np.ones((len(energies), len(offsets)))),
99: PSF(exposure=np.ones_like(energies), psf_value=np.ones((len(energies), len(offsets)))),
}
return psfs[obs_id]
def compute_mean_psf(obs_ids):
psf0 = get_psf(obs_ids[0])
mean_psf = PSF(
exposure=np.zeros_like(psf0.exposure),
psf_value=np.zeros_like(psf0.psf_value)
)
for obs_id in obs_ids:
if obs_id is 'bad':
continue
psf = get_psf(obs_id)
return mean_psf
energies = np.arange(10)
offsets = np.arange(10)
obs_id = [...]
print(compute_mean_psf(obs_ids=[0, 42, 99]))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment