[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[modeller_usage] structural alignment




Dear Modellers,

we are building a dimer model from two dimer templates
one template having 392 residues(1UZG) other having 495 residues(1P58, Calpha coordinates is only available),
Both the templates are of the same protein (E protein, Dengue virus type 2),
want to use the first 392 residues from 1UZG and the last 400-495 from
the 1P58 to build the model of our query sequence.
To make a initial structural alignment of the two templates and we used salign_multiple.py
how to specify the the two chains(A & B) of the two templates to get structurally aligned
in the below script?


===================================================================================================
# Illustrates the SALIGN multiple structure/sequence alignment

log.verbose()
env = environ()
env.io.atom_files_directory = './:../atom_files/'

aln = alignment(env)
for (code, chain) in (('1p58', 'A'), ('1uzg', 'A')):
    mdl = model(env, file=code, model_segment=('FIRST:'+chain, 'LAST:'+chain))
    aln.append_model(mdl, atom_files=code, align_codes=code+chain)

for (weights, write_fit, whole) in (((1., 0., 0., 0., 1., 0.), False, True),
                                    ((1., 0.5, 1., 1., 1., 0.), False, True),
                                    ((1., 1., 1., 1., 1., 0.), True, False)):
    aln.salign(rms_cutoffs=(3.5, 6., 60, 60, 15, 60, 60, 60, 60, 60, 60),
               normalize_pp_scores=False,
               rr_file='$(LIB)/as1.sim.mat', overhang=30,
               gap_penalties_1d=(-450, -50),
               gap_penalties_3d=(0, 3), gap_gap_score=0, gap_residue_score=0,
               dendrogram_file='1is3A.tree',
               alignment_type='tree', # If 'progresive', the tree is not
                                      # computed and all structues will be
                                      # aligned sequentially to the first
               #ext_tree=True,        # Tree building can be avoided if the tree
                                      # is input
               #input_weights_file='1is3A_exmat.mtx',
               feature_weights=weights, # For a multiple sequence alignment only
                                        # the first feature needs to be non-zero
               improve_alignment=True, fit=True, write_fit=write_fit,
               write_whole_pdb=whole, output='ALIGNMENT QUALITY')

aln.write(file='1p58-1uzgABnew3.pap', alignment_format='PAP')
aln.write(file='1p58-1uzgABnew3.ali', alignment_format='PIR')

# The number of equivalent positions at different RMS_CUTOFF values can be
# computed by changing the RMS value and keeping all feature weights = 0
aln.salign(rms_cutoffs=(1.0, 6., 60, 60, 15, 60, 60, 60, 60, 60, 60),
           normalize_pp_scores=False, rr_file='$(LIB)/as1.sim.mat', overhang=30,
           gap_penalties_1d=(-450, -50), gap_penalties_3d=(0, 3),
           gap_gap_score=0, gap_residue_score=0, dendrogram_file='1is3A.tree',
           alignment_type='progressive', feature_weights=[0]*6,
           improve_alignment=False, fit=False, write_fit=True,
           write_whole_pdb=False, output='QUALITY')
==========================================================================================================

subsequently are to make a alignment with the query sequence using salign_align2d.py
and build models using mod-def.py or model-fast.py.


Thanks in advance

prabhakar