def getvasprun(self, files):
        m = self.m
        maindir = pwd()
        if m.engine == "vasp":
            calculator = self.getVaspRun_vasp
        elif m.engine == "lammps":
            calculator = self.getVaspRun_lammps
        self.jm = jobManager()
        for file in files:
            print(file)
            dir = "dirs/dir_" + file
            mkdir(dir)
            mv(file, dir + '/POSCAR')
            cd(dir)
            calculator()
            cd(maindir)
        self.jm.run()
        if m.th:
            mkdir(m.pbsname)
            self.thcode(files, m.pbsname)
            cp("dirs", m.pbsname)
            passthru("tar zcf %s.tar.gz %s" % (m.pbsname, m.pbsname))
        print('start check')
        self.jm.check()
        if m.engine == "lammps1":
            from multiprocessing.dummy import Pool
            pool = Pool()
            pool.map_async(lammpsvasprun, files)
            pool.close()
            pool.join()