VMD-L Mailing List
From: Hyundeok Song (songhk_at_email.uc.edu)
Date: Tue Jun 02 2009 - 14:05:59 CDT
- Next message: Thomas Evangelidis: "Re: adding atoms to empty molecules"
- Previous message: John Stone: "Re: vmd 1.8.7 - problems loading vmd state file"
- Maybe in reply to: John Stone: "Re: VMD HOLE Result"
- Next in thread: daniel aguayo: "Re: VMD HOLE Result"
- Reply: daniel aguayo: "Re: VMD HOLE Result"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]
Dear John Stone, thanks for your comment.
Dear Daniel Aguayo V.
Thanks for your script. That was helpful.
I got almost same graphs by two methods (HOLE program, VMD HOLE script). I slightly modified VMD hole.tcl as follows. (like Daniel)
set result [exec "$holebin" "<< $str"]
--> set result [exec "$holebin" "<< $str >> hole.log"]
added following scripts:
set archiv [open hole_test.log w]
# return $sortdata
puts $archiv "$result"
close $archiv
$vmd -dispdev text -e run_hole.vmd
output: hole_test.log
then plot from hole_test.log
I think I can also apply it through many time frames like Daniel. I appreciate it.
hyun.
---- Original message ----
>Date: Tue, 2 Jun 2009 11:09:27 -0400
>From: daniel aguayo <bioquimico_at_gmail.com>
>Subject: Re: vmd-l: VMD HOLE Result
>To: Hyundeok Song <songhk_at_email.uc.edu>
>
> Dear Hyundeok Song
>
> Attached here y sent you a script to run HOLE
> over a trajectory. You must be carefull to have
> aligned your structure to keep the
> vector channel constant (with not tilt).
>
> My best
>
> Daniel Aguayo V.
> Center for Bioinformatics and Molecular Simulations
> Talca University
> Chile
>
> proc hole_over_time {} {
> # Customize the following lines to set the
> paths to the hole executable and
> # the radius file.
> set holebin /usr/local/lib/hole/hole2/exe/hole
> set holerad
> /usr/local/lib/hole/hole2/rad/simple.rad
> set sph_process
> /usr/local/lib/hole/hole2/exe/sph_process
> set sos_triangle
> /usr/local/lib/hole/hole2/exe/sos_triangle
> set tmp /tmp
> # Customize the following to set default
> values. See the runhole
> # comments for what these parameters do.
> #cvect vector en poro, cpoint punto en poro
> set cvect [list -1 1 1]
> set cpoint [list -6 5 10]
> set sample 0.5
> set endrad 15.
> set mol top
> #variable sel 1
> # use frame 0 for the reference
> set num_steps [molinfo $mol get
> numframes]
>
> #loop over all frames in the trajectory
>
> for {set frame 0} {$frame < $num_steps} {incr frame}
> {
> puts "Calculando hole $frame "
> set sphpdb outputhole_$frame.sph
> set pltout outputhole_$frame.qpt
>
>
> # write coordinates to files
> puts $mol
> set sel [atomselect $mol "protein" frame $frame]
> set pdb tmpholeinputfiles_$frame.pdb
> $sel writepdb $pdb
>
> # construct HOLE input string
> set str "\ncoord $pdb\n"
> append str "radius $holerad\n"
> append str "cvect $cvect\n"
> append str "cpoint $cpoint\n"
> append str "sample $sample\n"
> append str "endrad $endrad\n"
> append str "sphpdb $sphpdb\n"
> append str "pltout $pltout\n"
> # set str2 "-dotden 15 -colour -sos outputhole.sph
> hole.sos"
> # Call HOLE and collect output
> puts "Calling HOLE..."
>
> puts "$holebin $str "
> flush stdout
> set result [exec "$holebin" "<< $str >>
> hole.log"]
>
> #capturando archivos de salida
> set rawdata [list]
> set lines [split $result \n]
> set n [llength $lines]
> set archiv [open hole_$frame.log w]
> set archiv2 [open hole_residuos_$frame.log w]
> for { set i 0 } { $i < $n } { incr i } {
> set line [lindex $lines $i]
> if { [string first highest $line] != -1 } {
> incr i
> foreach { at point x y z } [lindex $lines
> $i] { break }
> incr i
> set line [lindex $lines $i]
> set r [string trim [string range $line 22
> 30]]
> set aname [string trim [string range
> $line 31 37]]
> set resname [string trim [string range
> $line 38 40]]
> set resid [string trim [string range
> $line 44 end]]
> lappend rawdata [list $z $r $resname
> $resid]
> }
> }
> set sortdata [lsort -real -index 0 $rawdata]
> #return $sortdata
> puts $archiv "$result"
> puts $archiv2 "$sortdata"
> close $archiv
> close $archiv2
>
>
> # fin loop por frame
> }
>
> }
>
> On Tue, Jun 2, 2009 at 9:49 AM, Hyundeok Song
> <songhk_at_email.uc.edu> wrote:
>
> Dear VMD users
>
> I have a question about the result from VMD HOLE
> script.
>
> I calculated the coordinate vs channel radius of
> Gramicidin by two methods (HOLE program and
> VMD-HOLE script)
> But two results are not same. ( very different )
>
> I prefer to use VMD HOLE script than HOLE program
> because I need it through many time frames.
>
> If someone has already done this by VMD HOLE
> script, could you explain this? Do I miss
> something?
> Any comments and suggestions are welcome.
> Thanks.
>
> hyun.
>
> 1) by HOLE program (used example file of HOLE)
> input: 01_1grm_single.pdb,01_example.inp,
> $ hole2 < 01_example.inp > 01_example.log
>
> output: 01_example.log, example.qpt, example.sph
> And then plot from 01_example.log
>
> 2) by VMD - HOLE script
> input: hole.tcl, run_hole.vmd
> $ vmd -dispdev text -e run_hole.vmd > run_hole.log
>
> output: run_hole.log, tmpholeinputfiles.pdb
> And then plot from run_hole.log
>
> --- run_hole.vmd ---
> source hole.tcl
> mol load pdb 01_1grm_single.pdb
> set sel [atomselect top all]
> Hole::runhole $sel
>
> exit
> ---------------------
>
> --
> saludos desde el fin del mundo
- Next message: Thomas Evangelidis: "Re: adding atoms to empty molecules"
- Previous message: John Stone: "Re: vmd 1.8.7 - problems loading vmd state file"
- Maybe in reply to: John Stone: "Re: VMD HOLE Result"
- Next in thread: daniel aguayo: "Re: VMD HOLE Result"
- Reply: daniel aguayo: "Re: VMD HOLE Result"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ] [ attachment ]