Привет всем, для программы, над которой я работаю, она использует файлы pdb (банк данных белков) и вычисляет расстояние между всеми атомами друг от друга. У меня есть код, который делает это, однако мои персональные и рабочие компьютеры не имеют достаточной вычислительной мощности для полного выполнения программы без сбоя программы, в которой я ее запускаю (VMD-Visual Molecular Dynamics). Однако у меня есть доступ к суперкомпьютеру, но он запускает только скрипты Perl. Код написан для консоли TK расширения VMD. Есть ли способ, которым я могу использовать perl для выполнения моего кода консоли tk? ниже приведен код:
set seg1 [atomselect top "segname LA0 and name CA"]
set seg2 [atomselect top "segname RA0 and name CA"]
set file [open "Contact_map27.dat" w]
set list1 [$seg1 get index]
set list2 [$seg2 get index]
foreach atom1 $list1 {
foreach atom2 $list2 {
set index1 [atomselect top "index $atom1"]
set index2 [atomselect top "index $atom2"]
set resid1 [[atomselect top "index $atom1"] get resid]
set resid2 [[atomselect top "index $atom2"] get resid]
set resnm1 [[atomselect top "index $atom1"] get resname]
set resnm2 [[atomselect top "index $atom2"] get resname]
puts $file "$resnm1 $resid1 $resnm2 $resid2 [veclength [vecsub [measure center $index1] [measure center $index2]]]"
$index1 delete
$index2 delete
}
}
close $file
Это выполняет вычисления в файле pdb, загруженном в VMD. Любая помощь или предложения будут высоко оценены.