Пример #1
0
    def test_CasPsfs(self):
        """
        Tests for method `CasPsfs`.
        """

        filename = "SiN_wPSFs_bG_T200nm.cas"
        filepath = resource_filename(
            __name__, "../../../test_data/casino3.x/PSFs/" + filename)
        if is_bad_file(filepath):
            raise SkipTest(filepath)

        casinoFile = File.File(filepath)

        versionRef = Version.SIM_OPTIONS_VERSION_3_3_0_0
        versionStrRef = "3.3.0.0"

        version = casinoFile.getVersion()
        self.assertEqual(versionRef, version)

        versionStr = casinoFile._extractVersionString(version)
        self.assertEqual(versionStrRef, versionStr)

        optionsAdvancedPsfsSettings = casinoFile.getOptions(
        ).getOptionsAdvancedPsfsSettings()

        self.assertEqual(True, optionsAdvancedPsfsSettings.isGeneratingPSFs())

        scanPointResults = casinoFile.getScanPointResults()
        self.assertEqual(False, scanPointResults[0].isPsfs())
        self.assertEqual(None,
                         scanPointResults[0].getPointSpreadFunctionMatrix())

        filename = "SiN_wPSFs_wConserveData_bG_T200nm.cas"
        filepath = resource_filename(
            __name__, "../../../test_data/casino3.x/PSFs/" + filename)

        casinoFile = File.File(filepath)

        versionRef = Version.SIM_OPTIONS_VERSION_3_3_0_0
        versionStrRef = "3.3.0.0"

        version = casinoFile.getVersion()
        self.assertEqual(versionRef, version)

        versionStr = casinoFile._extractVersionString(version)
        self.assertEqual(versionStrRef, versionStr)

        optionsAdvancedPsfsSettings = casinoFile.getOptions(
        ).getOptionsAdvancedPsfsSettings()

        self.assertEqual(True, optionsAdvancedPsfsSettings.isGeneratingPSFs())

        scanPointResults = casinoFile.getScanPointResults()
        self.assertEqual(True, scanPointResults[0].isPsfs())
        self.assertIsInstance(
            scanPointResults[0].getPointSpreadFunctionMatrix(),
            PointSpreadFunctionMatrix.PointSpreadFunctionMatrix)
Пример #2
0
    def test_SimPsfs(self):
        """
        Tests for method `SimPsfs`.
        """
        filenames = [
            "SiN_wPSFs_bG_T200nm.sim", "SiN_wPSFs_wConserveData_bG_T200nm.sim"
        ]
        for filename in filenames:
            filepath = resource_filename(
                __name__, "../../../test_data/casino3.x/PSFs/" + filename)
            if is_bad_file(filepath):
                raise SkipTest(filepath)

            casinoFile = File.File(filepath)

            versionRef = Version.SIM_OPTIONS_VERSION_3_3_0_0
            versionStrRef = "3.3.0.0"

            version = casinoFile.getVersion()
            self.assertEqual(versionRef, version)

            versionStr = casinoFile._extractVersionString(version)
            self.assertEqual(versionStrRef, versionStr)

            optionsAdvancedPsfsSettings = casinoFile.getOptions(
            ).getOptionsAdvancedPsfsSettings()

            self.assertEqual(True,
                             optionsAdvancedPsfsSettings.isGeneratingPSFs())
Пример #3
0
 def test__readVersion(self):
     if is_bad_file(self.filepathSim):
         raise SkipTest
     casinoFile = File.File(self.filepathSim)
     file = casinoFile._open(self.filepathSim)
     version = casinoFile._readVersion(file)
     self.assertEqual(30107002, version)
Пример #4
0
    def test_getFileType(self):
        if is_bad_file(self.filepathSim):
            raise SkipTest
        casinoFile = File.File(self.filepathSim)

        type = casinoFile.getFileType()
        self.assertEqual(File.SIMULATION_CONFIGURATIONS, type)
Пример #5
0
    def test_init(self):
        if is_bad_file(self.filepathSim):
            raise SkipTest

        casinoFile = File.File(self.filepathSim)

        self.assertEqual(self.filepathSim, casinoFile.getFilepath())
Пример #6
0
    def testReadCasFile(self):
        if is_bad_file(self.filepathSim):
            raise SkipTest
        casinoFile = File.File(self.filepathCas)
        casinoFile.open()

        self.assertEqual(30107002, casinoFile._version)
        self.assertEqual(1, casinoFile._numberSimulations)
Пример #7
0
    def test__readExtension(self):
        if is_bad_file(self.filepathSim):
            raise SkipTest
        casinoFile = File.File(self.filepathSim)
        file = casinoFile._open(self.filepathSim)
        extension = casinoFile._readExtension(file)
        self.assertEqual(File.SIMULATION_CONFIGURATIONS, extension)

        file = open(self.filepathCas, 'rb')
        extension = casinoFile._readExtension(file)
        self.assertEqual(File.SIMULATION_RESULTS, extension)
Пример #8
0
    def _extractData(self):
        casinoFile = File.File(self._filepath)
        casinoFile.open()

        assert 1 == casinoFile.getNumberSimulations()

        scanPointsResults = casinoFile.getScanPointResults()
        self._numberScanPoints = len(scanPointsResults)

        self._positions = []
        self._intensities = {}
        for scanPointResults in scanPointsResults:
            position = scanPointResults.getPosition()
            self._positions.append(position)
            self._intensities[position] = self._getIntensity(scanPointResults)
    def test_extractVersionString(self):
        if is_bad_file(self.filepathSim):
            raise SkipTest
        casinoFile = File.File(self.filepathSim)

        version = File.V30103040
        versionStrRef = "3.1.3.40"
        versionStr = casinoFile._extractVersionString(version)
        self.assertEqual(versionStrRef, versionStr)

        version = File.V30103070
        versionStrRef = "3.1.3.70"
        versionStr = casinoFile._extractVersionString(version)
        self.assertEqual(versionStrRef, versionStr)

        version = File.V30104060
        versionStrRef = "3.1.4.60"
        versionStr = casinoFile._extractVersionString(version)
        self.assertEqual(versionStrRef, versionStr)

        version = File.V30107002
        versionStrRef = "3.1.7.2"
        versionStr = casinoFile._extractVersionString(version)
        self.assertEqual(versionStrRef, versionStr)
Пример #10
0
    def test_modifyRotationYZ_deg(self):
        testDataPath = get_current_module_path(__file__, "../../../test_data")
        sourceFilepath = os.path.join(testDataPath, "casino3.x/NoRotationY.sim")
        if is_bad_file(sourceFilepath):
            raise SkipTest

        if not os.path.isdir(self.temporaryDir):
            raise SkipTest

        rotationYRef_deg = 10.0
        filename = "RotationY10.sim"
        destinationFilepath = os.path.join(self.temporaryDir, filename)

        shutil.copy2(sourceFilepath, destinationFilepath)

        casinoFile = CasinoFile.File(destinationFilepath, isModifiable=True)
        sample = casinoFile.getFirstSimulation().getSample()

        rotationY_deg = sample.getRotationY_deg()
        self.assertAlmostEqual(0.0, rotationY_deg)
        rotationZ_deg = sample.getRotationZ_deg()
        self.assertAlmostEqual(0.0, rotationZ_deg)

        sample.modifyRotationY_deg(rotationYRef_deg)
        del casinoFile

        casinoFile = CasinoFile.File(destinationFilepath, isModifiable=False)
        sample = casinoFile.getFirstSimulation().getSample()

        rotationY_deg = sample.getRotationY_deg()
        self.assertAlmostEqual(rotationYRef_deg, rotationY_deg)
        rotationZ_deg = sample.getRotationZ_deg()
        self.assertAlmostEqual(0.0, rotationZ_deg)

        del casinoFile

        rotationZRef_deg = 15.0
        filename = "RotationZ15.sim"
        destinationFilepath = os.path.join(self.temporaryDir, filename)

        shutil.copy2(sourceFilepath, destinationFilepath)

        casinoFile = CasinoFile.File(destinationFilepath, isModifiable=True)
        sample = casinoFile.getFirstSimulation().getSample()

        rotationY_deg = sample.getRotationY_deg()
        self.assertAlmostEqual(0.0, rotationY_deg)
        rotationZ_deg = sample.getRotationZ_deg()
        self.assertAlmostEqual(0.0, rotationZ_deg)

        sample.modifyRotationZ_deg(rotationZRef_deg)
        del casinoFile

        casinoFile = CasinoFile.File(destinationFilepath, isModifiable=False)
        sample = casinoFile.getFirstSimulation().getSample()

        rotationY_deg = sample.getRotationY_deg()
        self.assertAlmostEqual(0.0, rotationY_deg)
        rotationZ_deg = sample.getRotationZ_deg()
        self.assertAlmostEqual(rotationZRef_deg, rotationZ_deg)

        del casinoFile

        rotationYRef_deg = 20.0
        rotationZRef_deg = 35.0
        filename = "RotationY20Z35.sim"
        destinationFilepath = os.path.join(self.temporaryDir, filename)

        shutil.copy2(sourceFilepath, destinationFilepath)

        casinoFile = CasinoFile.File(destinationFilepath, isModifiable=True)
        sample = casinoFile.getFirstSimulation().getSample()

        rotationY_deg = sample.getRotationY_deg()
        self.assertAlmostEqual(0.0, rotationY_deg)
        rotationZ_deg = sample.getRotationZ_deg()
        self.assertAlmostEqual(0.0, rotationZ_deg)

        sample.modifyRotationY_deg(rotationYRef_deg)
        sample.modifyRotationZ_deg(rotationZRef_deg)
        del casinoFile

        casinoFile = CasinoFile.File(destinationFilepath, isModifiable=False)
        sample = casinoFile.getFirstSimulation().getSample()

        rotationY_deg = sample.getRotationY_deg()
        self.assertAlmostEqual(rotationYRef_deg, rotationY_deg)
        rotationZ_deg = sample.getRotationZ_deg()
        self.assertAlmostEqual(rotationZRef_deg, rotationZ_deg)

        del casinoFile