3
$\begingroup$

I want to optimise a system containing few amino acid residues (residues in active site of an enzyme) with a metal ion, in order to show a proposed mechanism is correct for the enzyme inhibition. For that, I planed to compare the optimised energies of the reactants and products. Can I do that using Quantum ESPRESSO (QE) software? Then how to generate the input files to run QE. I watched a video that shows to use Materials Project in generating CIF file. But, that is not clear to use for large systems like in my work. Can you please help me with this? Here I have attached the input file (only the active site residues that form interactions with the metal ion from a MD simulated system) in .pdb format

MODEL        1
ATOM      1  N   GLN   144      13.007  32.431  11.858  1.00  0.00
ATOM      2  HN  GLN   144      12.155  32.378  12.373  1.00  0.00
ATOM      3  CA  GLN   144      14.022  33.185  12.491  1.00  0.00
ATOM      4  HA  GLN   144      14.765  33.580  11.814  1.00  0.00
ATOM      5  CB  GLN   144      13.296  34.366  13.237  1.00  0.00
ATOM      6  HB1 GLN   144      12.555  34.112  14.025  1.00  0.00
ATOM      7  HB2 GLN   144      12.779  34.901  12.412  1.00  0.00
ATOM      8  CG  GLN   144      14.348  35.460  13.782  1.00  0.00
ATOM      9  HG1 GLN   144      14.988  34.993  14.561  1.00  0.00
ATOM     10  HG2 GLN   144      15.064  35.697  12.966  1.00  0.00
ATOM     11  CD  GLN   144      13.688  36.628  14.374  1.00  0.00
ATOM     12  OE1 GLN   144      13.963  36.848  15.563  1.00  0.00
ATOM     13  NE2 GLN   144      13.024  37.486  13.561  1.00  0.00
ATOM     14 1HE2 GLN   144      13.013  37.259  12.587  1.00  0.00
ATOM     15 2HE2 GLN   144      12.754  38.420  13.794  1.00  0.00
ATOM     16  C   GLN   144      15.045  32.406  13.423  1.00  0.00
ATOM     17  O   GLN   144      16.001  31.769  12.956  1.00  0.00
ATOM     18  N   ASP   145      14.883  32.459  14.746  1.00  0.00
ATOM     19  HN  ASP   145      14.124  32.860  15.253  1.00  0.00
ATOM     20  CA  ASP   145      15.692  31.729  15.679  1.00  0.00
ATOM     21  HA  ASP   145      16.470  31.183  15.167  1.00  0.00
ATOM     22  CB  ASP   145      16.415  32.740  16.620  1.00  0.00
ATOM     23  HB1 ASP   145      17.285  33.250  16.152  1.00  0.00
ATOM     24  HB2 ASP   145      16.844  32.184  17.481  1.00  0.00
ATOM     25  CG  ASP   145      15.597  33.888  17.227  1.00  0.00
ATOM     26  OD1 ASP   145      16.119  34.621  18.043  1.00  0.00
ATOM     27  OD2 ASP   145      14.448  34.254  16.806  1.00  0.00
ATOM     28  C   ASP   145      14.769  30.797  16.469  1.00  0.00
ATOM     29  O   ASP   145      13.622  31.142  16.664  1.00  0.00
ATOM     30  N   PRO   146      15.242  29.617  16.825  1.00  0.00
ATOM     31  CD  PRO   146      16.479  28.962  16.298  1.00  0.00
ATOM     32  HD1 PRO   146      16.466  29.047  15.191  1.00  0.00
ATOM     33  HD2 PRO   146      17.400  29.372  16.767  1.00  0.00
ATOM     34  CA  PRO   146      14.471  28.727  17.690  1.00  0.00
ATOM     35  HA  PRO   146      13.628  28.361  17.122  1.00  0.00
ATOM     36  CB  PRO   146      15.532  27.605  17.985  1.00  0.00
ATOM     37  HB1 PRO   146      15.135  26.620  18.312  1.00  0.00
ATOM     38  HB2 PRO   146      16.166  28.096  18.754  1.00  0.00
ATOM     39  CG  PRO   146      16.330  27.494  16.705  1.00  0.00
ATOM     40  HG1 PRO   146      17.271  26.905  16.688  1.00  0.00
ATOM     41  HG2 PRO   146      15.755  26.962  15.917  1.00  0.00
ATOM     42  C   PRO   146      13.879  29.220  19.040  1.00  0.00
ATOM     43  O   PRO   146      14.319  30.251  19.573  1.00  0.00
ATOM     44 PB2P PB2   305      14.747  36.610  17.945  1.00  0.00
TER      45      PB2   305 
ENDMDL
END   
$\endgroup$
7
  • $\begingroup$ If you have the CIF file, you can directly generate the QE input files. I am not sure what you have so far. If you have a smaller cell, and you want a larger supercell or maybe if you want to replace one of the central atom with a metal ion, all these can be done manually either in the CIF or in the QE input file. So the question is what you have structure-wise and how do you want your final structure? Also I am worried whether your problem can be handled in QE cause I suspect your structure will contain several hundreds of atoms, right? $\endgroup$ Commented Mar 17 at 18:09
  • $\begingroup$ @AbdulMuhaymin Actually my plan is to extract coordinates of amino acid residue that form interactions with the metal ion (eg. Aspartic acid) and the two residues on both sides of ASP residue from a MD simulated PDB file. So there are around 45 atoms from the three amino acids and the metal ion for my system. So I have only the coordinates of the atoms and can I generate an input file with that data? $\endgroup$
    – PriZarah
    Commented Mar 18 at 5:33
  • $\begingroup$ Yes, if you have the coordinates of all the atoms, you can build an input file. You have to provide starting coordinates for the atoms in amino acid. Then QE will relax the structure and you will get relaxed/optimized coordinates. Do you have the coordinates as an .xyz/.cif file? $\endgroup$ Commented Mar 18 at 6:03
  • $\begingroup$ @AbdulMuhaymin The coordinates are in .pdb format. Do I need to convert that to any other format? Please help me since I am new for this. $\endgroup$
    – PriZarah
    Commented Mar 19 at 3:12
  • $\begingroup$ you can directly upload your .pdb file to QE input generator and generate an input file. Then, if needed, you have to manually add the atomic positions and pseudopotential information of the metal ion in the input file. Increase the ntyp, nat etc. accordingly. If you can share the pdb file, I can write an answer $\endgroup$ Commented Mar 19 at 3:23

1 Answer 1

1
$\begingroup$

You can generate an xyz file using the following code. Before running the code, you must clean the pdb file, so that all atom names start with an alphabet [A-Z].

import  sys as  sys

pdbFile =   sys.argv[1]

class coordObject:
    def __init__(self, fileName: str) -> None:
        self.atoms  =   []
        self.coords =   []

        with open(fileName) as fileObject:
            for line in fileObject:
                if "ATOM" in line:
                    line        =   line.split()
                    atomname    =   line[2][0]
                    atomcoords  =   [float(x) for x in line[5:8]]
                    self.atoms.append(atomname)
                    self.coords.append(atomcoords)

def writePWInput(coords: coordObject) -> None:
    with open("sample.xyz", "w") as xyzObject:
        xyzObject.write("{}\n\n".format(len(coords.atoms)))
        for atom, coord in zip(coords.atoms, coords.coords):
            xyzObject.write("{:<10s}{:10.3f}{:10.3f}{:10.3f}\n".format(atom, coord[0], coord[1], coord[2]))

coords  =   coordObject(pdbFile)
writePWInput(coords)

This is the xyz file that gets generated from the above code, and would be saved as sample.xyz in the same directory.

44

N             13.007    32.431    11.858
H             12.155    32.378    12.373
C             14.022    33.185    12.491
H             14.765    33.580    11.814
C             13.296    34.366    13.237
H             12.555    34.112    14.025
H             12.779    34.901    12.412
C             14.348    35.460    13.782
H             14.988    34.993    14.561
H             15.064    35.697    12.966
C             13.688    36.628    14.374
O             13.963    36.848    15.563
N             13.024    37.486    13.561
H             13.013    37.259    12.587
H             12.754    38.420    13.794
C             15.045    32.406    13.423
O             16.001    31.769    12.956
N             14.883    32.459    14.746
H             14.124    32.860    15.253
C             15.692    31.729    15.679
H             16.470    31.183    15.167
C             16.415    32.740    16.620
H             17.285    33.250    16.152
H             16.844    32.184    17.481
C             15.597    33.888    17.227
O             16.119    34.621    18.043
O             14.448    34.254    16.806
C             14.769    30.797    16.469
O             13.622    31.142    16.664
N             15.242    29.617    16.825
C             16.479    28.962    16.298
H             16.466    29.047    15.191
H             17.400    29.372    16.767
C             14.471    28.727    17.690
H             13.628    28.361    17.122
C             15.532    27.605    17.985
H             15.135    26.620    18.312
H             16.166    28.096    18.754
C             16.330    27.494    16.705
H             17.271    26.905    16.688
H             15.755    26.962    15.917
C             13.879    29.220    19.040
O             14.319    30.251    19.573
P             14.747    36.610    17.945

Once you have this file, you can open this in PWgui (which is an input generator for QE) and create the input file.

&CONTROL
  calculation = 'scf'
  etot_conv_thr =   4.4000000000d-04
  forc_conv_thr =   1.0000000000d-04
  outdir = './out/'
  prefix = 'aiida'
  pseudo_dir = './pseudo/'
  tprnfor = .true.
  tstress = .true.
  verbosity = 'high'
/
&SYSTEM
  degauss =   1.4699723600d-02
  ecutrho =   4.8000000000d+02
  ecutwfc =   6.0000000000d+01
  ibrav = 0
  nat = 44
  nosym = .false.
  ntyp = 5
  occupations = 'smearing'
  smearing = 'cold'
/
&ELECTRONS
  conv_thr =   8.8000000000d-09
  electron_maxstep = 80
  mixing_beta =   4.0000000000d-01
/
ATOMIC_SPECIES
C      12.0107 C.pbesol-n-kjpaw_psl.1.0.0.UPF
H      1.00794 H.pbesol-rrkjus_psl.1.0.0.UPF
N      14.0067 N.pbesol-theos.UPF
O      15.9994 O.pbesol-n-kjpaw_psl.0.1.UPF
P      30.973761 P.pbesol-n-rrkjus_psl.1.0.0.UPF
ATOMIC_POSITIONS crystal
N            0.6503500000       1.6215500000       0.5929000000 
H            0.6077500000       1.6189000000       0.6186500000 
C            0.7011000000       1.6592500000       0.6245500000 
H            0.7382500000       1.6790000000       0.5907000000 
C            0.6648000000       1.7183000000       0.6618500000 
H            0.6277500000       1.7056000000       0.7012500000 
H            0.6389500000       1.7450500000       0.6206000000 
C            0.7174000000       1.7730000000       0.6891000000 
H            0.7494000000       1.7496500000       0.7280500000 
H            0.7532000000       1.7848500000       0.6483000000 
C            0.6844000000       1.8314000000       0.7187000000 
O            0.6981500000       1.8424000000       0.7781500000 
N            0.6512000000       1.8743000000       0.6780500000 
H            0.6506500000       1.8629500000       0.6293500000 
H            0.6377000000       1.9210000000       0.6897000000 
C            0.7522500000       1.6203000000       0.6711500000 
O            0.8000500000       1.5884500000       0.6478000000 
N            0.7441500000       1.6229500000       0.7373000000 
H            0.7062000000       1.6430000000       0.7626500000 
C            0.7846000000       1.5864500000       0.7839500000 
H            0.8235000000       1.5591500000       0.7583500000 
C            0.8207500000       1.6370000000       0.8310000000 
H            0.8642500000       1.6625000000       0.8076000000 
H            0.8422000000       1.6092000000       0.8740500000 
C            0.7798500000       1.6944000000       0.8613500000 
O            0.8059500000       1.7310500000       0.9021500000 
O            0.7224000000       1.7127000000       0.8403000000 
C            0.7384500000       1.5398500000       0.8234500000 
O            0.6811000000       1.5571000000       0.8332000000 
N            0.7621000000       1.4808500000       0.8412500000 
C            0.8239500000       1.4481000000       0.8149000000 
H            0.8233000000       1.4523500000       0.7595500000 
H            0.8700000000       1.4686000000       0.8383500000 
C            0.7235500000       1.4363500000       0.8845000000 
H            0.6814000000       1.4180500000       0.8561000000 
C            0.7766000000       1.3802500000       0.8992500000 
H            0.7567500000       1.3310000000       0.9156000000 
H            0.8083000000       1.4048000000       0.9377000000 
C            0.8165000000       1.3747000000       0.8352500000 
H            0.8635500000       1.3452500000       0.8344000000 
H            0.7877500000       1.3481000000       0.7958500000 
C            0.6939500000       1.4610000000       0.9520000000 
O            0.7159500000       1.5125500000       0.9786500000 
P            0.7373500000       1.8305000000       0.8972500000 
K_POINTS automatic
2 2 2 0 0 0
CELL_PARAMETERS angstrom
     20.0000000000       0.0000000000       0.0000000000
      0.0000000000      20.0000000000       0.0000000000
      0.0000000000       0.0000000000      20.0000000000

Edit: A template input file has been added to the answer.

$\endgroup$
2
  • 1
    $\begingroup$ How can we open .xyz file using PWgui? I can only find the option of opening existing PWscf files using PWgui. QE input generatorcan take .xyz file as an input though. Only the lattice vectors are needed. $\endgroup$ Commented Mar 19 at 7:44
  • $\begingroup$ Start by creating a new input file, and when you reach the section of coordinates you can import coordinates from file. $\endgroup$ Commented Mar 19 at 12:05

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .