Monday, December 1, 2008
Monday, November 24, 2008
gromacs : coarse grain
download dssp file for protein at :
ftp://ftp.cmbi.kun.nl/pub/molbio/data/dssp/
Tuesday, November 11, 2008
Wednesday, November 5, 2008
compiling tcl hacked on NERSC Franklin(CRAY-XT3)
Problem :
./../unix/tclUnixInit.c
./../unix/tclUnixInit.c: In function 'TclpSetVariables':
./../unix/tclUnixInit.c:536: error: storage size of 'name' isn't known
./../unix/tclUnixInit.c:547: warning: implicit declaration of function 'uname'
./../unix/tclUnixInit.c:536: warning: unused variable 'name'
make: *** [tclUnixInit.o] Error 1
Solution:
Add -DNO_UNAME to your CFLAGS in the Makefile
cd $dir/lib
mv libtcl8.3.so libtcl8.3.a
3d plot error bar in matlab
function [h]=plot3d_errorbars(x, y, z, e)
% this matlab function plots 3d data using the plot3 function
% it adds vertical errorbars to each point symmetric around z
% I experimented a little with creating the standard horizontal hash
% tops the error bars in a 2d plot, but it creates a mess when you rotate
% the plot
%
% x = xaxis, y = yaxis, z = zaxis, e = error value
% create the standard 3d scatterplot
hold off;
h=plot3(x, y, z, '.k');
% looks better with large points
set(h, 'MarkerSize', 25);
hold on
% now draw the vertical errorbar for each point
for i=1:length(x)
xV = [x(i); x(i)];
yV = [y(i); y(i)];
zMin = z(i) + e(i);
zMax = z(i) - e(i);
zV = [zMin, zMax];
% draw vertical error bar
h=plot3(xV, yV, zV, '-k');
set(h, 'LineWidth', 2);
end
Tuesday, November 4, 2008
error
../sysdeps/generic/strtol.c:110: multiple definition of `strtoul'
/u0/b/bingo/tcl/tcl-crayxt3/lib/libtcl8.3.a(strtoul.o)(.text+0x0): first defined here
/usr/bin/ld: Warning: size of symbol `strtoul' changed from 521 in /u0/b/bingo/tcl/tcl-crayxt3/lib/libtcl8.3.a(strtoul.o) to 92 in
/u0/b/bingo/tcl/tcl-crayxt3/lib/libtcl8.3.a(tclUnixPipe.o)(.text+0x104): In function `TclpCreateTempFile':
: warning: the use of `tmpnam' is dangerous, better use `mkstemp'
/u0/b/bingo/tcl/tcl-crayxt3/lib/libtcl8.3.a(tclUnixFile.o)(.text+0xab7): In function `TclpGetCwd':
: warning: the `getwd' function is dangerous and should not be used.
child process exit status 1: /usr/bin/ld
Fatal Error by charmc in directory /u0/b/bingo/DEISA_BENCH/applications/NAMD/tmp/namd_Cray-XT4-HECToR_apoa1_i000006/n32p2t1_t001_i01/src/NAMD_2.6_Source/CRAY-XT3
Monday, November 3, 2008
Tcl ON Mac
http://tcltkaqua.sourceforge.net/
remote access:
system preferece/sharing
Thursday, October 30, 2008
interpolate missing residues in pdb file
2: you can get FASTA file from RCSB PDB(sequence details)
3: use sequence.py to generate .ali files
#################################
import sys
from modeller import *
from modeller.scripts import complete_pdb
# Get the sequence of the 1qg8 PDB file, and write to an alignment file
chain_id = sys.argv[1]
env = environ()
env.io.atom_files_directory = ['.', '../atom_files']
env.libs.topology.read(file='$(LIB)/top_heav.lib')
env.libs.parameters.read(file='$(LIB)/par.lib')
aln = alignment(env)
mdl = model(env)
# read sequence from pdb list
code = 'XXXX'
mdl.read(file=code, model_segment=('FIRST:' + chain_id, 'LAST:' + chain_id))
# add the sequence to the alignment
aln.append_model(mdl, align_codes=code, atom_files=code)
# read complete pdb with missing residue
fasta='XXXX_' + chain_id + '.fasta.txt'
aln.append(file=fasta, alignment_format='FASTA')
# align them by sequence
aln.malign(gap_penalties_1d=(-500, -300))
aln.write(file='chain'+chain_id+'.ali')
#################################
4: use patch.py to add missing residues.
#################################
# insert the missing residues
import sys
from modeller import *
from modeller.automodel import * # Load the automodel class
log.verbose()
env = environ()
# directories for input atom files
env.io.atom_files_directory = ['.', '../atom_files']
chain_id = sys.argv[1]
class MyModel(automodel):
def select_atoms(self):
if chain_id == 'A' :
return selection(self.residue_range('817', '871'))
elif chain_id == 'C' :
return selection(self.residue_range('1', '7'),
self.residue_range('42', '61'),
self.residue_range('424', '431'))
elif chain_id == 'D' :
return selection(self.residue_range('1', '9'))
elif chain_id == 'E' :
return selection(self.residue_range('1', '8'),
self.residue_range('74', '76'))
a = MyModel(env, alnfile = 'chain' + chain_id + '.ali',
knowns = 'chain' + chain_id, sequence = 'chain'+chain_id+'_fill')
a.starting_model= 1
a.ending_model = 1
a.make()
#################################
Tuesday, October 28, 2008
necessary components in protein translocation
Another difference between eukaryotes and prokaryotes is mRNA transport. Because eukaryotic transcription and translation is compartmentally separated, eukaryotic mRNAs must be exported from the nucleus to the cytoplasm. Mature mRNAs are recognized by their processed modifications and then exported through the nuclear pore.
Sunday, October 26, 2008
HOW THE PHOTOCOPIER WORKS
http://www.physics.uoguelph.ca/summer/scor/articles/scor54.htm
Wednesday, October 22, 2008
LDB problem
LDB: LOAD: AVG 4.34903 MAX 4.4356 MSGS: TOTAL 643 MAXC 13 MAXP 8 Refine
(http://www.ks.uiuc.edu/Research/namd/mailing_list/namd-l/2669.html)
Those LDB messages are part of every parallel run and are quite normal.
It's just reporting how the load balancer is doing. In this case, your
maximum load is only slightly more than your average load, and there are
171 total messages being sent between processors, which looks pretty good.
probably due to a compiler bug (a workaround is in 2.6b1).
Align molecule
(http://www.ks.uiuc.edu/Research/namd/tutorial/NCSA2002/hands-on/)
mol delete all
mol load psf pope.psf pdb pope_move.pdb
global popemol
set popemol [molinfo top]
mol load psf protein.psf pdb protein.pdb
display projection orthographic
mol modselect 0 $popemol "name P"
mol modstyle 0 $popemol VDW
puts {
1. Switch to Move Molecule mode by moving the mouse into the graphics
window and pressing the 8 key. The cursor should now have the form
of a cross-hair.
2. While holding down the shift key, click on one of the protein atoms
and drag the mouse. You should see just the protein rotating
around the atom you picked. Try to align the axis of the protein
with an imaginary line coming out of the screen, so that it's
perpendicular to the membrane. If you accidentally rotate the
whole scene instead of just the protein, type "display resetview"
in the text console to get back to the original view.
3. Type "rotate x by -90" in the text console. Now you want to center
the protein between the phosphate atoms of the bilayer. This time,
click and hold on one of the protein atoms _without_ holding down
shift. Move the protein up and down until it's centered.
4. Switch back to the orginal view with "display resetview". If the
protein looks good, you can go on to the next step; otherwise repeat
steps 2 and 3 above.
}
Use pymol to build alpha helix
Build->Residue->aa.
http://www.chem.ucsb.edu/~kalju/CSUPERB/public/pymol_movies.html
Click Mouse Mode to change from viewing to Editing
Easy to modify molecule using pymol(deleting)
**Nov 8**
In the Editing mode, Shift + mouse will move individual molecule.
Reset will move "disappearing molecules" to the screen.
Tuesday, October 21, 2008
making helix using Modeller
MODELLER is used for homology or comparative modeling of protein three-dimensional structures (1,2). The user provides an alignment of a sequence to be modeled with known related structures and MODELLER automatically calculates a model containing all non-hydrogen atoms. MODELLER implements comparative protein structure modeling by satisfaction of spatial restraints (3,4), and can perform many additional tasks, including de novo modeling of loops in protein structures, optimization of various models of protein structure with respect to a flexibly defined objective function, multiple alignment of protein sequences and/or structures, clustering, searching of sequence databases, comparison of protein structures, etc. MODELLER is available for download for most Unix/Linux systems, Windows, and Mac.
Using it, making helix becomes such a simple thing:
http://salilab.org/modeller/wiki/Make%20alpha%20helix
After installation, it's located at ///Library/modeller-9v5
terminal command: mod9v5
Color molecule using electrostatic potential
download the source code.
./configure --prefix=/use/local
make all
sudo make install
2: install pdb2pqr:(http://pdb2pqr.sourceforge.net/userguide.html#introduction)
(wasn't able to find numpy, so pdb2pka is disabled)
./configure --disable-pdb2pka --prefix=/usr/local
make
sudo make install
3: following the instructions on the tutorial
http://137.189.50.96/kbwong/teaching/pymol/pymol_tutorial.html
a. Use PDB2PQR to convert the PDB format to PQR format
> pdb2pqr.py --ff=amber --apbs-in 1w2i_nowat.pdb pymol.pqr
The PQR file will be output to pymol.pqr.
b. Use psize.py to determine the grid dimensions for APBS calculation
> psize.py pymol.pqr
You should be able to see the following results:
Center = 37.468 x 31.798 x 12.177 A
:
:
Coarse grid dims = 53.011 x 58.568 x 65.807 A
Fine grid dims = 51.183 x 54.452 x 58.710 A
Num. fine grid pts. = 97 x 97 x 97
Take a note on these parameters.
c. Edit the apbs.in
You need to enter the following parameters:
cgcent 37.468 31.798 12.177 # Grid Center
fgcent 37.468 31.798 12.177 # Grid Center
cglen 53.011 58.568 65.807 # coarse mesh lengths (A)
fglen 51.183 54.452 58.710 # fine mesh lengths (A)
dime 97 97 97 # Grid Points
d. Run APBS
> apbs apbs.in
After a while, it will create an electrostatics map called "pymol.dx".
just use vmd to import both .pdb and .dx file. Then choose drawing method to be surf, and coloring method to be volume. Then change the color scale data range in Trajectory bar to be like -8.00 to 8.00.
Beautiful plot appeared.!
blue surface : positively charged
red surface : negatively charged
white surface : neutral
Monday, October 20, 2008
Alpha Helix
An å helix has the following features:
- every 3.6 residues make one turn(100 degree, 1.5 A for each residue),
- the distance between two turns is 0.54 nm,
- the C=O (or N-H) of one turn is hydrogen bonded to N-H (or C=O) of the neighboring turn.

ß sheet:

Propensity of amino acid to form a alpha helix(from : Science [0036-8075] BLABER yr:1993 vol:260 iss:5114 pg:1637 -1640)
Sunday, October 19, 2008
stop typing pwd using ssh
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rob/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/rob/.ssh/id_rsa.
Your public key has been saved in /home/rob/.ssh/id_rsa.pub.
The key fingerprint is:
a6:5c:c3:eb:18:94:0b:06:a1:a6:29:58:fa:80:0a:bc rob@localhost
$ ssh server "mkdir .ssh; chmod 0700 .ssh"
$ scp .ssh/id_rsa.pub server:.ssh/authorized_keys2
Thursday, October 16, 2008
easy way of compiling code?
wget \
http://www.deisa.eu/science/benchmarking/files/benchmark_NAMD.tar.gz
gunzip benchmark_NAMD.tar.gz
tar xf benchmark_NAMD.tar
#--- Download NAMD source from http://www.ks.uiuc.edu/Research/namd/
mv NAMD_2.6_Source.tar.gz DEISA_BENCH/applications/NAMD/src/
cd DEISA_BENCH/applications/NAMD/
perl ../../bench/jube -debug bench-Cray-XT4-HECToR.xml

