一: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')
閱讀更多 翌然小白 的文章