一:automodel函数
automodel(env, alnfile, knowns, sequence, deviation=None, library_schedule=None, csrfile=None, inifile=None, assess_methods=None)
1>alnfile 用于指定模板序列和未知序列的PIR格式的文件。
2> deviation用于指定通过randomize.xyz和randomize.dihedrals产生的总的随机化的值,默认为4埃
3>如果设置了library_schedule需要为automodel.library_schedule设置一个初始值。
4> csrfile参数用于指定限制的文件默认使用系统自带的限制,否则需要用户自己定义一个限制文件。
5>inifile用于指定产生的第一个模型为用户自己提供的,并非自动产生的模型。
6>assess_methods用于指定产生的模型的评价方法,主要有assess.GA341,assess,DOPE,assess.DOPEHR, assess.normalized_dope.
二:environ
environ类包含modeller 环境的许多信息,它是产生其他的类的方法的基础,一些其他的参数也是由environ类提供的。
environ(rand_seed=-8123, restyp_lib_file='$(LIB)/restyp.lib', copy=None)
1> rand_seed 用于产生一个随机的种子值,这个值应该设置到-2- -50000之间
principal_components(matrix_file, file)
用于计算cluster之后的成对的距离矩阵的主成分,matrix_file可以由alignment.id_table(), alignment.compare_sequences(), alignment.compare_structures()命令产生,输出文件可以用ASGL来产生一个主成分图。
system(command)
用于执行系统命令。
三:io_data类
这个类主要用于处理读入的坐标文件。
io_data(copy=None, **kwargs)
io = io_data(hetatm=True)
//Alternatively, you can set parameters in an existing object:
io.hetatm = True
io_data.hetatm 用于设置是否读入"HETATM"记录。
io_data.water, io_data.hydrogen
四:model类
model类包含了所有的构建3D模型的信息,所有的序列类中的方法和属性同样适用于model类。
model(env, **vars)
如果不加任何参数,则创建一个空的新model,如果给定了任何的参数,则这些参数传到model.read()方法中。
build_sequence(sequence,special_patches=None,patch_default=True)
# This demonstrates the use of alignment.append_sequence() and # model.build_sequence() to build residue sequences from one-letter codes from modeller import * env = environ() # Read parameters (needed to build models from internal coordinates) env.libs.topology.read('${LIB}/top_heav.lib') env.libs.parameters.read('${LIB}/par.lib') # Create a new empty alignment and model: aln = alignment(env) mdl = model(env) # Build a model from one-letter codes, and write to a PDB file: mdl.build_sequence("AFVVTDNCIK/CKYTDCVEVC") mdl.write(file='sequence.pdb') # Build an alignment from one-letter codes aln.append_sequence("AF---VVTDN---CIKCK------") aln.append_sequence("-------AFVVTDN--CI--K-CK") # Set alignment information, and write to file: aln[0].code = 'seq1' aln[1].code = 'seq2' aln.write(file='sequence.ali')
build_sequence(sequence, special_patches=None, patch_default=True)build_sequence(sequence, special_patches=None, patch_default=True)build_sequence(sequence, special_patches=None, patch_default=True)build_sequence(sequence, special_patches=None, patch_default=True)build_sequence(sequence, special_patches=None, patch_default=True)build_sequence(sequence, special_patches=None, patch_default=True)
# This demonstrates the use of alignment.append_sequence() and
# model.build_sequence() to build residue sequences from one-letter codes
from modeller import *
env = environ()
# Read parameters (needed to build models from internal coordinates)
env.libs.topology.read('${LIB}/top_heav.lib')
env.libs.parameters.read('${LIB}/par.lib')
# Create a new empty alignment and model:
aln = alignment(env)
mdl = model(env)
# Build a model from one-letter codes, and write to a PDB file:
mdl.build_sequence("AFVVTDNCIK/CKYTDCVEVC")
mdl.write(file='sequence.pdb')
# Build an alignment from one-letter codes
aln.append_sequence("AF---VVTDN---CIKCK------")
aln.append_sequence("-------AFVVTDN--CI--K-CK")
# Set alignment information, and write to file:
aln[0].code = 'seq1'
aln[1].code = 'seq2'
aln.write(file='sequence.ali')