sot / chandra_aca

Chandra Aspect Camera Tools
https://sot.github.io/chandra_aca
BSD 2-Clause "Simplified" License
0 stars 0 forks source link

ACAImage support for flickering pixels #76

Closed taldcroft closed 5 years ago

taldcroft commented 5 years ago

E.g.:

from chandra_aca.aca_image import ACAImage
a = ACAImage(np.linspace(0, 800, 9).reshape(3, 3))

a.flicker_init()

dt = 400
print(repr(a))
for ii in range(10):
    a.flicker_update(dt)
    print((ii + 1) * dt)
    print(repr(a))

<ACAImage row0=0 col0=0
array([[  0, 100, 200],
       [300, 400, 500],
       [600, 700, 800]])>
400
<ACAImage row0=0 col0=0
array([[  0, 132, 200],
       [297, 400, 500],
       [600, 700, 800]])>
800
<ACAImage row0=0 col0=0
array([[  0, 132, 200],
       [297, 400, 500],
       [600, 700, 800]])>
1200
<ACAImage row0=0 col0=0
array([[  0, 132, 200],
       [297, 591, 500],
       [600, 700, 800]])>
1600
<ACAImage row0=0 col0=0
array([[  0, 132, 200],
       [206, 591, 500],
       [600, 755, 800]])>
2000
<ACAImage row0=0 col0=0
array([[  0, 132, 200],
       [206, 591, 500],
       [600, 755, 800]])>
2400
<ACAImage row0=0 col0=0
array([[  0,  98, 200],
       [206, 591, 500],
       [600, 755, 800]])>
2800
<ACAImage row0=0 col0=0
array([[  0,  98, 200],
       [206, 591, 500],
       [600, 755, 800]])>
3200
<ACAImage row0=0 col0=0
array([[  0,  98, 200],
       [206, 591, 500],
       [600, 755, 800]])>
3600
<ACAImage row0=0 col0=0
array([[  0,  98, 200],
       [206, 591, 500],
       [600, 755, 800]])>
4000
<ACAImage row0=0 col0=0
array([[  0,  98, 200],
       [206, 591, 500],
       [600, 755, 800]])>
taldcroft commented 5 years ago

This is ready for review.