mxcubecore.HardwareObjects.DESY.Centring#

Classes

Centring(*args)

Description: This class controls the operation of Tango Motor

class mxcubecore.HardwareObjects.DESY.Centring.Centring(*args)[source]#

Bases: HardwareObject

Description: This class controls the operation of Tango Motor

appendCentringDataPoint(camera_coordinates)[source]#

Descript. : call after each click and send click points - but relative in mm

centeredPosition(return_by_name=False)[source]#

Descript. : call after appending the last click. Return : {motorHO:position} dictionary.

M=numpy.zeros(shape=(self.translationAxesCount,self.translationAxesCount)) V=numpy.zeros(shape=(self.translationAxesCount))

for l in range(0,self.translationAxesCount):
for i in range (0,len(self.centringDataMatrix)):
for k in range(0,len(self.cameraAxes)):

V[l] += self.centringDataTensor[i][l][k]*self.centringDataMatrix[i][k]

for m in range(0,self.translationAxesCount):
for i in range (0,len(self.centringDataMatrix)):
for k in range(0,len(self.cameraAxes)):

M[l][m] += self.centringDataTensor[i][l][k]*self.centringDataTensor[i][m][k]

tau_cntrd = numpy.dot(numpy.linalg.pinv(M,rcond=1e-6),V)

tau_cntrd = self.apply_constraints(M,tau_cntrd)

init()[source]#

Hardware object init.