def fukuiPlusFD(self,cat_fchk): fukuiPlus = "fukuiPlusFd.cub" cat_cube = self.TotDensity(cat_fchk) neut_cube = self.TotDensity(self.fchkFile) FD = cubman.substract_cube(cat_cube,neut_cube) os.system("mv "+ FD + " "+ fukuiPlus) return fukuiPlus
def fukuiMinusFD(self,an_fchk): fukuiMinus = "fukuiMinusFd.cub" an_cube = self.TotDensity(an_fchk) neut_cube = self.TotDensity(self.fchkFile) FD = cubman.substract_cube(neut_cube,an_cube) os.system("mv "+ FD + " "+fukuiMinus) return fukuiMinus
def fukuiPlusFD(self,cat_fchk): print "Computing Fukui plus using Finite Differences" fukuiPlus = "fukuiPlusFd.cub" neut_cube = self.TotDensity(self.fchkFile) cat_cube = self.TotDensity(cat_fchk) FD = cubman.substract_cube(cat_cube,neut_cube) os.system("mv "+ FD + " "+ fukuiPlus) return fukuiPlus
def fukuiMinusFD(self,an_fchk): print "Computing Fukui minus using Finite Differences" fukuiMinus = "fukuiMinusFd.cub" neut_cube = self.TotDensity(self.fchkFile) an_cube = self.TotDensity(an_fchk) FD = cubman.substract_cube(neut_cube,an_cube) os.system("mv "+ FD + " "+fukuiMinus) return fukuiMinus
def dualFMOA(self): if not os.path.exists("dualFMOA"): os.makedirs("dualFMOA") os.chdir("dualFMOA") print "about to compute dual descriptor using FMO aproximation" dual = cubman.substract_cube(self.LUMO(), self.H**O()) os.system("mv "+dual+" dualFMOA.cub") os.chdir("../")
def dualIAPval(self): if not os.path.exists("dualIAPval"): os.makedirs("dualIAPval") os.chdir("dualIAPval") os.system("cp ../"+self.fchkFile+" .") print "about to compute dual descriptor using Intermediate aproximation " dual = cubman.substract_cube(self.fukuiPlusMartinezVal(), self.fukuiMinusMartinezVal()) os.system("mv "+str(dual)+" dualIAPval.cub") os.system("ls | grep -v 'dual' | grep -v 'fukui' | xargs rm") os.chdir("../")
def dualFD(self,cat_fchk,an_fchk): if not os.path.exists("duaFD"): os.makedirs("dualFD") os.chdir("dualFD") os.system("cp ../*.fchk .") print "About to compute dual descriptor using cation and anion densities " dual = cubman.substract_cube(self.fukuiPlusFD(cat_fchk),self.fukuiMinusFD(an_fchk)) os.system("mv "+dual+" dualFD.cub") os.system("rm *.fchk") os.chdir("../")
def localHyperSoftnessFMOA(self): occ_energy_list = sp.get_orbitals(self.lines)[0] HOMO_enr = occ_energy_list[-1] virt_energy_list = sp.get_orbitals(self.lines)[1] LUMO_energy = virt_energy_list[0] hard = float(HOMO_enr) - float(LUMO_energy) print "HARDNESS: " + str(hard) if not os.path.exists("lhsFMOA"): os.makedirs("lhsFMOA") os.chdir("lhsFMOA") print "CALCULATING THE DUAL DESCRIPTOR" dual = cubman.substract_cube(self.LUMO(), self.H**O()) os.system("mv "+dual+" dualFMOA.cub") print "MULTIPlYING THE DUAL DESCRIPTOR" HS = cubman.mult_cube("dualFMOA.cub", 1.0/(hard*hard)) os.system("mv "+HS+" lhsFMOA.cub") os.chdir("../")