Statistiques
| Branche: | Tag: | Révision :

dockonsurf / dockonsurf.py @ b12eded7

Historique | Voir | Annoter | Télécharger (1,14 ko)

1
#!/usr/bin/env python3
2
"""
3
Code to systematically find the most stable geometry for molecules on surfaces
4
"""
5
import os
6

    
7
import daemon
8

    
9
from modules.config_arg import get_args
10
from modules.config_log import config_log
11
from modules.dos_input import read_input
12
from modules.isolated import run_isolated
13
from modules.screening import run_screening
14
from modules.refinement import run_refinement
15

    
16
args = get_args()
17
logger = config_log('DockOnSurf')
18

    
19
print("Running DockOnSurf.\n"
20
      f"To check DockOnSurf activity see '{logger.handlers[0].baseFilename}'.")
21

    
22
with daemon.DaemonContext(working_directory=os.getcwd(), umask=0o002,
23
                          files_preserve=[logger.handlers[0].stream.fileno()]):
24
    logger.info(f'DockOnSurf started on {os.getcwd()}.')
25
    logger.info(f'To kill DockOnSurf execution type: `$ kill {os.getpid()}`.')
26
    logger.info(f"Using '{args.input}' as input.")
27

    
28
    inp_vars = read_input(args.input)
29

    
30
    if inp_vars['isolated']:
31
        run_isolated(inp_vars)
32

    
33
    if inp_vars['screening']:
34
        run_screening(inp_vars)
35

    
36
    if inp_vars['refinement']:
37
        run_refinement(inp_vars)
38

    
39
    logger.info(f'DockOnSurf finished.')