• PROSS程序设计


    需要提前准备resfile和pssm文件

    首先生成.cst文件: make_csts.sh <input_pdb> >output_filename
    make_csts.sh input_example.pdb >example.cst
    
    • 1
    第二步,生成约束文件

    准备文件:refine.flags, refine.xml, example.cst(这个是上一步生成的)
    refine.flags:

    -use_input_sc
    -extrachi_cutoff 5
    -in:ignore_unrecognized_res
    -chemical:exclude_patches LowerDNA UpperDNA Cterm_amidation SpecialRotamer VirtualBB ShoveBB VirtualDNAPhosphate VirtualNTerm CTermConnect sc_orbitals pro_hydroxylated_case1 pro_hydroxylated_case2 ser_phosphorylated thr_phosphorylated tyr_phosphorylated tyr_sulfated lys_dimethylated lys_monomethylated lys_trimethylated lys_acetylated glu_carboxylated cys_acetylated tyr_diiodinated N_acetylated C_methylamidated MethylatedProteinCterm
    -linmem_ig 10 
    -ignore_zero_occupancy false 
    -s input_example.pdb # path to structure file 
    -out:path:pdb pdbs/ 
    -out:path:score scores/ 
    -parser:protocol refine.xml 
    -parser:script_vars res_to_fix=1A,2A,3A,4A # comma separated list of positions 
    -parser:script_vars cst_full_path=example.cst # path to Rosetta CST file of CA atoms
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    注意:(1)需要手动在此目录下创建两个文件夹(pdbs,scores)
               (2)修改对应的xml,cst以及pdb名称。
    refine.xml

    <ROSETTASCRIPTS>
    	<SCOREFXNS>
    		<ScoreFunction name="ref_full" weights="ref2015" >
                <Reweight scoretype="coordinate_constraint" weight="0.1" />
                <Reweight scoretype="res_type_constraint" weight="0.1" />
            </ScoreFunction>
            <ScoreFunction name="soft_rep_full" weights="soft_rep" >
                <Reweight scoretype="coordinate_constraint" weight="0.1" />
                <Reweight scoretype="res_type_constraint" weight="0.1" />
            </ScoreFunction>
            <ScoreFunction name="ref_no_pssm" weights="ref2015" >
                <Reweight scoretype="coordinate_constraint" weight="0.1" />
            </ScoreFunction>
            <ScoreFunction name="ref_pure" weights="ref2015"/>
    	</SCOREFXNS>
        <RESIDUE_SELECTORS>
            <Index name="ress_fix" resnums="%%res_to_fix%%"/>
        </RESIDUE_SELECTORS>
    	<TASKOPERATIONS>
            <InitializeFromCommandline name="init"/>
            <RestrictToRepacking name="rtr"/>
            <OperateOnResidueSubset name="fix_res" selector="ress_fix">
                <PreventRepackingRLT/>
            </OperateOnResidueSubset>
            <OperateOnResidueSubset name="not_to_cst_sc">
                <Not selector="ress_fix"/>
                <PreventRepackingRLT/>
            </OperateOnResidueSubset>
        </TASKOPERATIONS>
    
    	<MOVERS>
            <AtomCoordinateCstMover name="fix_res_sc_cst" coord_dev="0.5" bounded="false" sidechain="true" task_operations="not_to_cst_sc"/>
            <PackRotamersMover name="soft_repack" scorefxn="soft_rep_full" task_operations="init,rtr,fix_res"/>
            <PackRotamersMover name="hard_repack" scorefxn="ref_full" task_operations="init,rtr,fix_res"/>
            <RotamerTrialsMinMover name="RTmin" scorefxn="ref_full" task_operations="init,rtr,fix_res"/>
            <TaskAwareMinMover name="soft_min" scorefxn="soft_rep_full" chi="1" bb="1" jump="0" task_operations="init,fix_res"/>
            <TaskAwareMinMover name="hard_min" scorefxn="ref_full" chi="1" bb="1" jump="0" task_operations="init,fix_res"/>
            <ConstraintSetMover name="add_CA_cst" cst_file="%%cst_full_path%%"/>
            
            
    
            <ParsedProtocol name="refinement_block">
                <Add mover_name="soft_repack"/>
                <Add mover_name="soft_min"/>
                <Add mover_name="soft_repack"/>
                <Add mover_name="hard_min"/>
                <Add mover_name="hard_repack"/>
                <Add mover_name="hard_min"/>
                <Add mover_name="hard_repack"/>
                <Add mover_name="RTmin"/>
                <Add mover_name="RTmin"/>
                <Add mover_name="hard_min"/>
              
            </ParsedProtocol>
            <LoopOver name="iter4" mover_name="refinement_block" iterations="4"/>
    	</MOVERS>
        <FILTERS>
            <ScoreType name="stability_score_full" scorefxn="ref_full" score_type="total_score" confidence="0" threshold="0"/>
            <ScoreType name="stability_without_pssm" scorefxn="ref_no_pssm" score_type="total_score" confidence="0" threshold="0"/>
            <ScoreType name="stability_pure" scorefxn="ref_pure" score_type="total_score" confidence="0" threshold="0"/>
            <Rmsd name="rmsd" confidence="0"/>
            <Time name="timer"/>
        </FILTERS>
        
    	<PROTOCOLS>
            <Add filter_name="timer"/>
    		<Add mover_name="add_CA_cst"/>
            <Add mover_name="fix_res_sc_cst"/>
            <Add mover_name="iter4"/>
            <Add filter_name="stability_score_full"/>
            <Add filter_name="stability_without_pssm"/>
            <Add filter_name="stability_pure"/>
            <Add filter_name="rmsd"/>
            <Add filter_name="timer"/>
    	</PROTOCOLS>
        
        <OUTPUT scorefxn="ref_full"/>
    </ROSETTASCRIPTS>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79

    接下来输入命令

    /home/unbuntu/rosetta2019/main/source/bin/rosetta_scripts.default.linuxgccrelease -database /home/unbuntu/rosetta2019/main/database/ -in:file:s input_example.pdb -parser:protocol refine.xml -parser:script_vars res_to_fix=1A,2A,3A,4A -parser:script_vars pdb_reference=input_example.pdb -parser:script_vars cst_full_path=example.cst -parser:script_vars cst_value=0.4 @refine.flags -overwrite
    
    • 1

    pdbs文件夹里会生成一个input_example_0001.pdb文件,scores生成score.sc文件

    Command line variables

    1. path_to_db: path to rosetta database
    2. input_pdb: the input structure/model in pdb formant only
    3. fix_list: a list (number and chain) of all residues to restrict to minimization separated by commas. Hypothetical Example: 1A,2A,3A,4A
    4. cst_file: a file with the input coordinates of all CA atoms in the input_pdb. see example.cst and use make_csts.sh to make one.
    5. cst_val: the coordinate constraint weight in the score function. PROSS default is 0.4

    运行design

    准备design.xml文件

    <ROSETTASCRIPTS>
    
        <SCOREFXNS>
    		<ScoreFunction name="talaris_full" weights="talaris2014">
    			<Reweight scoretype="coordinate_constraint" weight="%%cst_value%%"/>
                <Reweight scoretype="res_type_constraint" weight="0.4"/>
    		</ScoreFunction>
    
    		<ScoreFunction name="soft_rep_full" weights="soft_rep">
    			<Reweight scoretype="coordinate_constraint" weight="%%cst_value%%"/>
    			<Reweight scoretype="res_type_constraint" weight="0.4"/>
    		</ScoreFunction>
    
    		<ScoreFunction name="tal_no_pssm" weights="talaris2014">
    			<Reweight scoretype="coordinate_constraint" weight="%%cst_value%%"/>
    		</ScoreFunction>
    
    		<ScoreFunction name="talaris_pure" weights="talaris2014"/>
    	</SCOREFXNS>
    
    	<TASKOPERATIONS>
    		<InitializeFromCommandline name="init"/>
    		<ReadResfile name="read_resfile" filename="%%in_resfile%%"/>
    		<RestrictToRepacking name="rtr"/>
    		<PreventResiduesFromRepacking name="fix_res" reference_pdb_id="%%pdb_reference%%" residues="%%res_to_fix%%"/>
    		<SeqprofConsensus name="pssm_cutoff" filename="%%pssm_full_path%%" min_aa_probability="0"  convert_scores_to_probabilities="0" probability_larger_than_current="0" keep_native="1"/>
    	</TASKOPERATIONS>
    
    	<MOVERS>
            <PackRotamersMover name="soft_design" scorefxn="soft_rep_full" task_operations="init,read_resfile,pssm_cutoff,fix_res"/>
    		<PackRotamersMover name="hard_design" scorefxn="talaris_full" task_operations="init,read_resfile,pssm_cutoff,fix_res"/>
    		<RotamerTrialsMinMover name="RTmin" scorefxn="talaris_full" task_operations="init,rtr,fix_res"/>
            <MinMover name="soft_min" scorefxn="soft_rep_full" chi="1" bb="1" jump="0"/>
    		<MinMover name="hard_min" scorefxn="talaris_full" chi="1" bb="1" jump="0"/>
            <ConstraintSetMover name="add_CA_cst" cst_file="%%cst_full_path%%"/>
    		<FavorSequenceProfile name="FSP" pssm="%%pssm_full_path%%" scaling="none" scorefxns="talaris_full" weight="1"/>
    
     		<ParsedProtocol name="design_block">
    			<Add mover_name="soft_design"/>
    			<Add mover_name="soft_min"/>
    			<Add mover_name="soft_design"/>
    			<Add mover_name="hard_min"/>
    			<Add mover_name="hard_design"/>
    			<Add mover_name="hard_min"/>
    			<Add mover_name="hard_design"/>
    			<Add mover_name="RTmin"/>
    			<Add mover_name="RTmin"/>
    			<Add mover_name="hard_min"/>
    		</ParsedProtocol>
                    <LoopOver iterations="4" mover_name="design_block" name="iter4"/>
    	</MOVERS>
    
    	<FILTERS>
    		<ScoreType confidence="0" name="stability_score_full" score_type="total_score" scorefxn="talaris_full" threshold="0"/>
    		<ScoreType confidence="0" name="stability_without_pssm" score_type="total_score" scorefxn="tal_no_pssm" threshold="0"/>
    		<ScoreType confidence="0" name="stability_pure" score_type="total_score" scorefxn="talaris_pure" threshold="0"/>
    		<Rmsd confidence="0" name="rmsd"/>
    		<Time name="timer"/>
    	</FILTERS>
    
    
    	<PROTOCOLS>
            <Add filter_name="timer"/>
    		<Add mover_name="add_CA_cst"/>
    		<Add mover_name="FSP"/>
    		<Add mover_name="iter4"/>
    		<Add filter_name="stability_score_full"/>
            <Add filter_name="stability_without_pssm"/>
            <Add filter_name="stability_pure"/>
    		<Add filter_name="rmsd"/>
    		<Add filter_name="timer"/>
    	</PROTOCOLS>
    
    </ROSETTASCRIPTS>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75

    flag文件

    -ex1
    -ex2
    -use_input_sc
    -extrachi_cutoff 5
    -ignore_unrecognized_res
    -use_occurrence_data
    #-corrections::correct
    #-corrections::score:no_his_his_pairE
    -chemical:exclude_patches LowerDNA  UpperDNA Cterm_amidation SpecialRotamer VirtualBB ShoveBB VirtualDNAPhosphate VirtualNTerm CTermConnect sc_orbitals pro_hydroxylated_case1 pro_hydroxylated_case2 ser_phosphorylated thr_phosphorylated  tyr_phosphorylated tyr_sulfated lys_dimethylated lys_monomethylated  lys_trimethylated lys_acetylated glu_carboxylated cys_acetylated tyr_diiodinated N_acetylated C_methylamidated MethylatedProteinCterm
    #-output_virtual
    -linmem_ig 10
    -ignore_zero_occupancy false
    
    #-out:path:pdb pdbs/
    #-out:path:score scores/
    -restore_talaris_behavior true
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    运行命令

    结束会生成input_example_0001_0001.pdb和score.sc文件

    /home/unbuntu/rosetta2019/main/source/bin/rosetta_scripts.default.linuxgccrelease -database /home/unbuntu/rosetta2019/main/database/ -in:file:s pdbs/input_example_0001.pdb -parser:protocol design.xml -parser:script_vars in_resfile=resfiles -parser:script_vars res_to_fix=1A,2A,3A,4A -parser:script_vars pdb_reference=pdbs/input_example_0001.pdb -parser:script_vars cst_full_path=example.cst -parser:script_vars cst_value=0.4 -parser:script_vars pssm_full_path=example.pssm @flags -overwrite
    
    • 1

    运行filterscan

    准备filterscan.xml文件

    其中relax_mover=min_all删除,一直报错:没有min_all换了whole_min也报错

    <ROSETTASCRIPTS>
        <SCOREFXNS> 
            <ScoreFunction name="scorefxn_full" weights="ref2015"> 
                <Reweight scoretype="coordinate_constraint" weight="0.1"/> 
                <Reweight scoretype="res_type_constraint" weight="0.1"/>
            </ScoreFunction>
        </SCOREFXNS>
        <RESIDUE_SELECTORS> 
           <Index name="ress_fix" resnums="%%res_to_fix%%"/>
        </RESIDUE_SELECTORS>
        <TASKOPERATIONS> 
            <InitializeFromCommandline name="init"/> 
            <DesignAround name="des_around" design_shell="0.1" resnums="%%current_res%%" repack_shell="8.0"/> 
            <SeqprofConsensus name="pssm_cutoff" filename="%%pssm_full_path%%" min_aa_probability="-2" probability_larger_than_current="0" convert_scores_to_probabilities="0" keep_native="1" debug="1" ignore_pose_profile_length_mismatch="0"/> 
            <OperateOnResidueSubset name="fix_res" selector="ress_fix"> 
                <PreventRepackingRLT/>
            </OperateOnResidueSubset>
            <OperateOnResidueSubset name="not_to_cst_sc"> 
                <Not selector="ress_fix"/> 
                <PreventRepackingRLT/> 
            </OperateOnResidueSubset>
        </TASKOPERATIONS>
        <FILTERS> 
            <ScoreType name="stability_score_full" scorefxn="scorefxn_full" score_type="total_score" threshold="0.0"/> 
            <Delta name="delta_score_full" filter="stability_score_full" upper="1" lower="0" range="0.5"/> 
            <FilterScan name="filter_scan" scorefxn="scorefxn_full" keep_native="1" task_operations="init,des_around,pssm_cutoff,fix_res" delta_filters="delta_score_full" delta="true" resfile_name="resfiles/res_%%current_res%%" report_all="1" delta_filter_thresholds="0.0,0.5,1.0,1.5,2.0,2.5,3.0,3.5,4.0,4.5,5.0,5.5,6.0" score_log_file="scores/res%%current_res%%_score_full.log" dump_pdb="1"/> 
        </FILTERS>
        <MOVERS> 
            <AtomCoordinateCstMover name="fix_res_sc_cst" coord_dev="0.5" bounded="false" sidechain="true" task_operations="not_to_cst_sc"/> 
            <ConstraintSetMover name="add_CA_cst" cst_file="%%cst_full_path%%"/> 
            <FavorSequenceProfile name="FSP" scaling="none" weight="1" pssm="%%pssm_full_path%%" scorefxns="scorefxn_full" /> 
            <MinMover name="whole_min" scorefxn="scorefxn_full" chi="1" bb="1" jump="0"/>
        </MOVERS>
        <PROTOCOLS> 
            <Add mover_name="add_CA_cst"/> 
            <Add mover_name="fix_res_sc_cst"/> 
            <Add mover_name="FSP"/> 
            <Add mover_name="whole_min"/> 
            <Add filter_name="filter_scan"/>
        </PROTOCOLS> 
        <OUTPUT scorefxn="scorefxn_full"/>
    </ROSETTASCRIPTS>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43

    准备filterscan.flags

    -use_input_sc 
    -extrachi_cutoff 5 
    -ignore_unrecognized_res
    -chemical:exclude_patches LowerDNA UpperDNA Cterm_amidation SpecialRotamer VirtualBB ShoveBB VirtualDNAPhosphate VirtualNTerm CTermConnect sc_orbitals pro_hydroxylated_case1 pro_hydroxylated_case2 ser_phosphorylated thr_phosphorylated tyr_phosphorylated tyr_sulfated lys_dimethylated lys_monomethylated lys_trimethylated lys_acetylated glu_carboxylated cys_acetylated tyr_diiodinated N_acetylated C_methylamidated MethylatedProteinCterm
    -linmem_ig 10 
    -ignore_zero_occupancy false 
    -s # path to structure file 
    -out:path:pdb filterpdbs 
    -out:path:score filterscores
    -parser:protocol filterscan.xml 
    -parser:script_vars current_res=1-73A # a position to mutational ddG for 
    -parser:script_vars res_to_fix=1A,2A,3A,4A # comma separated list of positions 
    -parser:script_vars cst_full_path=example.cst # path to Rosetta CST file of CA atoms 
    -parser:script_vars pssm_full_path=example.pssm # path to pssm file
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    /home/unbuntu/rosetta2019/main/source/bin/rosetta_scripts.default.linuxgccrelease -database /home/unbuntu/rosetta2019/main/database/ -in:file:s input_example_0001.pdb -parser:protocol filterscan.xml -parser:script_vars res_to_fix=1A,2A,3A,4A -parser:script_vars pdb_reference=input_example_0001.pdb -parser:script_vars res_to_restrict=10A,11A,12A,13A,14A,15A,16A,17A,18A -parser:script_vars cst_full_path=example.cst -parser:script_vars cst_value=0.4 -parser:script_vars pssm_full_path=example.pssm -parser:script_vars scores_path=scores/ -parser:script_vars resfiles_path=resfiles/ @flags -parser:script_vars current_res=${i} -overwrite
    
    • 1

    创建两个文件夹filterscanpdbs和filterscanscores,生成的文件会放入对应文件夹。
    运行命令:

    /home/unbuntu/rosetta2019/main/source/bin/rosetta_scripts.default.linuxgccrelease -database /home/unbuntu/rosetta2019/main/database/ -in:file:s pdbs/input_example_0001.pdb -parser:protocol filterscan.xml -parser:script_vars res_to_fix=1A,2A,3A,4A -parser:script_vars pdb_reference=pdbs/input_example_0001.pdb -parser:script_vars res_to_restrict=10A,11A,12A,13A,14A,15A,16A,17A,18A -parser:script_vars cst_full_path=example.cst -parser:script_vars cst_value=0.4 -parser:script_vars pssm_full_path=example.pssm -parser:script_vars scores_path=scores/ -parser:script_vars resfiles_path=resfiles/ @filterscan.flags -parser:script_vars current_res=1-73A -overwrite
    
    • 1

    其中current_res=1-73A参数,不确定是不是填序列长度。
    current_res=${i}
    i - the residue number (this script is for a single residue. you need to run it for every residue)

  • 相关阅读:
    云原生 | Kubernetes - Helm - Prometheus 实现资源限制
    四川古力未来科技抖音小店:科技新宠,购物新体验
    广播风暴、STP生成树协议 ,根桥(根交换机)、备份根桥、非根交换机、根端口、指定端口、非根非指定端口、桥ID
    滑动窗口滤波
    一文详解最大重复子串
    python----破解数据库密码(不需要重启数据库以覆盖的形式)
    服装行业数字化改革及未来趋势
    平面设计实验二 相册的制作与图层
    FPGA设计时序约束三、设置时钟组set_clock_groups
    【Linux】第九章 动态库和静态库(生成原理+生成和使用+动态链接)
  • 原文地址:https://blog.csdn.net/qq_39212193/article/details/125408834