def _loadExpObjCombinedAB(self):
     kwargs = {
         "times": self.timesA + self.timesB,
         "positions": self.positionsA + self.positionsB,
         "scales": self.scalesA + self.scalesB,
         "heights": self.heightsA + self.heightsB
     }
     return tCode.MetadynHillsInfo(**kwargs)
 def createTestObjs(self):
     currKwargs = {
         "times": self.times,
         "positions": self.positions,
         "scales": self.scales,
         "heights": self.heights,
         "sortTimes": self.sortTimes
     }
     self.testObjA = tCode.MetadynHillsInfo(**currKwargs)
    def createTestObjs(self):
        kwargsA = {
            "times": self.timesA,
            "positions": self.positionsA,
            "scales": self.scalesA,
            "heights": self.heightsA,
            "sortTimes": self.sortTimesA
        }
        kwargsB = {
            "times": self.timesB,
            "positions": self.positionsB,
            "scales": self.scalesB,
            "heights": self.heightsB,
            "sortTimes": self.sortTimesB
        }

        self.testObjA = tCode.MetadynHillsInfo(**kwargsA)
        self.testObjB = tCode.MetadynHillsInfo(**kwargsB)
 def createTestObjs(self):
     self.times = [0 for x in range(len(self.scales))]
     outKwargs = {
         "times": self.times,
         "positions": [[x] for x in self.positions],
         "scales": [[x] for x in self.scales],
         "heights": [[x] for x in self.heights]
     }
     self.hillsObjA = aMetaHillsHelp.MetadynHillsInfo(**outKwargs)
     self.expParams = [
         self.positions[0], self.scales[0], self.heights[0],
         self.positions[1], self.scales[1], self.heights[1]
     ]
    def testSortTimesFunction(self):
        #Figure out expected obj
        expIdxOrder, kwargDict = [1, 0, 2], dict()
        for attr in ["times", "positions", "scales", "heights"]:
            startVals = getattr(self, attr)
            kwargDict[attr] = [
                copy.deepcopy(startVals[idx]) for idx in expIdxOrder
            ]
        expObj = tCode.MetadynHillsInfo(**kwargDict)

        self.assertNotEqual(expObj, self.testObjA)
        self.testObjA.sortTimes()
        self.assertEqual(expObj, self.testObjA)
Esempio n. 6
0
    def _loadExpectedCaseA_fromCreator(self):
        expTimes = [0, 0, 20]
        expPositions = self.initPositions + self.spawnedPositions
        expHeights = [[h, h] for h in self.initHeights + self.spawnedHeights
                      ]  #2 values since we have 2 dimensions
        expScales = self.initScales + self.spawnedScales

        currKwargs = {
            "times": expTimes,
            "positions": expPositions,
            "scales": expScales,
            "heights": expHeights
        }
        expOutObj = aMetadynHillsHelp.MetadynHillsInfo(**currKwargs)
        return expOutObj
Esempio n. 7
0
    def createTestObjs(self):
        #Get the initial hills
        currKwargs = {
            "scales": self.initScales,
            "heights": self.initHeights,
            "positions": self.initPositions
        }
        self.spawnOptsA = mdOptsHelp.MetadynamicsSpawnHillsOptions.fromIters(
            **currKwargs)

        #Get the creator obj used
        self.inpMetadynOpts = mdOptsHelp.MetaDynamicsOptsCP2KStandard(
            None, spawnHillsOpts=self.spawnOptsA)
        self.creatorObjA = creatorHelp.CP2KCalcObjFactoryStandard(
            metaDynOpts=self.inpMetadynOpts)

        #Get an initial object representing hills spawned
        currKwargs = {
            "times": self.initTimes,
            "scales": self.initScales,
            "heights": [[h, h] for h in self.initHeights],
            "positions": self.initPositions
        }
        self.initHillInfoDict = aMetadynHillsHelp.MetadynHillsInfo(
            **currKwargs)

        #Create a mock standard output obj; need this to get the data
        self.spawnedDictsA = {
            "time": self.spawnedTimes,
            "position": [x[0] for x in self.spawnedPositions],
            "scale": [x[0] for x in self.spawnedScales],
            "height": self.spawnedHeights
        }
        self.spawnedDictsB = {
            "time": self.spawnedTimes,
            "position": [x[1] for x in self.spawnedPositions],
            "scale": [x[1] for x in self.spawnedScales],
            "height": self.spawnedHeights
        }

        spawnedMetadynHillsDicts = [self.spawnedDictsA, self.spawnedDictsB]

        parsedFile = types.SimpleNamespace(
            metadyn_hills=spawnedMetadynHillsDicts)
        outData = [[types.SimpleNamespace(parsedFile=parsedFile)]]

        self.stdOutObj = types.SimpleNamespace(data=outData)
Esempio n. 8
0
    def testExpected_noInitiallySpawnedHills(self):
        #get expected
        expTimes = [20]
        expPositions, expScales = self.spawnedPositions, self.spawnedScales
        expHeights = [[h, h] for h in self.spawnedHeights]
        currKwargs = {
            "times": expTimes,
            "positions": expPositions,
            "scales": expScales,
            "heights": expHeights
        }
        expObj = aMetadynHillsHelp.MetadynHillsInfo(**currKwargs)

        #setup
        self.initHillInfoDict, self.creatorObjA = None, None

        #run and test
        actObj = self._runTestFunct()
        self.assertEqual(expObj, actObj)
    def _getExpObjCaseA(self):
        times, positions, scales = [
            copy.deepcopy(x)
            for x in [self.times, self.positions, self.scales]
        ]
        heights = copy.deepcopy(self.heights)
        positions[0].append(self.inpPosVals), positions[1].append(
            self.inpPosVals)
        scales[0].append(self.inpScales), scales[1].append(self.inpScales)
        heights[0].append(self.heights[0][0]), heights[1].append(
            self.heights[1][0])

        currKwargs = {
            "times": times,
            "positions": positions,
            "scales": scales,
            "heights": heights,
            "sortTimes": self.sortTimes
        }
        return tCode.MetadynHillsInfo(**currKwargs)
 def createTestObjs(self):
     self.testObjA = tCode.MetadynHillsInfo(times=self.times,
                                            sortTimes=self.sortTimes)