COMPASS  5.0.0
End-to-end AO simulation tool using GPU acceleration
actuCouplingTest Namespace Reference

Variables

 p_geom = wao.config.p_geom
 
int cent = p_geom.pupdiam / 2. + 0.5
 
 p_tel = wao.config.p_tel
 
 t_spiders
 
 spup
 
 spup2
 
 spiders = spup2 - spup
 
 spidersID
 
 k
 
 spidersi = util.pad_array(spidersID, p_geom.ssize).astype(np.float32)
 
list pxListSpider = [np.where(spidersi == i) for i in range(1, k + 1)]
 
float dmposx = wao.config.p_dm0._xpos - 0.5
 
float dmposy = wao.config.p_dm0._ypos - 0.5
 
 dmposMat = np.c_[dmposx, dmposy].T
 
 pitch = wao.config.p_dm0._pitch
 
 discard = np.zeros(len(dmposx), dtype=np.bool)
 
list pairs = []
 
 pts = np.c_[pxList[1], pxList[0]]
 
 lineEq = np.linalg.pinv(pts).dot(np.ones(pts.shape[0]))
 
 aa
 
 bb
 
 onePoint = np.array([1 / aa, 0.])
 
 x = np.arange(2048)
 
int y = -aa / bb * x + 1 / bb
 
 color
 
 label
 
int rotation = np.array([[-bb, aa], [-aa, -bb]]) / (aa**2 + bb**2)**.5
 
int rotatedPx = rotation.dot(pts.T - onePoint[:, None])
 
 minU
 
 maxU
 
int rotatedActus = rotation.dot(dmposMat - onePoint[:, None])
 
tuple selGoodSide = (rotatedActus[0] > minU) & (rotatedActus[0] < maxU)
 
tuple selDiscard = (np.abs(rotatedActus[1]) < 0.5 * pitch) & selGoodSide
 
tuple selPairable = (np.abs(rotatedActus[1]) > 0.5 * pitch) & \
 
 pairableIdx = np.where(selPairable)[0]
 
int uCoord
 
 order = np.sort(uCoord)
 
 orderIdx = pairableIdx[np.argsort(uCoord)]
 
 loc
 

Variable Documentation

◆ aa

actuCouplingTest.aa

Definition at line 49 of file actuCouplingTest.py.

◆ bb

actuCouplingTest.bb

Definition at line 49 of file actuCouplingTest.py.

◆ cent

int actuCouplingTest.cent = p_geom.pupdiam / 2. + 0.5

Definition at line 13 of file actuCouplingTest.py.

◆ color

actuCouplingTest.color

Definition at line 59 of file actuCouplingTest.py.

◆ discard

actuCouplingTest.discard = np.zeros(len(dmposx), dtype=np.bool)

Definition at line 40 of file actuCouplingTest.py.

◆ dmposMat

actuCouplingTest.dmposMat = np.c_[dmposx, dmposy].T

Definition at line 34 of file actuCouplingTest.py.

◆ dmposx

float actuCouplingTest.dmposx = wao.config.p_dm0._xpos - 0.5

Definition at line 32 of file actuCouplingTest.py.

◆ dmposy

float actuCouplingTest.dmposy = wao.config.p_dm0._ypos - 0.5

Definition at line 33 of file actuCouplingTest.py.

◆ k

actuCouplingTest.k

Definition at line 27 of file actuCouplingTest.py.

◆ label

actuCouplingTest.label

Definition at line 59 of file actuCouplingTest.py.

◆ lineEq

actuCouplingTest.lineEq = np.linalg.pinv(pts).dot(np.ones(pts.shape[0]))

Definition at line 48 of file actuCouplingTest.py.

◆ loc

actuCouplingTest.loc

Definition at line 99 of file actuCouplingTest.py.

◆ maxU

actuCouplingTest.maxU

Definition at line 69 of file actuCouplingTest.py.

◆ minU

actuCouplingTest.minU

Definition at line 69 of file actuCouplingTest.py.

◆ onePoint

actuCouplingTest.onePoint = np.array([1 / aa, 0.])

Definition at line 54 of file actuCouplingTest.py.

◆ order

actuCouplingTest.order = np.sort(uCoord)

Definition at line 88 of file actuCouplingTest.py.

◆ orderIdx

actuCouplingTest.orderIdx = pairableIdx[np.argsort(uCoord)]

Definition at line 89 of file actuCouplingTest.py.

◆ p_geom

actuCouplingTest.p_geom = wao.config.p_geom

Definition at line 3 of file actuCouplingTest.py.

◆ p_tel

actuCouplingTest.p_tel = wao.config.p_tel

Definition at line 15 of file actuCouplingTest.py.

◆ pairableIdx

actuCouplingTest.pairableIdx = np.where(selPairable)[0]

Definition at line 84 of file actuCouplingTest.py.

◆ pairs

list actuCouplingTest.pairs = []

Definition at line 41 of file actuCouplingTest.py.

◆ pitch

actuCouplingTest.pitch = wao.config.p_dm0._pitch

Definition at line 36 of file actuCouplingTest.py.

◆ pts

actuCouplingTest.pts = np.c_[pxList[1], pxList[0]]

Definition at line 45 of file actuCouplingTest.py.

◆ pxListSpider

list actuCouplingTest.pxListSpider = [np.where(spidersi == i) for i in range(1, k + 1)]

Definition at line 29 of file actuCouplingTest.py.

◆ rotatedActus

int actuCouplingTest.rotatedActus = rotation.dot(dmposMat - onePoint[:, None])

Definition at line 72 of file actuCouplingTest.py.

◆ rotatedPx

int actuCouplingTest.rotatedPx = rotation.dot(pts.T - onePoint[:, None])

Definition at line 66 of file actuCouplingTest.py.

◆ rotation

int actuCouplingTest.rotation = np.array([[-bb, aa], [-aa, -bb]]) / (aa**2 + bb**2)**.5

Definition at line 63 of file actuCouplingTest.py.

◆ selDiscard

tuple actuCouplingTest.selDiscard = (np.abs(rotatedActus[1]) < 0.5 * pitch) & selGoodSide

Definition at line 76 of file actuCouplingTest.py.

◆ selGoodSide

tuple actuCouplingTest.selGoodSide = (rotatedActus[0] > minU) & (rotatedActus[0] < maxU)

Definition at line 73 of file actuCouplingTest.py.

◆ selPairable

tuple actuCouplingTest.selPairable = (np.abs(rotatedActus[1]) > 0.5 * pitch) & \

Definition at line 80 of file actuCouplingTest.py.

◆ spiders

actuCouplingTest.spiders = spup2 - spup

Definition at line 25 of file actuCouplingTest.py.

◆ spidersi

actuCouplingTest.spidersi = util.pad_array(spidersID, p_geom.ssize).astype(np.float32)

Definition at line 28 of file actuCouplingTest.py.

◆ spidersID

actuCouplingTest.spidersID

Definition at line 27 of file actuCouplingTest.py.

◆ spup

actuCouplingTest.spup
Initial value:
1 = mkP.make_pupil(p_geom.pupdiam, p_geom.pupdiam, p_tel, cent,
2  cent).astype(np.float32)

Definition at line 18 of file actuCouplingTest.py.

◆ spup2

actuCouplingTest.spup2
Initial value:
1 = mkP.make_pupil(p_geom.pupdiam, p_geom.pupdiam, p_tel, cent,
2  cent).astype(np.float32)

Definition at line 22 of file actuCouplingTest.py.

◆ t_spiders

actuCouplingTest.t_spiders

Definition at line 17 of file actuCouplingTest.py.

◆ uCoord

int actuCouplingTest.uCoord
Initial value:
1 = rotatedActus[0,
2  selPairable]

Definition at line 85 of file actuCouplingTest.py.

◆ x

actuCouplingTest.x = np.arange(2048)

Definition at line 57 of file actuCouplingTest.py.

◆ y

actuCouplingTest.y = -aa / bb * x + 1 / bb

Definition at line 58 of file actuCouplingTest.py.