2010年12月6日 星期一

Environment

1. u can set the perl lib enoment using the perl Using the PERL5LIB
~/.bashrc
{{{
# For perl lib
export PERL5LIB=/home/Andy/GRC/MyProgram/perlLib
}}}
* Look ~/perlLib content
{{{
[Andy@blast2 fasta]$ ls /home/Andy/GRC/MyProgram/perlLib
Init_V1.pm LineFunction_V1.pm
}}}
* Usage perl selft package
{{{
require "Init_V1.pm";
require "LineFunction_V1.pm";

}}}

2010年11月30日 星期二

Bash and bash Programming

1. Stadin using the file
* using the hyphen (-) reresent input file
{{{
cat $RMDEPTHFILE |
# Delete the header and print repeat name and depeth fields
awk '{
if (NR > 1) print ($10, $NF);
}' |
# Using the stadin in symbol mini
TwoColumnsStatistic.pl -
}}}

2010年10月28日 星期四

Cooking Content

---------------------------------------
紅豆湯
a. 紅豆先泡一個晚上
b. 一鍋看比例放水, 在放入電鍋
c. 最後在加糖

-------------------------------------
Lemon juice
a. 一顆 lemon, 一升的水
b. 在放水前先加糖, 使 lemon 和糖 1:1

--------------------------------------
potato 乳酪
0. potato 削皮
a. potato 切丁
b. 放入 microware 大約 6 minutes, 能分成interspre 2 ms
c. 過濾掉水
c. 最後將乳酪片切成小片放入 potato
d. micro 30 second

---------------------------------------
烤 omit
a. 將

2010年10月18日 星期一

key generate SSH

LOOK:
http://plog.longwin.com.tw/post/1/293


1。创建了用户abc
2.#su - abc
3.#mkdir .ssh
4.#chmod 700 .ssh
5.#ssh-keygen -t rsa
6.#cd .ssh
7.#cat ./id_rsa.pub >> authorized_keys
8.#chmod 644 ./authorized_keys

2010年10月12日 星期二

Reference

1. good content
http://www.perlmeme.org/howtos/using_perl/dereferencing.html



2. orielly book
http://oreilly.com/catalog/advperl/excerpt/ch01.html

3. office good
http://perldoc.perl.org/perlref.html

Object

1. network tutourial

http://www.tutorialspoint.com/perl/perl_oo_perl.htm

http://www.perl.com/pub/2001/11/07/ooperl.html

2. book
http://www.tutorialspoint.com/perl/perl_oo_perl.htm

2010年10月11日 星期一

File exist

File Checking

The -e part is the existence test. After that we have a space, followed by the file we want to test. As in the other sections, we could also use a variable to hold the file name:

$neededfile="myfile.cgi";
if (-e $neededfile)
{
#proceed with your code
}


Reference:
http://www.pageresource.com/cgirec/ptut17.htm

2010年10月7日 星期四

BIO

1. MICROBES 微生物
2. plasmid 質體
3. methylobacterium 嗜中溫甲基桿菌 (微生物)
4. methanol 甲醇 (養份)
5. succinate 琥珀酸 (養分)
6. fitness 適應環境的能力 (分析)
7. fitness cost 減少環境適應能力 (分析)
8. transition 過渡, 轉變 (分析)
9. stationary 不變 (分析)
10. heat shock 熱沖擊 (環境變因)
11. formaldehyde 甲醛
12. peroxide 過氧化氫
13. ampicillin 盤尼西林
14. pleiotropic 多效
15. effect 影響
16. phenotype 顯型

Performance

Memory

1. look the memory usage
{{{
[Andy@localhost source]$ free -m
total used free shared buffers cached
Mem: 4038 3631 406 0 248 2219
-/+ buffers/cache: 1163 2875
Swap: 5535 120 5415


}}}




-------------------------------------------
Release cache memory

{{{
I have cleaned the blast2 cache memory from 378G uesed memory to 38G used memory.

The following is the blast2 memory status in processing clean processing:
Original memory status:
Mem: 528654244k total, 377,362,648k used (377G), 151,291,596k free (151G), 56240k buffers
After cleaned chache memory:
Mem: 528654244k total, 38,823,964k used (38G), 489,830,280k free (489G), 3216k buffers

Conclusion:
Data will in cache becuase previous we interrupt some jobs,
we can use sync; echo 3 > /proc/sys/vm/drop_caches command to release cache memory.
there we are 489G free memory.



Solution:
Because most memory is in cache and can release
{{{
[Andy@blast2 Data]$ free -m
total used free shared buffers cached
Mem: 516263 368477 147786 0 54 315990 (315G)
}}}

I refer to the 'google' and type following command:
{{{
[root@blast2 ~]# sync
[root@blast2 ~]# echo 3 > /proc/sys/vm/drop_caches
}}}

Note: Sync is used to synchronize the data in the memory to disk, as some data in disk might be cached in the memory for easy access. Use of sync will prevent any sort of data loss or file system corruption.


Reference:
http://www.linuxforums.org/forum/miscellaneous/29900-release-cache-memory.html


}}}

2010年10月3日 星期日

Edit command

--------------------------------------------------------
1. cut
sample
{{{
hostname | cut -d “.” -f 1
}}}
represent using the dot to seperate, and f mean print filed 1

--------------------------------------------------------
2. list direction
{{{
ls -d */
}}}

--------------------------------------------------------
3. awk
Using the awk to list the filed 1 (start 1) value is 6
{{{
[Andy@localhost summary]$ awk '$1==6' eles | less
}}}

---------------------------------------------------------
4. uniq can reduce the same element in one element.
Becarefully: u need sorting before show single line data, because uniq using the delete method in succive
{{{
file name.dat
[
Andy
Merry
David
Andy
]
[Andy@localhost pracice]$ sort Field.data | uniq -c
2 Andy
1 David
1 Marry

}}}

--------------------------------------------------
sed

* list content
{{{
sed -n '4,$p' 454AllContigs_change.fna.out | less
}}}

* Insert line 1 before as the tilte
{{{
sed -i ''1i tiltle" file
}}}

Substation command
* remove many spaces to a tab
sed 's/\s\s*/\t/g' mean one space and many space to a tab
{{{
[Andy@localhost TestResult]$ cat simpleData
rnd-3_family-30 1 1066 1066 1066.00 1066

cat simpleData | sed 's/\s\s*/\t/g' > ~/Desktop/tmp/
}}}

* change the (number*) to number, and not change the (charcate*) to (character),
becareful the group operator is \(\) and the get is \1
{{{
sed 's/(\([0-9][0-9]*\))/\1/g'
}}}

* list the email
{{{
cat tmp | sed 's/.*<\([a-z.0-9][a-z.0-9]*@..*\)>.*/\1/' | awk '{ print $1","}'
}}}

* sed remove control A
{{{
less Parsed_Blastp_ORF_FGSH_ASP.txt | sed 's/\cA/\t/'
}}}

*sed find the length
{{{
>contig00005 gene=isogroup00001 length=1854
>contig00006 gene=isogroup00001 length=715
>contig00007 gene=isogroup00001 length=773

[Andy@blast2 newbler26_CPU1_cDNA]$ cat 454Isotigs.fna.header | sed 's/.*length=\([0-9]*\).*/\1/'
}}}


Notice:
1. Sed no + quality
2. sed group operation is specail using the \( character \), and get using \1 ... \n
perl is () and $1... $n

Reference:
http://www.panix.com/~elflord/unix/sed.html
------------------------------------------------
awk
final column is RNF
{{{
awk '{print $NF}' consensi.fa.classified.LTR.lengthTable > consensi.fa.classified.LTR.lengthTable.OnlyLength
}}}

------------------------------------------------
split
can split the content of file like lines or size
split -l 1000 file sffix
{{{
split -l 1000 sfile
}}}

--------------------------------------------------
problem The windown file have \r\n generate ^M symbol
we need remove it on comand
{{
head -n 3 AUG.txt | tr -d '^M' | less
}}}
reference:
http://bogdan.org.ua/2009/03/30/linux-how-to-remove-trailing-control-m-carriage-return.html

2010年9月30日 星期四

Termial

1. if terimal have starnge symbol, like you accident show the pic using vi,
$ using the reset

2010年9月29日 星期三

Adobe flash install

1. download install_flash_player_10_linux.tar.gz

2. install the player.so in the mozilla
{{{
[Andy@localhost adobe]$ cp libflashplayer.so ~/.mozilla/plugins/
}}}

2010年9月25日 星期六

Gap Alignment Discuss

0.定義:
2 個字串在某部份分開後, 能得到較好的相似度(比對分數)


1.說明
最簡單的比對是兩個字串作線性的比對, 此是比對只有兩種情形發生 match 與 mismatch,
e.g
CATCCGA alignment CAAAGCGA, 最後是只有兩個字母像似.

CATCCGA
CAAAGCGA
CA******

但是若能使用 gap 則字串就能分開以求得最好的相似度, 但是此時會產生不同 gap 方式, 如
gap 1:
C-A--TCCGA
CAAAG-CAGA
此時有 3 個 gap, 連續的分開算一個

gap 2:
CA---TCCGA
CAAAG-CAGA
有 2 個 gap

gap ....

2. 有 gap 後, 兩字串最像的計分方式;
通常會需要從許多不同分開 gap 字串中, 計算哪一組的分數最高,
已得到兩字串最像的結果.

Score Formula:(計分的方式, 可以據不同的應用或人而定)
if xi and yi is match score is 2,
if xi and yi is not match score is -1,
if this region is gap, the score is -(4 + k), k is the consecutive gap

例如:
gap 1 is
2 - (4+1) + 2 - (4+2) - (4+1) + 2 - 1 = -7
gap 2 is
2 - (4+3) - (4+1) +2 - 1 + 4 = -3

如而最好的字串比對是
CA--TCCGA
CAAAGCAGA score = 3









2. 參考:
Gap Punishment Aligment Problem(DP):

3. 進階閱讀:
affine gap cost -http://homepage.usask.ca/~ctl271/857/affine_gap_penalties.shtml

Online document(Algorithms for SP-optimal multiple alignments): http://lectures.molgen.mpg.de/online_lectures.html

Gap costs for multiple sequence alignment (paper)
Logarithmic gap costs decrease alignment accuracy(paper)

sequencing problem:
http://seqcore.brcf.med.umich.edu/doc/dnaseq/interpret.html

2010年9月23日 星期四

Sorting hash

in Hash
Assuming the hash is ("aaa" => 10, "bbb" => 60, "ccc" => 20)
foreach my $key (sort {$repeatRank{$b} <=> $repeatRank{$a}} (keys (%repeatRank)))
{
print $key $repeatrank{$key}
}

使用 sort( Algorithm Array)
Algorithm is {$repeatRank{$b} <=> $repeatRank{$a}}
1. Hight to lower (decreasmemt)
2. Using the <=> sysmbol represent the number comparsion

Array (keys %repeatRank)
is return the array content

---------------------------------------------

my %hash = (john, 24, mary, 28, david, 22);
my @order = sort { $hash{$a} <=> $hash{$b} } keys %hash;
print @order; # 依序是 david john mary


雖然只有三行程式,不過我們還是應該來解釋一下其中到底發生了甚麼事,否則看起來實在讓人有點頭暈。第一行的問題應該不大,或者說如果你第一行看起來有點吃力,那你可能要先翻回去看看雜湊那一章,至少你應該要懂得怎麼定義一個雜湊,然後指定雜湊的鍵跟值。這裡所用的方式一點也不特別,我們只是用串列來賦值給一個雜湊。最複雜的應該是第二行 (除非你覺得最後一行要印出一個陣列對你而言太過困難),我們先看等號左邊,那裡定義了一個陣列,因為我們希望可以得到一個依照雜湊值排序過的雜湊鍵陣列。這聽來好像不難,讓我們先想像一下,我們該怎麼取得這樣的陣列呢?
首先我們應該先拿到包含所有雜湊鍵的陣列,也就是利用keys這個函式取得的一個陣列。拿到這個陣列之後,我們就可以來進行排序了。排序的重點在於區塊內的那一小段程式。我們還是使用了Perl預設的兩個變數,也就是$a跟$b,分別代表從陣列(keys %hash)拿出來準備比較的兩個數值。部過我們並不是直接對變數$a,$b進行比較,而是以他們為鍵,而取的雜湊值來進行排序


---------------------------------------------
Reference:

perl learn: http://perl.hcchien.org/ch12.html
web teacher: http://devdaily.com/perl/edu/qanda/plqa00016/

2010年9月22日 星期三

RepeatElementCoverageInContigs_v1.pl

#!/usr/bin/perl
# Description:
# Get the column of contig and repeattype in repeatMasker .out file and mapping toi the template coverage profile in the .depth file, and generate the mapping file of the coverage file.
#
# Author: Andy
#
# Input file:
# [0] repeatmasker .out file
# [1] .depth file (from alang)
#
# Output format:
# contig RepeatName Coverage file ...
#
# Output file
# ana.RepeatElementCoverageInContigs_v1.modifyRepeatMaskerOutFile is the fileter header and add the number
# ana.RepeatElementCoverageInContigs_v1.IntegerOutFile is the table integrate data
#
# Sample
# perl RepeatElementCoverageInContigs_v1.pl 454AllContigs_change.fna.out 454AllContigs_change.depth
#
# Time: 2010.09.21


use strict;

die "Error:$0 RepeatMasker.out(file) CoverageFile(.depth) " unless ($#ARGV == 1);


# Open the two file
open (my $maskerOutFile, $ARGV[0]);
open (my $depthFile, $ARGV[1]);
open (my $analysisMaskerOutFile, ">".$ARGV[0].".ana.RepeatElementCoverageInContigs_v1.modifyRepeatMaskerOutFile");
open (my $analysisIntegrateOutFile, ">".$ARGV[0].".ana.RepeatElementCoverageInContigs_v1.IntegerOutFile");

# Filter the maskerOutfile
my ($title, $title2, $space, @lines) = <$maskerOutFile>; # Dsicare the header information for the masker .out file


my $count = 1;
my @statistics = <$depthFile>;

foreach my $line (@lines) {
# Analysis the repeat masker outfile
$line =~ s/^\s+//;
my @token = split (/\s+/, $line);
print $analysisMaskerOutFile "$count\t\t$line";

# Assing need process columns
my ($contigName, $repeatName)=($token[4],$token[9]);# token4 is the contigname name and token9 is the repeat name

# Compare the contigs name to static file
foreach my $statisticLine (@statistics) {
# Print the all columns
if ($statisticLine =~ /^$contigName/ ) {
print $analysisIntegrateOutFile "$count\t$contigName\t$repeatName\t$statisticLine";
}
}# end compare the contigs to statistic file

$count++;
print "." if ($count % 1000 == 0);

} # End for eachc line in MakerOutput file

# End the program close file
close $maskerOutFile;
close $depthFile;
close $analysisIntegrateOutFile;
close $analysisMaskerOutFile;

DNASequenceComplement.pl

{{{
#!/usr/bin/perl
#
# Andy 20100920 reverse the string
#
# Sample:
# echo "ell" | test.pl
# DNASequence.pl DNAFile
#
# out:
# four different sequence
# Original, rever dna,
# Origianl complement, reversa complement


use strict;

# Reverse the contnet
my $DNA = <>;
chomp($DNA);
print ("Original sequence: $DNA\n");

my $reverseDNA = DNAReverse($DNA);
print ("Reverse sequence: $reverseDNA\n");

my $complementDNA = DNAComplement($DNA);
print ("postive complement sequence: $complementDNA\n");

my $reverseComplementDNA = DNAComplement($reverseDNA);
print ("Nagative complement sequence: $reverseComplementDNA");

#=======================================================================
# Need a DNA sequence
# Paramenter:
# DNA sequence as the parameter zero and to reverit
#=========================================================================
sub DNAReverse () {
chomp($_[0]);
my $reverse = reverse($_[0]);
#print "reverse: $reverse\n";
return $reverse;
}



# change the content for
#my $string = "hello Andy";
#print substr($string, 6, 1);

#=====================================================
# Action the DNA complement
# Parameter:
# [0] is the DNA and change to the complement
#
# MEthod:
# A->T,
# T->A,
# G->C,
# C->G
#
# Return
# complement array
#
#================================================================
sub DNAComplement () {
# Declare the hash of chage complemt content
my %complementHash = ("A"=> "T", "T" => "A", "G" => "C", "C" => "G");
#print "hash array $complementHash{'A'}"; # Test OK
# Declare the complement DNA sequence
my $complementDNA;


# Preprocess the parameter
chomp($_[0]);
my $DNA = $_[0];
#print "hash DNA: $DNA\n"; # for deub

# Run the change method
for (my $i = 0; $i < length($DNA); $i++)
{
my $unit = $complementHash{ substr($DNA, $i, 1) };
#print ($unit);
$complementDNA = $complementDNA.$unit;
#print ("complement $complementDNA");

} # end process the complement for string

return $complementDNA;

}


}}}

My Program

ID PrgramName Time Explain
1. DNASequenceComplement.pl 2010.09.20 can look the sequence order, complement

2. RepeatElementCoverageInContigs_v1.pl 10.09.23 can integreate the repeat masker output and depth file in one table

2010年9月16日 星期四

CPAN

說明:
 Perl是一种相当灵活的程序编程语言,现有的许有程序都是使用它进行编程的。它的优点之一就是无需自己编写编码,你就能利用许多增加的模块,创建新的功能。
  
  程序利用这些模块的编码,而程序员就能集中开发编码,无需担心大量的工作量。但是,你必须在Perl程序运行之前安装任何特定的模块。
  
  虽然许多Linux零售商创建了各种Perl模块的RPM软件包,但他们并不为每一个现存的模块创建数据包,除了那些是供应商所要求的。这就是Comprehensive Perl Archive Network (CPAN)的产生的原因。
  
  使用CPAN模块,你就能使用Perl本身安装其它模块。这样做,你就需要你所要安装的模块的名字。比如,你要安装的是Time::HiRes或是DBI模块。具有特色的是,如果你为一个特定的Perl程序查看README文件,它将会列举任何所要求的模块的名字。
  
  使用CPAN,成为根用户,执行以下操作:
  
  # perl -MCPAN -e shell
  
  首次这样做的话,你就必须配置CPAN模块。花一些时间回答它所问的问题;通常情况下,问题按住【Enter】就可。
  
  安装模块的时候,在CPAND的提示下,输入安装和模块的名字。比如:
  
  cpan> install Time::HiRes
  
  这样就对Time::HiRes Perl模块进行了下载,编辑和安装。核查CPAN网站获取有效的CPAN模块的完整列表,。

2010年8月18日 星期三

vi

////////////////////////////////////////////////////////////////////////////
功能:
0. set vi parameter
a. set nowarp = 不換行
b. set nu = show number

1. 取代
:s/patrn/str/cgi搜尋patrn取代str
其中:跟s間必需指定範圍(range)沒設範圍就是游標這行
1,10 表示 1-10行
% 表示整篇
最後cgi
c 表示confirm尋問
g 表示global全部
i 表示ignore不分大小寫
例如:
:%s/\n//g


2. 移動
到第幾個字元??
number + keybale right

3. 整份文件小寫

:%s/.*/\L&/

and in uppercase :

:%s/.*/\U&/
reference:
http://www.lefred.be/?q=node/75
http://unix.t-a-y-l-o-r.com/VBsr.html


4. setting vim
is the home ~/.vimrc
type
{{{
set nowrap
}}}
http://plog.longwin.com.tw/post/1/369


#Reference:
1. http://www.uic.edu/depts/accc/software/unixgeneral/vi101.html
2.

5 Moving

Moving the Cursor
Many commands take number prefixes; for example 5w moves to the right by 5 words.
Type: To Move To:
h one space to the left (also try left arrow)
j one line down (also try down arrow)
k one line up (also try up arrow)
l one space to the right (also try right arrow)
$ end of current line
^ beginning of current line
Enter beginning first word on the next line
G end of file
:n line n; use :0 to move the beginning of the file
w beginning of next word; 5w moves to the beginning of the 5th word to the right
e end of next word
b beginning of previous word
Ctrl-b one page up
Ctrl-f one page down
% the matching (, ), [, ], {, or }
(Press % with your cursor on one of these characters to move your cursor its mate.



2010年8月17日 星期二

CPAN

說明:


//////////////////////////////////////////////////
安裝:
1.
{{{
perl -MCPAN -e shell
}}}
2. ask you problem about the path and some information
//////////////////////////////////
Install a package like List::Compare
{{{
install List::Compare
}}}


Reference:http://www.troubleshooters.com/codecorn/littperl/perlcpan.htm
/////////////////////////////////////////////////

INSTALL EPEL

1. EPEL is the Extra Packages for Enterprise Linux (EPEL) is a volunteer-based community effort from the Fedora project to create a repository of high-quality add-on packages for Red Hat Enterprise Linux (RHEL)



2. you can download it by
> rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm

3. then your reposity will it epel
{{{
[root@localhost yum.repos.d]# pwd
/etc/yum.repos.d
[root@localhost yum.repos.d]# ls
adobe.repo epel.repo sl-debuginfo.repo sl-security.repo
atrpms.repo epel-testing.repo sl-fastbugs.repo sl-srpms.repo
dag.repo sl-contrib.repo sl.repo sl-testing.repo
}}}

////////////////////////////////////////////////
Application:
1. u can download the "ncftp" it is the CPAN the Perl world wide archive of resources
{{{
yum list *ncftp*
yum install
}}}

2. simple use
{{{
ncftp ncftp ftp://ftp.ncbi.nih.gov/toolbox/ncbi_tools++/2010/
(u can use the help to look it)
}}}



///////////////////////////////////////////////////
Reference:
1. epel intro: http://fedoraproject.org/wiki/EPEL
2. epel install: http://www.question-defense.com/2010/01/25/install-ncftp-ncftpget-ncftpput-using-yum-on-centos-linux-server
3.

2010年8月5日 星期四

Network

///////////////////////////
測網路通不通
telnet ip port
ie. telnet www.google.com.tw 80

/////////////////////////
The firwall
{{{
in the /etc/init.d/iptables
}}}

///////////////////////////////
Look the iptble content
{{{
[root@localhost test]# iptables -L -n |
}}}


//////////////////
Look the route information
{{{
[root@localhost rosePC]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.200.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.200.254 0.0.0.0 UG 0 0 0 eth0
}}}

/////////////////////
Look the package
{{{
[root@localhost rosePC]# tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
10:25:07.641993 IP 192.168.200.80.61604 > 239.255.255.250.ws-discovery: UDP, length 993
10:25:07.642419 IP 192.168.200.227.37423 > dns.sinica.edu.tw.domain: 3720+ PTR? 250.255.255.239.in-addr.arpa. (46)
}}}

///////////////////
Look the connection
{{{
[root@localhost rosePC]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 2558/portmap
tcp 0 0 0.0.0.0:657 0.0.0.0:* LISTEN 2595/rpc.statd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2819/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2839/sendmail: acce
tcp 0 0 :::80 :::* LISTEN 8331/httpd
tcp 0 0 :::22 :::* LISTEN 2808/sshd
}}}


//////
查看問題:
http://linux.vbird.org/linux_server/0140networkcommand.php#route

/////
查網卡
ifconfig
{{{
eth0 Link encap:Ethernet HWaddr 00:24:81:95:21:33
inet addr:192.168.200.227 Bcast:192.168.200.255 Mask:255.255.255.0
inet6 addr: fe80::224:81ff:fe95:2133/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5034520 errors:0 dropped:0 overruns:0 frame:0
TX packets:3121901 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2409215406 (2.2 GiB) TX bytes:926613291 (883.6 MiB)
Interrupt:66 Memory:f3000000-f3010000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:6679 errors:0 dropped:0 overruns:0 frame:0
TX packets:6679 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:7561716 (7.2 MiB) TX bytes:7561716 (7.2 MiB)

}}}

軟體管理套件

常用的是 yum 或 rpm

///////////////////////////////////
yum
---------- 搜尋 ----------------
> yum list font*

可找出能安裝的 font 字型
---------- 安裝 -------------------
> yum install fonts-korean.noarch

----------- Stop yumupdate------------
> service yum-updatesd stop

/// rpm

[root@localhost tmp]# rpm -ivh hplip-3.10.6_rhel-5.0.i386.rpm
正在準備… ########################################### [100%]
從 /usr/bin/hpijs 安裝的檔案 hplip-3.10.6-0.i386 與來自套件 hpijs-1.6.7-4.1.el5_2.4.i386 的檔案產生衝突
從 /usr/lib/libhpip.so.0.0.1 安裝的檔案 hplip-3.10.6-0.i386 與來自套件 hpijs-1.6.7-4.1.el5_2.4.i386 的檔案產生衝突
從 /usr/lib/sane/libsane-hpaio.so.1.0.0 安裝的檔案 hplip-3.10.6-0.i386 與來自套件 libsane-hpaio-1.6.7-4.1.el5_2.4.i386 的檔案產生衝突
[root@localhost tmp]# rpm -qc hpijs-1.6.7-4.1.el5_2.4
[root@localhost tmp]# rpm -qd hpijs-1.6.7-4.1.el5_2.4
/usr/share/doc/hpijs-1.6.7/COPYING
[root@localhost tmp]# vim /usr/share/doc/hpijs-1.6.7/COPYING
[root@localhost tmp]# rpm -qpR hplip-3.10.6_rhel-5.0.i386.rpm
/bin/sh
/usr/bin/env
/usr/bin/perl
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1)
libc.so.6(GLIBC_2.1.3)
libc.so.6(GLIBC_2.3)
libcrypto.so.6
libcups.so.2
libdl.so.2
libdl.so.2(GLIBC_2.0)
libdl.so.2(GLIBC_2.1)
libgcc_s.so.1
libgcc_s.so.1(GCC_3.0)
libhpip.so.0
libhpmud.so.0
libjpeg.so.62
libm.so.6
libm.so.6(GLIBC_2.0)
libnetsnmp.so.10
libpthread.so.0
libpthread.so.0(GLIBC_2.0)
libpthread.so.0(GLIBC_2.1)
libpthread.so.0(GLIBC_2.3.2)
libsane-hpaio.so.1
libsane.so.1
libstdc++.so.6
libstdc++.so.6(CXXABI_1.3)
libstdc++.so.6(GLIBCXX_3.4)
libusb-0.1.so.4
perl(Cwd)
perl(Data::Dumper)
perl(IO::Handle)
perl(POSIX)
perl(sigtrap)
perl(strict)
python(abi) = 2.4
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)
[root@localhost tmp]# rpm -ivh --nodeps hplip-3.10.6_rhel-5.0.i386.rpm
正在準備… ########################################### [100%]
從 /usr/bin/hpijs 安裝的檔案 hplip-3.10.6-0.i386 與來自套件 hpijs-1.6.7-4.1.el5_2.4.i386 的檔案產生衝突
從 /usr/lib/libhpip.so.0.0.1 安裝的檔案 hplip-3.10.6-0.i386 與來自套件 hpijs-1.6.7-4.1.el5_2.4.i386 的檔案產生衝突
從 /usr/lib/sane/libsane-hpaio.so.1.0.0 安裝的檔案 hplip-3.10.6-0.i386 與來自套件 libsane-hpaio-1.6.7-4.1.el5_2.4.i386 的檔案產生衝突
[root@localhost tmp]# rpm -ivh --force hplip-3.10.6_rhel-5.0.i386.rpm
正在準備… ########################################### [100%]
1:hplip ########################################### [100%]

2010年8月2日 星期一

pidgin

1. it need the certificate of msn, u can update the pidgin

> yum update pidgin.i386

2010年7月26日 星期一

Terminal and window

1. Terminal: 用 ctrl + alt + F1 to F6
2. window: 用 ctrl + alt + F7

2010年7月23日 星期五

Process

1. basic
顯示目前所有程序, 並對 memory 作排序
ps -e o user,pid,size,cmd | sort -k3 -n -r | more

///////////////////////////////////////
ps report a snapshot of the current processes
///////////////////////////////////////
-e Select all identical
-o userdefine output

command:
KEY LONG DESCRIPTION
c cmd simple name of executable
C pcpu cpu utilization
f flags flags as in long format F field
g pgrp process group ID
G tpgid controlling tty process group ID
j cutime cumulative user time
J cstime cumulative system time
k utime user time
m min_flt number of minor page faults
M maj_flt number of major page faults
n cmin_flt cumulative minor page faults
N cmaj_flt cumulative major page faults
o session session ID
p pid process ID
P ppid parent process ID
r rss resident set size
R resident resident pages
s size memory size in kilobytes
S share amount of shared pages
t tty the device number of the controlling tty
T start_time time process was started
U uid user ID number
u user user name
v vsize total VM size in kB
y priority kernel scheduling priority

/////////////////////////////////////////
sort
//////////////////////////////////////////
-k key
-n number sort
-r reverse


/////////////////////////////////
killall
///////////////////////////////////
說明: 可用程序名稱 刪除程序
like: killall /user/httpd

2010年7月22日 星期四

Time

1. In the java you can use

{{{
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z"); //yyyy-MM-dd HH:mm:ss Z//
Date jobSubmitTime = null;
Date nowTime = new Date();
long timeDifferent = 0;

// Get the job
try {
while (sourceJobIterator.hasNext()) {
logger.info("Enter the resubmit job loop. ");

RecordExpr job = (RecordExpr) sourceJobIterator.next();
logger.info("2");

String jobTime = (new GapJDLParser(job)).getSubmissionTime();
//String jobTime = (new GapJDLParser(job)).get;
logger.info("3");

jobSubmitTime = df.parse(jobTime);

logger.info("4");
logger.info("job: " + (new GapJDLParser(job)).getJobId()
+ ", submit Time: " + jobSubmitTime.getTime()
+ ", current Time: " + nowTime.getTime());


timeDifferent = (nowTime.getTime() - jobSubmitTime.getTime()) / SECONDS_IN_MILLION;
}}}


2. but in sql
{{{
String query = "SELECT b.name,b.vo,b.lsa_host,b.lsa_type,b.lsa_pid,";
query += "b.appid,b.tag,b.nprocs,b.status,";
query += "b.id as jid,b.sub_id,b.qpriority,b.outputs,b.inputs,";
query += "to_char(b.sub_dtime, 'YYYY-MM-DD HH24:MI:SS TZ') as sub_dtime,";
query += "to_char(b.run_dtime, 'YYYY-MM-DD HH24:MI:SS TZ') as run_dtime,";
query += "to_char(b.done_dtime, 'YYYY-MM-DD HH24:MI:SS TZ') as done_dtime,";
query += "b.timeout,b.trial_count,b.retry_reason,";
query += "b.share_user,b.share_vo,b.share_role,";
query += "a.dn as dn,a.email FROM ";
query += "udb_user as a, jdb_jlist as b, udb_gproxy as c ";
query += "WHERE b.id=? AND b.sub_id=? AND a.dn=b.dn";
}}}

SQL: becareful the time is the automatic build
{{{
CREATE TABLE jdb_jgroup (
id character(256) NOT NULL,
dn character(256) NOT NULL,
vo character(32) NOT NULL REFERENCES vo_list(vo),
adv_appid character(32) NOT NULL,
command_name character(256),
status character(32) NOT NULL,
sub_dtime timestamp with time zone DEFAULT now() NOT NULL,
description text,
command_fqcn character(256) NOT NULL,
success_rate double precision DEFAULT 0.0 NOT NULL,
job_count integer DEFAULT 1 NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (dn) REFERENCES udb_user(dn) ON UPDATE CASCADE ON DELETE CASCADE
);
}}}

2010年7月21日 星期三

Eclipse

匯出與匯入一個專案:
1. 匯出: Export -> Gerneral->ArchieveFile -> zip
2. 匯入: Import -> Existing projects into workspace -> select archieve file

PS. Sometimes you need to set the build path:
project -> java build path -> libaray

2010年7月19日 星期一

Script for wms-glite and ant

Hi guys:
I will teach u how to compiler the LCG-WMS-GLITE job,

1. you can enter gap31Sub1ShellRunRequire dir


2. edit net/asgc/gap/core/lsa/lqs/LCG2.java file
> vim net/asgc/gap/core/lsa/lqs/LCG2.java

3. setting the enviroment variable
> export PATH=$PATH:/home/Andy/apache-ant-1.7.1/bin

4. build the project
> ant fw_core.clean
> ant fw_core.build

5. put the jar file to gap-LCG-GLITE project (you can copy the old jar to temportay)
> cp /home/Andy/tmp/sour/gap31Sub1ShellRunRequire/fw_core/dist/gap-lsa-3.1-0.jar /opt/gap-LCG-GLITE/dist/gap-lsa-3.1-0.jar

6. start the gap-lsa
>/etc/init.d/lsaservice-lcg-glite restart

Build a java to class

1. It need many lib, but we use simple to write

cp.sh
{{{
#!/bin/sh

CP=.

for path in $(find /opt/apache-tomcat-5.5.27/webapps/gcp/WEB-INF/lib/ -name *.jar);
do
#echo $path
CP="$CP:$path";
done

#echo $CP;
#CP="$CP:./tmp/code/datawarehouse/";
javac -classpath $CP GapUserInit.java

}}}

2. A comand that to list all data to as a classpath
{{{
[Andy@localhost lib]$ ls | awk '{home = "/home/Andy/Desktop/GRC/Data/TO_Alang_20110222/UniProt/API/uniprotjapi/src"; classpath = classpath ":" home "/" $1; print classpath; }' | less | tail -n 1
}}}

2010年7月17日 星期六

1. ALU
Alu sequence:

1、分布:

散佈於靈長類,老鼠的genomic DNA。人類的基因組中約有30萬分以上的Alu分散在基因組中,全部Alu佔人類基因組中的5﹪。

2、特性:

a、 約150-300bp DNA,為高度重複(highly repetitive)序列。人類genome有長短不一的Alu形成Alu家族,有些短的序列僅10bp類似Alu存在基因之間或intron內部。

b、 通常具有一段AGCT能被限制脢Alu I認定。

c、 隨種類不同,兩端是7-21bp的直接重複。

d、 Alu也是一種逆轉移子,Alu先轉錄成RNA,真核細胞中能也反轉錄脢,能將Alu RNA轉錄成Alu DNA在插入基因組中。Alu本身不會譯出蛋白質。



Reference:
http://brc.se.fju.edu.tw/nobelist/198x/p1983.htm

生物

1. Primate -靈長類
2. caenorhabditis- 線蟲

2010年7月15日 星期四

防駭

//////////////// 檔 port ///////////////////
說明: 使用 socket 底層去檔
1. /etc/hosts.allow 允許誰能近入
{{{
sshd: 140.109.98.0/255.255.255.0, 117.103.108.0/255.255.255.0 127.0.0.1 114.32.22.27
}}}

2. or /etc/hosts.deny
{{{
sshd: ALL
}}}

//////////////// 使用 iptable 去檔 ////////////////////
1. 只允許 140.109.98.0/24 的人進入 ssh
{{{
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -s ! 140.109.98.0/24 -j DROP
}}}

重啟:
{{{
/etc/init.d/iptables restart
}}}

2. 開放允許的 port
/etc/sysconfig/iptables
{{{
# ssh
#-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -s 140.109.98.0/24 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -s 117.103.108.0/24 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -s 127.0.0.1 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -s 114.32.22.27 -j ACCEPT

}}}

crontab

1. write the crontab
crontab -e

2010年7月14日 星期三

java sign

{{{
#!/bin/bash

JAR_DIR=/home/Andy/apache-tomcat-5.5.27/webapps/gcp/jsp/JWS/JarFiles
keyPath=/home/Andy/portal/script/key_bak

openssl pkcs12 -export -chain \
-inkey $keyPath/hostkey.pem \
-in $keyPath/hostcert.pem \
-out $keyPath/host.p12 \
-CApath /etc/grid-security/certificates/ \
-name "vt-004"

mkdir -p tmp

cp -r $JAR_DIR tmp
cd tmp

mkdir -p signed_jar
cp -r $JAR_DIR/* signed_jar

for jar in $(find JarFiles -name *.jar);
do
echo $jar
echo ${jar/JarFiles/signed_jar}
zip -d $jar META-INF/\*
jarsigner -keystore $keyPath/host.p12 -storetype PKCS12 -signedjar ${jar/JarFiles/signed_jar} $jar vt-004 < ../password
done

/bin/cp -rf signed_jar/* /opt/apache-tomcat-5.5.27/webapps/gcp/jsp/JWS/JarFiles

}}}

2010年7月10日 星期六

gcp_refine 使用 xml parser 和 handler 與 java test

//////////////////////////// 說明 /////////////////////////////
此範例的重點是用到 xml parse 的觀念, 而此文件的 parse
選用 DOM 方式來 parse 一份 xml 文件, Parse 的過程是從
root 開始然後列出它的下一層 Node, 此下一層 Node 再列出下一層 Node,
就可以走到每個節點, 而後讀出它們的值.


一份 xml 文件長的像是如下,
每個 Tag 下的內容都可以自己寫出自己要的名稱,
例如: XXX , 可以是 R, AutoDock4...



R


RScript
R description








///////////////////////// 程式///////////////////////////
GcpXMLParser.java :
{{{
package net.asgc.gap.portal.util;

import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class GcpXMLParser {
public final static String FILE_NAME = "gcp.xml";
private Document doc;

public GcpXMLParser() throws ParserConfigurationException, SAXException, IOException {

//Create instance of DocumentBuilderFactory
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
//Get the DocumentBuilder
DocumentBuilder parser = factory.newDocumentBuilder();
//Create blank DOM Document
doc = parser.parse(FILE_NAME);

}

public Map getAppInfo(String appName){
Map appInfo = new HashMap();

NodeList appNameList = doc.getElementsByTagName("appName"); // Get all app Name tage

// for loop to search appName
for(int i = 0; i < appNameList.getLength(); i++){
Node appNameNode = appNameList.item(i);
String name = appNameNode.getTextContent().trim();
System.out.println(name);

if(name.equals(appName)){
System.out.println("haha");

appInfo.put("appName", name);
// Get father to star application root search
Element appNode = (Element)appNameNode.getParentNode();

// Get input field
NodeList inputFilesNodeList = appNode.getElementsByTagName("inputFiles");
for(int j = 0; j < inputFilesNodeList.getLength(); j++){
Node inputFilesNode = inputFilesNodeList.item(i);
NodeList inputNodeList = inputFilesNode.getChildNodes();

// Get Input tag
for(int k = 0; k < inputNodeList.getLength(); k++){
Node inputNode = inputNodeList.item(k);
//System.out.println( "inputNode: " + k + " "+ inputNode.getTextContent());
if(inputNode.getNodeType() == Node.TEXT_NODE)
continue;

Element inputElem = (Element)inputNode;

// Get inptName
NodeList inputNameList = inputElem.getElementsByTagName("inputName");
String inputName = inputNameList.item(0).getTextContent().trim();
System.out.println(inputName);
//System.out.println(inputNameList.getLength());
NodeList descriptionList = inputElem.getElementsByTagName("description");
String description = descriptionList.item(0).getTextContent().trim();
appInfo.put(inputName, description);

}
//System.out.println(inputFilesNode);

}

}

}

return appInfo;

}

public Node getDocumentElement() {
return doc.getDocumentElement();
}

public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException {

GcpXMLParser xmlparse = new GcpXMLParser();


System.out.println(xmlparse.getAppInfo("AutoDock 4"));


}


}




}}}


gcp.xml
{{{



AutoDock 4


Target
Need the *.tar.gz target file consisting of *.maps, *fld, *.xyz, target.pdbqt


Ligand
Need the *.pdbqt file. (i.e ligand.pdbqt)


DPF
Need *.dpf file (Docking Parameter File)





R


RScript
R description




}}}






//////////////////////// 參考 /////////////////////////////
1. Sun java:
Document class
Node class
Element class
NodeList class

2. XML parser tutorial
XML tutorial
DOM XML element

2010年7月4日 星期日

編譯 Phylip 並傳到 Grid

說明:
首先要能 download phylip,
接著 compiler it
then write run.sh to u progam,
final write run.jdl to send to grid.
and check the feedback is the ce enviroment is corrent,
there often have compiler lib problem,
if the make file have solution, you can choose,
otherwise you need to do static bind.


範例:
run.sh
{{{
#!/bin/sh

INPUT=$1
WORK_DIR=`pwd`

compiler() {
PKG=$1
tar xzf $PKG
cd ${PKG%.tar.gz}/src
make install
mv ../exe/* $WORK_DIR
cd $WORK_DIR
rm -rf {PKG%.tar.gz} $PKG
}

run () {
INPUT=$1
./protdist <<-word
$INPUT
Y
word

}

compiler phylip-3.69.tar.gz
run testfile
}}}


run.jdl
{{{
JobType = "Normal";

Executable = "run.sh";
StdOutput = "std.out";
StdError = "std.err";

InputSandBox = {"run.sh", "phylip-3.69.tar.gz", "testfile"};
OutputSandBox = {"std.out", "std.err", "outfile"};
}}}











需要:
1. Bash shell script
2. make

Complier

1. C libaray

glibc:
libc 為連結至 C 主要的函式
libm 数学函数需要用到

2010年7月2日 星期五

書信

4.

本文結束後,再寫上結尾語,如See you (再見)、( With) Best wishes(祝你平安)、Yours always (永遠是你的摯愛)、Yours ever (永遠愛你的)、Your friend (你的友人)、Truly yours (摯友)、Sincerely yours或Yours sincerely或Sincerely (最誠摯的友人)、Love (愛人,避免用在兩個男士間的信件)…等。

注意:
若要針對收信的對象,將結尾語加以區分,則對於比較親密的對方,可 以用Sincerely yours、Yours sincerely或Sincerely;對於一般的朋友可用Your friend;如果是兒女寫給父母,就用Your loving son(daughter);對長輩則寫Respectfully yours,至於生意上的往來就用Faithfully yours。


Best regards,
Andy


參考:
http://home.lsjh.tp.edu.tw/middle/english/handout/b5/01.htm

APPLET

///////////// javaapplet 與 java 溝通 /////////////////////////
1. 說明:
可用 javascript 傳參數到 java applet, 在範例中,

/////////////// 1. 先要 include ///////////////////////


這從 Demo 來, 使用 deployJava.js, 而表示 applet 主要名稱, 和它在的 jstojava.MathApplet, 而 deployJava.runApplet 會作一些 handler, 例如: 幫你 create
applet tag, 最後你可以將參數傳給 java.

//////////////////// 2. 使用 javascript 去呼叫 applet ////////////








2. Reference
sun officer:
http://java.sun.com/docs/books/tutorial/deployment/applet/invokingAppletMethodsFromJavaScript.html

3. 注意:
a. 在建立 math-applet.jnlp, 要用 jar
b. test.html 要放到 bin 下
{{{
[Andy@t-ap188 bin]$ ls
aaa.html applet_InvokingAppletMethodsFromJavaScript.jar jstojava math-applet.jnlp
[Andy@t-ap188 bin]$ pwd
/home/Andy/Desktop/working/JavaAll/ProjectWEB/DMApplet/bin
}}}

JAR

1. Sign a jar file
若目前目錄有個 bin/jstojava 要 sign, 則可用
{{{
jar cvf applet_InvokingAppletMethodsFromJavaScript.jar jstojava
}}}


參考:
http://www.java-samples.com/showtutorial.php?tutorialid=664

2010年7月1日 星期四

Eating

ur mum cooks for me everyday
i will eat leftover lunch from yesterday

Number Type

//////////////////// 說明 /////////////////
1. 在作科學運算時, 會用到科學計號, 在電腦會用 E+n 表示以 10 為底的幕次,
列如: 1.2E-3 為 0.0012
4.782E+4 為 47820



/////////////////// 原始型態 ///////////////
double 範圍從: 4.94065645841246544e-324d to 1.79769313486231570e+308d
float range: 1.40129846432481707e-45 to 3.40282346638528860e+38


/////////////////////// 參考 ////////////////////////
Java Private typ:
http://www.cafeaulait.org/course/week2/02.html


科學計號介紹:
http://163.19.175.248/teacher/math/index.php?load=read&id=21
http://eason982.blogspot.com/2008/06/blog-post.html

Java Type API:
double: http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Double.html
float: http://www.concentric.net/~Ttwang/tech/javafloat.htm

Standard:
IEEE 854: http://en.wikipedia.org/wiki/IEEE_754-2008

Static paramter

1. E-Value
表示比對的統計數量的相似度, 若 e 越小, 則表式此序列越高.


http://bbsc.imb.sinica.edu.tw/blast/docs/newoptions.html
http://www.ncbi.nlm.nih.gov/Education/BLASTinfo/tut1.html

BLAST command

1. balst
command:
[ui01] /home/dhc00/tmp/0701BLAST > ./blastall --help

blastall 2.2.21 arguments:

-p Program Name [String]
-d Database [String]
default = nr
-i Query File [File In]
default = stdin
-e Expectation value (E) [Real]
default = 10.0
-m alignment view options:
0 = pairwise,
1 = query-anchored showing identities,
2 = query-anchored no identities,
3 = flat query-anchored, show identities,
4 = flat query-anchored, no identities,
5 = query-anchored no identities and blunt ends,
6 = flat query-anchored, no identities and blunt ends,
7 = XML Blast output,
8 = tabular,
9 tabular with comment lines
10 ASN, text
11 ASN, binary [Integer]
default = 0
range from 0 to 11
-o BLAST report Output File [File Out] Optional
default = stdout
-F Filter query sequence (DUST with blastn, SEG with others) [String]
default = T
-G Cost to open a gap (-1 invokes default behavior) [Integer]
default = -1
-E Cost to extend a gap (-1 invokes default behavior) [Integer]
default = -1
-X X dropoff value for gapped alignment (in bits) (zero invokes default behavior)
blastn 30, megablast 20, tblastx 0, all others 15 [Integer]
default = 0
-I Show GI's in deflines [T/F]
default = F
-q Penalty for a nucleotide mismatch (blastn only) [Integer]
default = -3
-r Reward for a nucleotide match (blastn only) [Integer]
default = 1
-v Number of database sequences to show one-line descriptions for (V) [Integer]
default = 500
-b Number of database sequence to show alignments for (B) [Integer]
default = 250
-f Threshold for extending hits, default if zero
blastp 11, blastn 0, blastx 12, tblastn 13
tblastx 13, megablast 0 [Real]
default = 0
-g Perform gapped alignment (not available with tblastx) [T/F]
default = T
-Q Query Genetic code to use [Integer]
default = 1
-D DB Genetic code (for tblast[nx] only) [Integer]
default = 1
-a Number of processors to use [Integer]
default = 1
-O SeqAlign file [File Out] Optional
-J Believe the query defline [T/F]
default = F
-M Matrix [String]
default = BLOSUM62
-W Word size, default if zero (blastn 11, megablast 28, all others 3) [Integer]
default = 0
-z Effective length of the database (use zero for the real size) [Real]
default = 0
-K Number of best hits from a region to keep. Off by default.
If used a value of 100 is recommended. Very high values of -v or -b is also suggested [Integer]
default = 0
-P 0 for multiple hit, 1 for single hit (does not apply to blastn) [Integer]
default = 0
-Y Effective length of the search space (use zero for the real size) [Real]
default = 0
-S Query strands to search against database (for blast[nx], and tblastx)
3 is both, 1 is top, 2 is bottom [Integer]
default = 3
-T Produce HTML output [T/F]
default = F
-l Restrict search of database to list of GI's [String] Optional
-U Use lower case filtering of FASTA sequence [T/F] Optional
-y X dropoff value for ungapped extensions in bits (0.0 invokes default behavior)
blastn 20, megablast 10, all others 7 [Real]
default = 0.0
-Z X dropoff value for final gapped alignment in bits (0.0 invokes default behavior)
blastn/megablast 100, tblastx 0, all others 25 [Integer]
default = 0
-R PSI-TBLASTN checkpoint file [File In] Optional
-n MegaBlast search [T/F]
default = F
-L Location on query sequence [String] Optional
-A Multiple Hits window size, default if zero (blastn/megablast 0, all others 40 [Integer]
default = 0
-w Frame shift penalty (OOF algorithm for blastx) [Integer]
default = 0
-t Length of the largest intron allowed in a translated nucleotide sequence when linking multiple distinct alignments. (0 invokes default behavior; a negative value disables linking.) [Integer]
default = 0
-B Number of concatenated queries, for blastn and tblastn [Integer] Optional
default = 0
-V Force use of the legacy BLAST engine [T/F] Optional
default = F
-C Use composition-based score adjustments for blastp or tblastn:
As first character:
D or d: default (equivalent to T)
0 or F or f: no composition-based statistics
2 or T or t: Composition-based score adjustments as in Bioinformatics 21:902-911,
1: Composition-based statistics as in NAR 29:2994-3005, 2001
2005, conditioned on sequence properties
3: Composition-based score adjustment as in Bioinformatics 21:902-911,
2005, unconditionally
For programs other than tblastn, must either be absent or be D, F or 0.
As second character, if first character is equivalent to 1, 2, or 3:
U or u: unified p-value combining alignment p-value and compositional p-value in round 1 only
[String]
default = D
-s Compute locally optimal Smith-Waterman alignments (This option is only
available for gapped tblastn.) [T/F]
default = F



./blastall -p $prog -d $database -i $infile -o $infile.out -e 10

時間

1. 偶爾 once in a while
2.

運動

1. 羽毛球 badminton
2. 桌球 table tennis
3. 跑步 jogging(running)
4. 游泳 swim
5. 球場 court
6. 棒球 baseball
7. 足球 football

2010年6月30日 星期三

JUnit

說明:
使用 Eclipse Junit


範例:
{{{
package test;

import static org.junit.Assert.*;
import org.junit.Test;

import net.asgc.gap.portal.handler.AutoDock4Handler;


public class AutoDockHandlerTest{
AutoDock4Handler ad4 = new AutoDock4Handler();

@Test
public void testAddParam() {
ad4.addParam("targetSEPath", "aaaa");
}

@Test
public void testCheckParameter() {
ad4.addParam("targetSEPath", "aaaa");
ad4.addParam("ligandSEPath", "bbb");
ad4.addParam("dpfSEPath", "ccc");

assertTrue(ad4.checkParameter());
}
}
}}}

2010年6月26日 星期六

日期說法

1. 月份
一月 January JAN
二月 February FEB
三月 March MAR
四月 April APR
五月 May MAY
六月 June JUN
七月 July JUL
八月 August AUG
九月 September SEP
十月 October OCT
十一月 November NOV
十二月 December DEC

2010年6月25日 星期五

小型 Web Demo 專案

說明:
使用 serverlet/jsp/EL 與 MVC 模型, 完成一個抽象的 User Query 應用程式, 並能在
後端作查詢而完成簡單的 job 送出工作.

圖示: 前端- User 要求一個網頁

User
|
Form
|
web.xml
| (par1, par2)
-------------------------
| FormServlet | <----- Role: Controller
| parl, par2 |
--------------------------------
^ | |
| V |
-------- ---------
App. | Applist | <--Model | Form.jsp | view
txt -------- -----------



元件:
Servlet (FormServlet) 目的:
當作控制者, 平衡在 Model 與 View 元件之中, 將參數帶到 Model 並得到 Model 回傳值,當所有的回傳值都準備好了, 就可以給 View 用不同的方式去顯示值. 且 Servlet 不作任何
有關的處理, 相關的處理都交給 Model 層.

Model (AppList) 目的:
Model 就像一般的物件, 主要能提供像作些查詢, 運算等工作, 並能回傳值給 Controller

View (Form.jsp) 目的:
主要顯示值, 而 java 中用 jsp 來完成, 並可用 EL 來完成, 在 java 中要用 jstl.jar Jsp Standard Tag Library(JSTL).

目錄:
[root@t-ap188 Learn]# tree -L 4 .
.
|-- Form.jsp
|-- WEB-INF
| |-- classes
| | |-- controller
| | | |-- FormServlet.class
| | | `-- FormServlet.java
| | `-- model
| | |-- AppList.class
| | |-- AppList.java
| | |-- AutoDock4Handler.class
| | |-- AutoDock4Handler.java
| | |-- BlastHandler.class
| | |-- BlastHandler.java
| | |-- Handler.class
| | |-- Handler.java
| | |-- HandlerFactory.class
| | |-- HandlerFactory.java
| | |-- RHandler.class
| | `-- RHandler.java
| |-- lib
| | `-- jstl.jar
| `-- web.xml
|-- abc.jsp
|-- app.txt
`-- hello.jsp

程式碼:
Controller Package:
FormServlet.java
{{{
package controller;

import java.io.IOException;
import java.util.List;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import model.AppList;

/// bring the parameter and send modle then and finally send resutl to view

public class FormServlet extends HttpServlet {


private static final long serialVersionUID = 1111L;
public static final String SUCCESS_PAGE = "Form.jsp";

public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException, ServletException{

AppList list = new AppList("/opt/apache-tomcat-5.5.27/webapps/Learn/app.txt");
List appList = list.getApps();

req.setAttribute("appList", appList);
RequestDispatcher view = req.getRequestDispatcher(SUCCESS_PAGE);
view.forward(req, resp);
}
}
}}}
使用 doGet 接收參數, 並查出所有 application name, 在傳給 view 作顯示.



/// Model Package ////
*AppList.java
{{{
package model;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class AppList {

List app_list;

public AppList( String file_path ) throws IOException {
BufferedReader br = new BufferedReader(new FileReader(
file_path) );
String app = null;
app_list = new ArrayList();
while ((app = br.readLine()) != null) {
app_list.add(app);
}
}

public List getApps() {
return app_list;
}
}

}}}


/////////// View Level ///////////
* Form.jsp
{{{
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>








}}}
其中會接收 appList 從 servlet 來, 並用 foreach 去取出值放到 app, 在顯示到html.


app.txt
{{{
AutoDock4
R
Blast
}}}

* web.xml
{{{





form_servlet
controller.FormServlet



form_servlet
/Form



}}}


整個文件說明:
1. 學到 Controller/Model/View 的關係建立在互相分工與連結, Controller 當成橋粱, Model 當成 POJO class, View 作 jsp / html 顯示作用.


2. web.xml 定義 servelet 的基本位置和目的.像 servelet mapping 和
使用者可以連結到 https://t-ap188.grid.sinica.edu.tw:8443/Learn/Form
url-pattern 是 /Form 給使用者作網址的,
servlet-class 是要作處理的 class 位置.
{{{

form_servlet
controller.FormServlet



form_servlet
/Form

}}}

3. 學到 java EL 網頁顯示功能, 使用 ${} 當參數, 會從 serverlet 接到 applist會作 app,
且 view 會用到大量 html tag, 如此才像 tag 方式.
{{{



}}}

4. Java web 程式的目錄架構有 WEB-INF.
有 classes lib web.xml
其中 classes 放自己寫的 class 或 servletclass,
而此處 classes 中有 controller 與 model 兩個 package.
而 lib 放程式碼 jar 檔案.

結論:
而這些主要目的是為了讓各層只專注在本身的語法,
概念, 邏輯. 以便為來程式能分層, 且這範例還點出好處, 為來只要在 app.txt
加入新的應用程式, 其它 code 部份不用更動就可完成任務.



//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
圖示: 後端- User 送出一個表格到呼叫底下流程
當使用者將 Request 傳到 abc.jsp

Request
|
---------------
| abc.jsp | <----- 處理者
| |
---------------
|
-----------------
| factor(工廠) | <--- 透過她來產生底下的應用程式處理單元
| |
-----------------
|
------------------
| handler | <----- Model
------------------
| | ......
---- --------
| R | | Blast | <---- Individual application porting to grid
---- ---------


說明: 當一個使用者送出所選擇要執行的應用程式後, 會被傳到 factor 去產生對應的工作
處理者 (RHandler, BlastHandler), 並回傳 Hndler 物件.


程式碼:
abc.jsp
{{{
<%@ page import="model.*"%>



<%
String appName = request.getParameter("appName");
try {
Handler h = HandlerFactory.newInstance(appName);
out.println(h.handle());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
out.println(e);
} catch (InstantiationException e) {
// TODO Auto-generated catch block
out.println(e);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
out.println(e);
}
%>



}}}


HandlerFactor.java (使用 Reflecting 完成工作)
{{{
package model;

public class HandlerFactory {
@SuppressWarnings("unchecked")
public static Handler newInstance(String appName) throws ClassNotFoundException, InstantiationException, IllegalAccessException{
Class c = Class.forName("model." + appName + "Handler");
Handler h = (Handler)c.newInstance();
return h;
}

public static void main(String[] args){
try {
Handler h = HandlerFactory.newInstance(args[0]);
System.out.println(h.handle());
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}}}


Handler.java
{{{
package model;

public interface Handler {
public String handle();
}

}}}

RHandler.java
{{{
package model;

public class RHandler implements Handler{

@Override
public String handle() {
// TODO Auto-generated method stub
return "Submit R job to VQS" ;
}

}
}}}







2010年6月24日 星期四

臺灣旅遊

1. 地名
臺南 - Tainan
澎湖 - Penghu
墾丁 - Kenting
桃園 - Taoyuan

2. 景點
孔廟 - Confucian temple
安平古堡 - Anping Fort


3. 小吃
炸 - Fry
水餃 - Dumpling
咖哩 - curry


4. 交通工具
高鐵 - HSR

Molliza

molliza 3.6 version



========= 目錄 =========
1. 位置在 /usr/lib/firefox-3.6/
{{{
application.ini chrome extensions langpacks plugins run-mozilla.sh
blocklist.xml components firefox LICENSE README.txt searchplugins
browserconfig.properties defaults icons modules removed-files updater.ini
}}}



========= 功能 ===========
----- Plug in for applet -----
1. 在 /usr/lib/firefox-3.6 下建立一個 plugins 資料夾,
然後作 soft link 到 /usr/java/default/jre/lib/i386/libnpjp2.so
{{{
[root@t-ap188 plugins]# ls -l
總計 4
lrwxrwxrwx 1 root root 42 6月 25 11:15 libnpjp2.so -> /usr/java/default/jre/lib/i386/libnpjp2.so

}}}



========= 參考 =================
1. http://wiki.moztw.org/%E8%A8%AD%E5%AE%9A%E6%AA%94%E8%A9%B3%E8%A7%A3

File System

File System

============= 說明 ===================


============= 指令 ===================

--------------- Software link ---------
語法:
{{{
ln -s 連結的檔案 為這連結取名
}}}

例如:
{{{
ln -s /usr/java/default/jre/lib/i386/libnpjp2.so .
}}}

檔案型式:
{{{
[root@t-ap188 ln]# ls -l
總計 4
lrwxrwxrwx 1 root root 42 6月 25 11:25 libnpjp2.so -> /usr/java/default/jre/lib/i386/libnpjp2.so
}}}

說明:
用 Software Link 連結到一個檔案後, 會出現一個指標
指到目的地, 且 file falg 第一個 bit 會有 l 符號, 且指到的為 1

注意:
1. software link 不能作 copy 的運算, 若想 cp 至在那一個地方, 請用 mv.l
否則就會是作實體連結, 而有些 software 只能會用 soft link 不行用 hard link
such as molize plugs in to jre .

2010年6月23日 星期三

2010年6月20日 星期日

JAVA 中取環境變數

1. 在 JAVA 中可用 System.getEnv("envriable");

2. 但是在系統上, 若要設定環境變數要用 export variable
是要 export 才行

原因請看 linux export 定義

自己 JAVA 常見錯誤

1. 看不太懂 exception, 改善方式是要能瞭解每個 exception 實際拋出的地方與錯誤的說明方式.


2. Lib 的連結.

JAVA TEST Script

當你要測式一群 lib 時,
需要一個 script 檔, 幫你link, 因此可以很方便作 migration platform test

{{{{
#!/bin/sh
GAP_HOME=`pwd`/.gap
CP=./
ROOT=/opt/apache-tomcat-5.5.27/webapps/gcp/WEB-INF/lib/

# do the classpath
for path in $(find $ROOT -name *.jar)
do

CP="$CP:$path"

done

# add other lib
CP=$CP:/home/Andy/tmp/apache-tomcat-5.5.27/common/lib/jce-jdk13-131.jar

# because this program need
export GAP_HOME=$GAP_HOME

# run your java
$JAVA_HOME/bin/javac -classpath $CP VQSClientTestBean.java
$JAVA_HOME/bin/java -classpath $CP VQSClientTestBean



}}}

轉換 JAVA version

當你安裝好新的 java 時,
要更換 java 的內容

需要用 alternatives


範例:
alternatives -help
alternatives --install /usr/bin/java java /usr/java/default/bin/java 3
alternatives --config java


by JIM

2010年6月19日 星期六

Ant

1. 說明:



2. 常用命令:
ant targetname<> in build.xml




3. 範例:
I. ant fw_app.build








4. 注意:
1. ant 會 build 整個 java 需要的檔案
2. 有時要會作 clear 動作

///////////////////
Ant 說明
////////////////////
使用 build.xml


/////////////////////////////////////////////
Ant tag
/////////////////////////////////////////////
1. (專案)
說明:
可以定義此 project 相關的設定值
屬性:
name: The ant project name
default: Default want to build target
basedir: You seting this project root path


2. (變數)
說明:
宣告 ant varaible, 在往後可以用 ${name} 取得變數
屬性:
name: Variable name
value: This varaible to value


3.
說明:
一個可以 build 或作其它操作指令的空間區
屬性:
name: 名稱
depends: 其它部份要先執行, 然後才能執行此 target 內容

4.
說明:
印出值在螢幕上

5.
屬性:
file: 要複製的來源檔
tofile: 目的地

6.
說明:
Ant support javac command
屬性:
srcdir: 要 compiler 資料夾
destdir: class 目地
includes: 預設是 compiler all, 但用 include 可以指定要 build file

7.
屬性:
verbose="true" : 是否印出刪除的檔案

8.
說明:
可包括許多檔案
屬性:
dir: set to the directory to file




//////////////////////////////////////////////////
Ant example
/////////////////////////////////////////////////
Simple build a project, compiler the src java to build directroy
to classs
{{{









Doing UKLights



Doing all






}}}


2.一個有 clean, 更多的 depends build, 從 build a file 到 build 更多 depends
{{{









Doing ExitControl





Doing AboutPopup



description="Builds AboutControl">
Doing AboutControl





description="Builds the main UKLights project">
Doing UKLights








Doing all













}}}

2010年6月18日 星期五

MPI 環境

以下列出 在 euaisa 能 run mpi CE:


[ui01] /home/dhc00 > lcg-info --vo euasia --list-ce --query 'Tag=*MPI*' --attrs 'Tag'
- CE: ce1.egee.cesnet.cz:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-Ethernet
MPI-START
MPI_OPENMPI
MPI_SHARED_HOME
OPENMPI
OPENMPI-1.2.5
R-GMA
VO-atlas-BTagging-15.6.8.6.1-i686-slc5-gcc43-opt
VO-atlas-BTagging-15.6.9.8.1-i686-slc5-gcc43-opt
VO-atlas-BTagging-15.6.9.8.2-i686-slc5-gcc43-opt
VO-atlas-JetMetAnalysis-15.6.9.10.1-i686-slc5-gcc43-opt
VO-atlas-TopPhys-15.6.10.4.1-i686-slc5-gcc43-opt
VO-atlas-TopPhys-15.6.8.2.1-i686-slc5-gcc43-opt
VO-atlas-WZBenchmarks-15.6.8.2.2-i686-slc5-gcc43-opt
VO-atlas-WZBenchmarks-15.6.9.3.1-i686-slc5-gcc43-opt
VO-atlas-gcc-x86_64-slc5
VO-atlas-offline-15.5.4-i686-slc4-gcc34-opt
VO-atlas-offline-15.6.1-i686-slc4-gcc34-opt
VO-atlas-offline-15.6.10-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.3-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.5-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.6-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.7-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.8-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.9-i686-slc5-gcc43-opt
VO-atlas-offline-15.8.0-i686-slc5-gcc43-opt
VO-atlas-production-15.6.1.3-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.4-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.5-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.6-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.7-i686-slc4-gcc34-opt
VO-atlas-production-15.6.10.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.10.2-i686-slc5-gcc43-opt
VO-atlas-production-15.6.10.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.10-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.11-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.12-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.13-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.14-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.15-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.17-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.18-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.2-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.9-i686-slc5-gcc43-opt
VO-atlas-production-15.6.5.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.5.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.10-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.11-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.12-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.2-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.9-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.10-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.11-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.12-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.13-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.9-i686-slc5-gcc43-opt
VO-atlas-tier0-15.5.4.10
VO-atlas-wzbenchmarks-15.5.4.1.1-i686-slc4-gcc34-opt
VO-atlas-wzbenchmarks-15.6.5.5.1-i686-slc5-gcc43-opt
VO-auger-offline-v2r5p5-Godot VO-auger-ADST_v5r1p1_Pozzo VO-auger-AugerRequiredSrc-2.1

- CE: ce2.egee.cesnet.cz:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-Ethernet
MPI-START
MPI_OPENMPI
MPI_SHARED_HOME
OPENMPI
OPENMPI-1.2.5
R-GMA
VO-atlas-BTagging-15.6.8.6.1-i686-slc5-gcc43-opt
VO-atlas-BTagging-15.6.9.8.1-i686-slc5-gcc43-opt
VO-atlas-BTagging-15.6.9.8.2-i686-slc5-gcc43-opt
VO-atlas-JetMetAnalysis-15.6.9.10.1-i686-slc5-gcc43-opt
VO-atlas-TopPhys-15.6.10.4.1-i686-slc5-gcc43-opt
VO-atlas-TopPhys-15.6.8.2.1-i686-slc5-gcc43-opt
VO-atlas-WZBenchmarks-15.6.8.2.2-i686-slc5-gcc43-opt
VO-atlas-WZBenchmarks-15.6.9.3.1-i686-slc5-gcc43-opt
VO-atlas-gcc-x86_64-slc5
VO-atlas-offline-15.3.1-i686-slc4-gcc34-opt
VO-atlas-offline-15.5.4-i686-slc4-gcc34-opt
VO-atlas-offline-15.5.5-i686-slc4-gcc34-opt
VO-atlas-offline-15.6.1-i686-slc4-gcc34-opt
VO-atlas-offline-15.6.10-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.3-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.5-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.6-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.7-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.8-i686-slc5-gcc43-opt
VO-atlas-offline-15.6.9-i686-slc5-gcc43-opt
VO-atlas-offline-15.8.0-i686-slc5-gcc43-opt
VO-atlas-production-15.3.1.1-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.2-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.20-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.3-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.4-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.5-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.6-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.7-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.8-i686-slc4-gcc34-opt
VO-atlas-production-15.3.1.9-i686-slc4-gcc34-opt
VO-atlas-production-15.6.0.1-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.2-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.3-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.4-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.5-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.6-i686-slc4-gcc34-opt
VO-atlas-production-15.6.1.7-i686-slc4-gcc34-opt
VO-atlas-production-15.6.10.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.10.2-i686-slc5-gcc43-opt
VO-atlas-production-15.6.10.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.10-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.11-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.12-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.13-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.14-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.15-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.17-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.18-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.2-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.3.9-i686-slc5-gcc43-opt
VO-atlas-production-15.6.5.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.5.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.6.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.7.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.10-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.11-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.12-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.2-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.5-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.8.9-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.1-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.10-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.11-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.12-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.13-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.3-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.4-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.6-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.7-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.8-i686-slc5-gcc43-opt
VO-atlas-production-15.6.9.9-i686-slc5-gcc43-opt
VO-atlas-tier0-15.5.4.10
VO-atlas-wzbenchmarks-15.5.4.1.1-i686-slc4-gcc34-opt
VO-atlas-wzbenchmarks-15.6.5.5.1-i686-slc5-gcc43-opt
VO-auger-offline-v2r5p5-Godot VO-auger-ADST_v5r1p1_Pozzo VO-auger-AugerRequiredSrc-2.1
VO-ops-SAM

- CE: cladonia.geranium.um.edu.my:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-Infiniband
MPI-START
MPI_SHARED_HOME
OPENMPI
OPENMPI-1.4.1
R-GMA
VO-euasia-ECELL-3-1-106
VO-euasia-GATE-4.0.0
VO-euasia-GEANT4-9.1
VO-euasia-GROMACS-MPI-4

- CE: grid012.ct.infn.it:2119/jobmanager-lcglsf-euasia
- Tag CATANIA
CODESA3D-1.0
GATE-1.0.0-3
GLITE-3_0_0
GLITE-3_1_0
INFN
MOLSCRIPT-1.0.2
MPICH
MPICH2
MPICH2_GCC4
MPICH2_INTEL9
MPICH_GCC4
MPICH_INTEL9
MPICH_SH_GCC4
MPICH_SH_INTEL9
MPI_HOME_NOTSHARED
MVAPICH2_GCC4
MVAPICH2_INTEL9
MVAPICH_GCC4
MVAPICH_INTEL9
R-GMA
RASTER3D
SF00MeanPerCPU=2000
SI00MeanPerCPU=2100
VLC-0.7.2
VO-enmr.eu-AMBER10
VO-enmr.eu-CNS1.2-PARA
VO-enmr.eu-GROMACS3.3.3
VO-enmr.eu-NMRPIPE
VO-enmr.eu-ROSETTA
VO-enmr.eu-XPLOR-NIH2.21
VO-eumed-ASTRA
VO-eumed-CSOUND-4.24
VO-lhcb-pilot
VO-ops-SAM

- CE: haitham.biruni.upm.my:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-Infiniband
MPI-START
MPI_SHARED_HOME
OPENMPI
OPENMPI-1.3.3
R-GMA
VO-euasia-GATE-4.0.0
VO-euasia-GEANT4-9.1
VO-euasia-GROMACS-MPI-4
VO-ops-SAM

- CE: infn-ce-01.ct.pi2s2.it:2119/jobmanager-lcglsf-euasia
- Tag ABAQUS-6.7
GLITE-3_1_0
GRISU-COMETA-INFN-CT
IDL-6.4
INFINIBAND-4X
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-START
MPICH
MPICH2_GCC4
MPICH2_INTEL9
MPICH2_PGI706
MPICH_GCC4
MPICH_INTEL9
MPICH_PGI706
MPICH_SH_GCC4
MPICH_SH_INTEL9
MPICH_SH_PGI706
MPI_HOME_NOTSHARED
MPI_NO_SHARED_HOME
MVAPICH
MVAPICH2
MVAPICH2_GCC4
MVAPICH2_INTEL9
MVAPICH2_PGI706
MVAPICH_GCC4
MVAPICH_INTEL9
MVAPICH_PGI706
PI2S2
R-GMA
SF00MeanPerCPU_1999
SI00MeanPerCPU_1606
VO-eumed-ASTRA
VO-matisse-MONITOR-MPICH-SI
VO-matisse-TESTPARDI
VO-matisse-TEST_03_NOV_CAT
i686

- CE: infn-ce-01.ct.pi2s2.it:2119/jobmanager-lcglsf-short
- Tag ABAQUS-6.7
GLITE-3_1_0
GRISU-COMETA-INFN-CT
IDL-6.4
INFINIBAND-4X
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-START
MPICH
MPICH2_GCC4
MPICH2_INTEL9
MPICH2_PGI706
MPICH_GCC4
MPICH_INTEL9
MPICH_PGI706
MPICH_SH_GCC4
MPICH_SH_INTEL9
MPICH_SH_PGI706
MPI_HOME_NOTSHARED
MPI_NO_SHARED_HOME
MVAPICH
MVAPICH2
MVAPICH2_GCC4
MVAPICH2_INTEL9
MVAPICH2_PGI706
MVAPICH_GCC4
MVAPICH_INTEL9
MVAPICH_PGI706
PI2S2
R-GMA
SF00MeanPerCPU_1999
SI00MeanPerCPU_1606
VO-eumed-ASTRA
VO-matisse-MONITOR-MPICH-SI
VO-matisse-TESTPARDI
VO-matisse-TEST_03_NOV_CAT
i686

- CE: khaldun.biruni.upm.my:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-START
MPICH2
MPICH2-1.2.1
MPI_SHARED_HOME
OPENMPI
OPENMPI-1.3.3
R-GMA
VO-euasia-GATE-4.0.0
VO-euasia-GEANT4-9.1
VO-euasia-GROMACS-MPI-4

- CE: liknayan.pscigrid.gov.ph:2119/jobmanager-lcgpbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
IFORT-11_1_046
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
OPENMPI-1_2_8
R-GMA
SPECFEM3D_GLOBE-4_0_4

- CE: quanta.grid.sinica.edu.tw:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-START
MPICH
MPICH-1_2-7
MPICH2
MPI_SHARED_HOME
R-GMA

- CE: razi.biruni.upm.my:2119/jobmanager-pbs-euasia
- Tag GLITE-3_0_0
GLITE-3_1_0
LCG-2
LCG-2_1_0
LCG-2_1_1
LCG-2_2_0
LCG-2_3_0
LCG-2_3_1
LCG-2_4_0
LCG-2_5_0
LCG-2_6_0
LCG-2_7_0
MPI-START
MPI_SHARED_HOME
OPENMPI
OPENMPI-1.4.1
R-GMA
VO-euasia-GROMACS-MPI-4
VO-ops-SAM



////////////////////////////////////////////////////////
[ui01] /home/dhc00 > lcg-info --vo euasia --list-ce --query Tag=MPICH
- CE: grid012.ct.infn.it:2119/jobmanager-lcglsf-euasia

- CE: infn-ce-01.ct.pi2s2.it:2119/jobmanager-lcglsf-euasia

- CE: infn-ce-01.ct.pi2s2.it:2119/jobmanager-lcglsf-short

- CE: quanta.grid.sinica.edu.tw:2119/jobmanager-pbs-euasia

////////////////////////////////////////////////////////
[ui01] /home/dhc00 > lcg-info --vo euasia --list-ce --query Tag=OPENMPI
- CE: ce1.egee.cesnet.cz:2119/jobmanager-pbs-euasia

- CE: ce2.egee.cesnet.cz:2119/jobmanager-pbs-euasia

- CE: cladonia.geranium.um.edu.my:2119/jobmanager-pbs-euasia

- CE: haitham.biruni.upm.my:2119/jobmanager-pbs-euasia

- CE: khaldun.biruni.upm.my:2119/jobmanager-pbs-euasia

- CE: razi.biruni.upm.my:2119/jobmanager-pbs-euasia