fragmenstein.mpro package
- class fragmenstein.MProVictor(category: str | None = None, **options)[source]
Bases:
Victor- __init__(category: str | None = None, **options)[source]
Initialise Victor in order to allow either combinations (merging/linking without a given aimed for molecule) or placements (using a given aimed for molecule).
- param hits:
list of rdkit molecules
- param pdb_filename:
file of apo structure
- param pdb_block:
alternative for above: a string of apo structure
- param ligand_resn:
3 letter code or your choice
- param ligand_resi:
Rosetta-style pose(int) or pdb(str)
- param covalent_resn:
only CYS accepted. if smiles has no * it is ignored
- param covalent_resi:
Rosetta-style pose(int) or pdb(str)
- param extra_protein_constraint:
multiline string of constraints relevant to the protein
- param pose_fx:
a function to call with pose to tweak or change something before minimising.
- param monster_random_seed:
a random seed for rdkit Embedding
- param settings:
Not used in base version of Victor
Some arguments can be defined externally:
# These are the default settings for fragmenstein. # To overide please define $FRAGMENSTEIN_SETTINGS as a yaml file. # or pass an environment variable _prior_ to import # e.g. ff_constraint becomes $FRAGMENSTEIN_FF_CONSTRAINT. # These will have priority over the defaults. # Note there are no safeguards against typos. # For the command line interface, see fragmenstein/_cli_defaults.py
# General settings work_path: output monster_average_position: false monster_throw_on_discard: false ff_minisation: true
# During the RDKit minisation, how much lee-way to give an atom before it gets penalised. ff_max_displacement: 0.1
# During the RDKit minisation, how much to penalise an atom that is too far from its ideal position. ff_constraint: 5.
# During the RDKit minisation, how many iterations to run. ff_max_iterations: 200
# During the RDKit minisation, use the neighbourhood to constrain the molecule. ff_use_neighborhood: true ff_neighborhood: 6.0 ff_allow_lax: true ff_prevent_cis: true
# For Wictor, weird things happen if True ff_minimise_ideal: false
# OpenMM settings mm_restraint_k: 1000.0 mm_tolerance: 10.0 # mmu.kilocalorie_per_mole / (mmu.nano * mmu.meter) mm_max_iterations: 0 # 0 is infinite mm_mobile_radius: 8.0 # mmu.angstrom
- constraint_function_type = 'FLAT_HARMONIC'
- place(*args, **options)[source]
Places a followup (smiles) into the protein based upon the hits. Do note that while Monster’s place accepts a mol, while place_smiles a smiles Victor’s place accepts only smiles.
- Parameters:
smiles – smiles of followup, optionally covalent (_e.g._
*CC(=O)CCC)long_name – gets used for filenames so will get corrected
merging_mode
atomnames – an optional dictionary that gets used by
Params.from_smilescustom_map – see Monster.place and Monster.renumber_followup_custom_map
extra_ligand_constraint
- Returns: