Re: [AMBER] Yet again, MCPB.py for a ferrocene terminated monomer.

From: Gustaf Olsson <gustaf.olsson.lnu.se>
Date: Thu, 12 Aug 2021 14:32:31 +0000

The solution was fairly simply, going through the MCPB.py code och looking at all the errors I aggregated a small yet very prudent piece of information became excruciatingly clear.

The naa_mol2files (and frcmod_files) MUST have the same filename as the molecular abbreviation. If NAAs are FAJ and FAT, then files must be named FAJ.mol2 and FAT.mol2 (as well se FAJ.frcmod and FAT.frcmod?). The residue names are seemingly not pulled from the content of the mol2 files or initial pdb file bur rather the filename.

Step 1 finished, on to problems in step 2!

Best regards
// Gustaf


> On 11 Aug 2021, at 12:02, Gustaf Olsson <gustaf.olsson.lnu.se> wrote:
>
> I managed to access the CSD using a different browser, apparently Chrome did not work correctly. My hope was to try to replicate the example in order to try to figure out what was wrong with my own input.
>
> Sadly, I was unable to reproduce the desired output. I cannot get the files to parse correctly. I manage to run the MCPB.py script for the 1OKL tutorial, this works as intended. Trying to replicate the same behaviour with the FAHYAR01 example, it does not.
>
> How should I generate and treat the structure for the the “mol2” file to be supplied as the "naa-mol2files”? Is it a single unit for all things but the ion, should you prepare for a single unit of repeating units? Antechamber is not able to properly deal with multiple units, I just feel like I’m getting some small piece of information wrong and it is destroying everything down the line.
>
> If I use the complex PDB and use a single residue with all unique atom names and try to run this against a single “subunit” of the complex (one “three-ring” neighbour) it identifies the correct number of atoms for the complex though I ends with an error:
>
> Traceback (most recent call last):
> File "/Users/guolaa/SOFTWARE/amber20/bin/MCPB.py", line 651, in <module>
> gene_model_files(orpdbf, ionids, addres, addbpairs, gname, ff_choice,
> File "/Users/guolaa/SOFTWARE/amber20/lib/python3.9/site-packages/pymsmt/mcpb/gene_model_files.py", line 1906, in gene_model_files
> build_standard_model(mol, reslist, cutoff, msresids, outf, ionids,
> File "/Users/guolaa/SOFTWARE/amber20/lib/python3.9/site-packages/pymsmt/mcpb/gene_model_files.py", line 1471, in build_standard_model
> attype = libdict[resname + '-' + atname][0]
> KeyError: 'FAJ-N3'
>
> I realised that this is because of the unique atom names, otherwise this seems to be working quite well. But it won’t work with duplicate atom names within the same residue so then I need to prepare a mol2 file for the all the repeating units. So, I tried to prepare a mol2 file for the “entire” organic part using antechamber:
>
> This molecule may have more than one unit.
> antechamber can only handle one unit. If the input is a single unit
> then the connectivity is wrong and the geometry may be bad.
> Please convert your molecule to a mol2 file via:
> antechamber -j 5 -at sybyl -dr no
> And then check your molecule with a visualization program;
> manually add missing bonds or delete unwanted bonds as appropriate.
>
> This did not work and I am unable to generate a “multimolecular” mol2 file without the ion using antechamber.
>
> I tried running antechamber on the entire complex WITH the ion, this worked and got me a bit further along the line though in the end failed as well
>
> It contains the residue 1-FAJ as normal.
> Totally there are 67 atoms in the large model.
> Totally there are 290 electrons in the large model.
> Traceback (most recent call last):
> File "/Users/guolaa/SOFTWARE/amber20/bin/MCPB.py", line 651, in <module>
> gene_model_files(orpdbf, ionids, addres, addbpairs, gname, ff_choice,
> File "/Users/guolaa/SOFTWARE/amber20/lib/python3.9/site-packages/pymsmt/mcpb/gene_model_files.py", line 1909, in gene_model_files
> build_large_model(mol, reslist, lmsresids, lmsresace, lmsresnme, lmsresgly,
> File "/Users/guolaa/SOFTWARE/amber20/lib/python3.9/site-packages/pymsmt/mcpb/gene_model_files.py", line 1603, in build_large_model
> write_gau_mkf(outf, gmkf, lgchg, SpinNum, gatms, ionnames,
> File "/Users/guolaa/SOFTWARE/amber20/lib/python3.9/site-packages/pymsmt/mol/gauio.py", line 286, in write_gau_mkf
> chg = int(round(chargedict[ionname], 0))
> KeyError: 'OS'
>
> My conclusion was that I need to use residues (like with AAs in proteins) so I renumbered into three separate residues for the three "identical units" and gave all atoms in these identical atom names. This way I was able to generate a mol2 file for one subunit which should work for all subunits, though this did of course not work either failing with the same error as for my own monomer:
>
> Traceback (most recent call last):
> File "/Users/guolaa/SOFTWARE/amber20/bin/MCPB.py", line 589, in <module>
> raise pymsmtError('%s is required in naa_mol2files but not '
> pymsmt.exp.pymsmtError: FAJ is required in naa_mol2files but not provided.
>
> I cannot figure this out, what is supposed to go in to antechamber preparing the “organic” part of the complex?
>
> With the hope that anyone else has attempted to follow the published examples in the SI of https://pubs.acs.org/doi/10.1021/acs.jcim.5b00674 and had more success then me with the small organometallic example, could you please provide any information that may get me past the first “step” using MCPB.py for something other then a peptide/protein system?
>
> I’m attaching the “full-complex” pdb files with unique atom names and repeating residues with different numbers I prepared.I'm hoping that someone with more experience of MCPB.py could help me run the correct parts through antechamber etc. for a successful execution of MCPB.py -i [file] -o [file] -s 1, only the first step performing no calculations expect bcc with antechamber. Having access the working mol2/frcmod and an input file that executes would really, really help me figure out what I am doing wrong and why my own ferrocene monomer fails.
>
> Best regards
> // Gustaf
>
>
>
>> On 10 Aug 2021, at 15:58, Gustaf Olsson <gustaf.olsson.lnu.se> wrote:
>>
>> After working through the tutorials, reading the MCPB.py paper and trying to replicate examples presented in the supporting information, I am no closer to manage to get MCPB.py to parse my files correctly.
>>
>> I have tried changing and editing most things I could think of, residue names, numbers, adding/removing chain information, using pdb4amber, using AMBER atom types instead of GAFF and more things though still I cannot get MCPB.py to read anything but the FE iron ion.
>>
>> ***Selected Metal ion FE is atom 24 in residue 2-FE
>> ***The following residues are in the Metal Site:
>> Residue 2-FE
>> ***The small model contains the following residues:
>> [2]
>> ***The large model contains the following residues:
>> [2]
>>
>> The only residue found/recognised is 2, the iron ion.
>>
>> I have found indications of people working with ferrocene and MCPB.py (http://archive.ambermd.org/202001/0300.html) and have gotten indications from the developers that it should work and some useful tips. Sadly, as indicated MCPB.py does not seem to parse the files correctly.
>>
>> As time is rapidly running out on producing something at all using this monomer I thought I’d just ask the forum in general for help. Therefore, to this email several files in a zip archive (ferrocene.zip) are attached. The archive contains the following:
>>
>> FE.mol2 The iron ion mol2 file prepared using metalpdb2mol2.py -i FE.pdb -o FE.mol2 -c 2
>> FE.pdb The FE line extracted from the original PDB file (6SG)
>>
>> large.frcmod Antechamber produced FRCMOD file for the “larger” of the unsymmetrical metal binding parts part of the monomer
>> large.mol2 mol2 file produced using antechamber (antechamber -fi pdb -fo mol2 -i large.pdb -o large.mol2 -c bcc -pf y -nc -1)
>> large.pdb The lines containing the “large” portion cut from the “monomer.pdb"
>>
>> monomer.in MCPB.py input file with/without bond information (commented)
>>
>> monomer.pdb The monomer, derived from pdb 6SG, edited and minimised using avogadro to get the correct structure.
>>
>> small.frcmod FRCMOD file for the smaller of the unsymmetrical metal binding parts of the monomer as produced with antechamber
>> small.mol2 mol2 file produced using antechamber (antechamber -fi pdb -fo mol2 -i small.pdb -o small.mol2 -c bcc -pf y -nc -1)
>> small.pdb Lines containing the “small” portion cut from the “monomer.pdb"
>>
>> My hope is that I am just missing something regarding the input, some piece of information somewhere that can get this to work as intended. In the MCPB.py input file are also ion-bond definitions which are commented out as the large/small files are not parsed correctly anyway.
>>
>> Any help getting this to work or a confirmation that this will not work would be greatly appreciated.
>>
>> Best regards
>> // Gustaf
>>
>> <ferrocene.zip>_______________________________________________
>> AMBER mailing list
>> AMBER.ambermd.org
>> http://lists.ambermd.org/mailman/listinfo/amber
>
> <FAJYAR01-1res-uan.pdb><FAJYAR01.pdb>_______________________________________________
> AMBER mailing list
> AMBER.ambermd.org
> http://lists.ambermd.org/mailman/listinfo/amber

_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Thu Aug 12 2021 - 08:00:03 PDT
Custom Search