KULL-Centre / CALVADOS

GNU General Public License v3.0
31 stars 5 forks source link

simulate a system with both IDPs and MDPs #13

Open Modk1996 opened 3 hours ago

Modk1996 commented 3 hours ago

I noticed that the provided examples include systems containing only IDPs and systems containing only MDPs, but I want to simulate a system that includes both MDPs and IDPs. How should I modify the prepare.py file?

sobuelow commented 2 hours ago

Hi! You should be able to mix IDPs and MDPs by adding multiple components.add() lines in the prepare.py script:

residues_file = f'{cwd}/input/residues_CALVADOS3.csv'

components = Components(
  molecule_type = 'protein',
  charge_termini = 'both',
  fresidues = residues_file,
)

components.add(name='my_favorite_IDP', nmol=100, restraint=False, ffasta = 'input/fastalib.fasta')
components.add(name='my_favorite_MDP', nmol=100, restraint=True, pdb_folder = f'{cwd}/input', fdomains = f'{cwd}/input/domains.yaml')

The first (IDP) component will be read and built from a sequence fasta file (input/fastalib.fasta), and the second component will read in a PDB in the specified folder pdb_folder (make sure to have the pdb named the same as the component name). The domain boundaries are specified in domains.yaml.

Potentially you have to change the topology to 'grid' rather than 'slab'.