Monday, November 24, 2008

gromacs : coarse grain

need to prepare water explicitly
download dssp file for protein at :
ftp://ftp.cmbi.kun.nl/pub/molbio/data/dssp/

Tuesday, November 11, 2008

-bash: make: command not found(MAC)

Well, you need to download Xcode and install it on your mac.

Wednesday, November 5, 2008

compiling tcl hacked on NERSC Franklin(CRAY-XT3)

./configure --enhable-gcc --disable-load --prefix=$dir

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

http://code.izzid.com/2007/Aug/Matlab_3D_Plot_with_Errorbars/

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

/usr/lib64/libc.a(strtoul.o)(.text+0x0): In function `strtoul':
../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

Never try to screw with your tcl again. If already did, go to the following web, download the package and install it.(Don't try to compile tcl from scratch!!!!)

http://tcltkaqua.sourceforge.net/

remote access:
system preferece/sharing

Thursday, October 30, 2008

interpolate missing residues in pdb file

1: download modeller(http://salilab.org/modeller/wiki/Missing%20residues)
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()
#################################