def initializeJeol(self):
        # 1. checking the communication to microscope
        if ToTEM.GetCheckMicroscope() != 0:
            print 'Communication Error: Jeol 3100 is not ready to serve.'
            return

        # 2.1 setting the mag mode LowMag and defining low mag focus for the future defocus
        ToTEM.SelectFunctionMode(self.LowMAG)
        ToTEM.SetOM(self.theObjectMini)
        self.theFocusLowMAG = self.theObjectMini

        # 2.2 setting the mag mode LMAG and defining focus for the future defocus
        ToTEM.SelectFunctionMode(self.MAG1)

        # 3. defining focus plane for the future defocus length
        ToTEM.SetOLFine(self.theObjectLensFine)
        ToTEM.SetOLCoarse(self.theObjectLensCoarse)
        self.theFocusMAG1 = self.theObjectLensFine + (
            self.theObjectLensCoarse * 32)

        print 'Jeol is MAG1 mode and focus is defined for the future defocus.'

        # 4. initializing screen position as 'up'
        ToTEM.SetScreen(1)
        self.theScreenPos = 'up'

        # 5. MDS photo mode is set for film recording
        if ToTEM.GetMDSMode() != 3:
            ToTEM.SetMDSMode(3)

        return
    def setDefocus(self, defocus, relative="absolute"):
        if defocus == 0.0:
            if self.theMagMode == self.LowMAG:
                ToTEM.SetOM(self.theFocusLowMAG)
            elif self.theMagMode == self.MAG1:
                focus = self.theFocusMAG1
                focus_coarse = int(focus / 32)
                focus_fine = focus - (focus_coarse * 32)
                print 'focus coarse:', focus_coarse, 'fine:', focus_fine
                ToTEM.SetOLCoarse(focus_coarse)
                ToTEM.SetOLFine(focus_fine)
            else:
                pass
            return 0

        if relative == 'relative':
            defocus += self.getDefocus()
        elif relative == 'absolute':
            pass

        print self.theMagMode

        if self.theMagMode == self.LowMAG:
            defocus_steps = int(round(defocus / 0.00000001))
            ToTEM.SetOM(self.theFocusLowMAG + defocus_steps)
        elif self.theMagMode == self.MAG1:
            defocus_steps = int(round(defocus / 0.0000000058))
            focus = self.theFocusMAG1 + defocus_steps
            focus_coarse = int(focus / 32)
            focus_fine = focus - (focus_coarse * 32)
            print 'focus coarse:', focus_coarse, 'fine:', focus_fine
            ToTEM.SetOLCoarse(focus_coarse)
            ToTEM.SetOLFine(focus_fine)
        else:
            return 1
        return 0