Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Combine "specify residues to design" and "homooligomer" #122

Open
MiaYang99 opened this issue Jan 8, 2025 · 0 comments
Open

Combine "specify residues to design" and "homooligomer" #122

MiaYang99 opened this issue Jan 8, 2025 · 0 comments

Comments

@MiaYang99
Copy link

Thank you for sharing the code!

I’m relatively new to coding and am currently encountering some issues while running proteinMPNN. I’m trying to run proteinMPNN on a specific region of a homodimer. There are two dimer interfaces, and I want to modify the major TM dimer interface.

I attempted to use the example_4_non_fixed script with an input of two chains. However, the output sequences resulted in different amino acid sequences at the TM domain for each chain, which is not what I want. Alternatively, when using only one monomer as input, I’m unsure if the modified TM domain will still form a dimer with the new sequences. I also tried the example_6 script (homooligomer), but it altered all sequences, including the regions I want to keep fixed.

To address this, I combined the scripts from example_4_non_fixed and example_6. Here’s the combined script I’m currently using:
path_for_parsed_chains=$output_dir"/parsed_pdbs.jsonl"
path_for_assigned_chains=$output_dir"/assigned_pdbs.jsonl"
path_for_fixed_positions=$output_dir"/fixed_pdbs.jsonl"
path_for_tied_positions=$output_dir"/tied_pdbs.jsonl"
chains_to_design="A B"
fixed_positions="....(the residues)"
python ../helper_scripts/parse_multiple_chains.py --input_path=$folder_with_pdbs --output_path=$path_for_parsed_chains
python ../helper_scripts/assign_fixed_chains.py --input_path=$path_for_parsed_chains --output_path=$path_for_assigned_chains --chain_list "$chains_to_design"
python ../helper_scripts/make_fixed_positions_dict.py --input_path=$path_for_parsed_chains --output_path=$path_for_fixed_positions --chain_list "$chains_to_design" --position_list "$fixed_positions"
python ../helper_scripts/make_tied_positions_dict.py --input_path=$path_for_parsed_chains --output_path=$path_for_tied_positions --homooligomer 1
python ../protein_mpnn_run.py
--jsonl_path $path_for_parsed_chains
--chain_id_jsonl $path_for_assigned_chains
--fixed_positions_jsonl $path_for_fixed_positions
--tied_positions_jsonl $path_for_tied_positions
--out_folder $output_dir
--num_seq_per_target 2
--sampling_temp "0.2"
--seed 37
--batch_size 1

The script runs without any error messages, but it doesn’t produce any sequence outputs at the end.

I’m unsure if this combined script is feasible. If it is, could you please advise on how I can modify it to generate the sequence outputs? If it’s not feasible, is there another way to use the "specify residues to design" option together with the "homooligomer" feature?

I greatly appreciate your help—thank you in advance!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant