add IR spectra and download features

Aditya Wibawa Sakti 2 years ago
parent 51e5e80724
commit 5eb4d8dd15
  1. 18
      cmmde_gui/gui.py

@ -121,13 +121,15 @@ def cmmde_gui():
post_software_btn = pn.widgets.Select(name="Software selections for post calculations",value='Orca',options=['Orca','GROMACS','Dcdftbmd','Quantum Espresso']) post_software_btn = pn.widgets.Select(name="Software selections for post calculations",value='Orca',options=['Orca','GROMACS','Dcdftbmd','Quantum Espresso'])
post_software = {'Orca':'orca','GROMACS':'gromacs','Dcdftbmd':'dcdftb','Quantum Espresso':'qe'} post_software = {'Orca':'orca','GROMACS':'gromacs','Dcdftbmd':'dcdftb','Quantum Espresso':'qe'}
# Post CMMDE method options # Post CMMDE method options
post_method_btn = pn.widgets.Select(name="Method selections for post calculations",value='GFN2-xTB',options=['GFN2-xTB','GFN1-xTB','DFTB2','DFTB2-gammah','DFTB3','DFTB3-diag']) post_method_btn = pn.widgets.Select(name="Method selections for post calculations",value='GFN2-xTB',options=['GFN2-xTB','GFN1-xTB','DFTB2','DFTB2-gammah','DFTB3','DFTB3-diag','B3LYP/def2-svp'])
post_method = {'GFN2-xTB':'XTB2', 'GFN1-xTB':'XTB1','DFTB2':'DFTB2','DFTB2-gammah':'DFTB2_gammah','DFTB3':'DFTB3','DFTB3-diag':'DFTB3-diag'} post_method = {'GFN2-xTB':'XTB2', 'GFN1-xTB':'XTB1','DFTB2':'DFTB2','DFTB2-gammah':'DFTB2_gammah','DFTB3':'DFTB3','DFTB3-diag':'DFTB3-diag','B3LYP/def2-svp':'B3LYP def2-svp'}
def post_calculation(event): def post_calculation(event):
# terminal.clear() # terminal.clear()
if post_calc[post_btn.value] == 'thermo' and post_software[post_software_btn.value] == 'orca':
Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value
os.chdir(Folder) os.chdir(Folder)
if post_calc[post_btn.value] == 'thermo' and post_software[post_software_btn.value] == 'orca':
# Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value
# os.chdir(Folder)
if not os.path.exists(post_calc[post_btn.value]): if not os.path.exists(post_calc[post_btn.value]):
os.makedirs(post_calc[post_btn.value]) os.makedirs(post_calc[post_btn.value])
os.chdir(post_calc[post_btn.value]) os.chdir(post_calc[post_btn.value])
@ -135,8 +137,8 @@ def cmmde_gui():
cmd = subprocess.run(["cmmdepost.py","-j","{}".format(post_calc[post_btn.value]),"-s","{}".format(post_software[post_software_btn.value])],capture_output=True,text=True) cmd = subprocess.run(["cmmdepost.py","-j","{}".format(post_calc[post_btn.value]),"-s","{}".format(post_software[post_software_btn.value])],capture_output=True,text=True)
TextArea.value = TextArea.value + "\n" + cmd.stdout TextArea.value = TextArea.value + "\n" + cmd.stdout
elif post_calc[post_btn.value] == 'ir' and post_software[post_software_btn.value] == 'orca': elif post_calc[post_btn.value] == 'ir' and post_software[post_software_btn.value] == 'orca':
Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value # Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value
os.chdir(Folder) # os.chdir(Folder)
if not os.path.exists(post_calc[post_btn.value]): if not os.path.exists(post_calc[post_btn.value]):
os.makedirs(post_calc[post_btn.value]) os.makedirs(post_calc[post_btn.value])
os.chdir(post_calc[post_btn.value]) os.chdir(post_calc[post_btn.value])
@ -145,11 +147,13 @@ def cmmde_gui():
TextArea.value = TextArea.value + "\n" + "Plot spektrum IR berhasil dilakukan" TextArea.value = TextArea.value + "\n" + "Plot spektrum IR berhasil dilakukan"
# terminal.subprocess.run("cmmdepost.py","-j{}".format(post_calc[post_btn.value]),"-s{}".format(post_software[post_software_btn.value])) # terminal.subprocess.run("cmmdepost.py","-j{}".format(post_calc[post_btn.value]),"-s{}".format(post_software[post_software_btn.value]))
elif post_calc[post_btn.value] == 'opt' and post_software[post_software_btn.value] == 'orca': elif post_calc[post_btn.value] == 'opt' and post_software[post_software_btn.value] == 'orca':
# Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value
# os.chdir(Folder)
cmd = subprocess.run(["cmmdepost.py","-j","{}".format(post_calc[post_btn.value]),"-s","{}".format(post_software[post_software_btn.value]),"-m","{}".format(post_method[post_method_btn.value])],capture_output=True,text=True) cmd = subprocess.run(["cmmdepost.py","-j","{}".format(post_calc[post_btn.value]),"-s","{}".format(post_software[post_software_btn.value]),"-m","{}".format(post_method[post_method_btn.value])],capture_output=True,text=True)
TextArea.value = TextArea.value + "\n" + cmd.stdout TextArea.value = TextArea.value + "\n" + cmd.stdout
else: else:
Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value # Folder = workdir + "/" + id_input.value + "/" + Molecule_input.value
os.chdir(Folder) # os.chdir(Folder)
os.makedirs(post_calc[post_btn.value]) os.makedirs(post_calc[post_btn.value])
os.chdir(post_calc[post_btn.value]) os.chdir(post_calc[post_btn.value])
cmd = subprocess.run(["cmmde.py","-i","{}".format("../cmmd.xyz"),"-s","{}".format(post_software[post_software_btn.value]),"-j","{}".format(post_calc[post_btn.value]),"-m","{}".format(post_method[post_method_btn.value])],capture_output=True,text=True) cmd = subprocess.run(["cmmde.py","-i","{}".format("../cmmd.xyz"),"-s","{}".format(post_software[post_software_btn.value]),"-j","{}".format(post_calc[post_btn.value]),"-m","{}".format(post_method[post_method_btn.value])],capture_output=True,text=True)

Loading…
Cancel
Save