การหาคำแรกในบรรทัด

ในหลายโปรแกรมจะมีการอ่านค่าพารามิเตอร์จาก text file โดยที่จะมีชื่อของพารามิเตอร์หรือตัวแปรอยู่ใน column แรกและค่าที่เราจะส่งผ่านเข้าในโปรแกรมจะอยู่ใน column ถัดไปโดยมี space ระหว่างตัวแปรและค่านี้ เช่น

InitialParasites         2.3*10^10

MeanAge           10

โปรแกรมเหล่านี้จะอ่านค่า input จาก text file ทีละบรรทัดโดยจะมีการหาว่าตัวแปรที่โปรแกรมต้องการแต่ละตัวอยู่ในบรรทัดใด จากนั้นก็จะส่งผ่านค่าไปให้ตัวพารามิเตอร์ตัวนั้นในโปรแกรม

นี่เป็นตัวอย่างภาษา C ที่ใช้ในการหาคำแรก (พารามิเตอร์) จากบรรทัดที่อ่านเข้ามา (source) ตัวอย่างนี้มีการใช้ isspace ซึ่งเป็น function ที่ใช้ในการหา white space หรือที่ว่างระหว่างคำ เช่น ‘ ‘ , ‘\t’, ‘\n’, ‘\v’, ‘\f’, ‘\r’  (ต้องมีการโหลด ctype.h หรือ cctype ก่อนครับ)

//find the first word from a line
void find_first_word(char *source, char *word)
{
int i=0;    //  Position within source
int j=0;    //  Position within word

/*  Skip leading white space                    */
while((source[i] != ‘\0’) && isspace(source[i]))
i++;

/*  Copy the word                        */
while((source[i] != ‘\0′) && !isspace(source[i]))
{
word[j]=source[i];
i++;
j++;
}

word[j]=’\0’;

return;
}

การทำงานของโปรแกรมสำหรับ Molecular dynamics simulation

ใครที่สนใจว่าโปรแกรมที่เราใช้ศึกษาด้าน molecular dynamics simulation เช่น AMBER, GROMACS, CHARMM หรือ NAMD ทำงานอย่างไร ผมขอแนะนำให้ลองศึกษาจาก source codes ของ  Mindy ครับ http://www.ks.uiuc.edu/Development/MDTools/mindy มันเป็นเหมือนเวอร์ชั่นย่อๆ ของ NAMD ครับ ซึ่งมันทำงานหลักๆอย่างที่ NAMD ทำเลยครับ จะไม่มีก็ในส่วนของการคำนวณแบบขนาน

Have you ever thought about it?

“Have you ever thought about it? We want to be famous as a writer, as a poet, as a painter, as a politician, as a singer, or what you will. Why? Because we really don’t love what we are doing. If you loved to sing, or to paint, or to write poems—if you really loved it—you would not be concerned with whether you are famous or not. To want to be famous is tawdry, trivial, stupid, it has no meaning; but, because we don’t love what we are doing, we want to enrich ourselves with fame. Our present education is rotten because it teaches us to love success and not what we are doing. The result has become more important than the action.

You know, it is good to hide your brilliance under a bushel, to be anonymous, to love what you are doing and not to show off. It is good to be kind without a name. That does not make you famous, it does not cause your photograph to appear in the newspapers. Politicians do not come to your door. You are just a creative human being living anonymously, and in that there is richness and great beauty.”

J. Krishnamurti

การติดตั้ง package ของ R เพิ่ม

การติดตั้ง package ของ R เพิ่ม สำหรับบน Linux ครับ

1. ติดตั้งจาก source

source ที่พูดถึงก็เป็นพวกไฟล์ package ที่มีสกุล tar.gz ที่สามารถ download ได้จากเวบ http://www.r-project.org/ หรือ http://cran.r-project.org/mirrors.html  หลังจากที่ download มาแล้วเก็บไว้ที่ เช่น /home/MyAccount/Rlib ก็สามารถพิมพ์คำสั่งนี้ได้เลย

$ R CMD INSTALL ชื่อไฟล์.tar.gz -l /home/MyAccount/Rlib/

2. ติดตั้งจากเวบ CRAN โดยตรง

พิมพ์คำสั่งนี้ใน R console สำหรับติดตั้ง package ที่ต้องการไว้ที่ /home/MyAccount/Rlib

> install.packages(“ชื่อ package”, lib=”/home/MyAccount/Rlib/”)

หลังจากติดตั้งแล้วจะเรียกใช้ก็ให้พิมพ์ใน R console คำสั่ง นี้ครับ

library(“ชื่อ package”, lib.loc=”/home/MyAccount/Rlib/”)

ถ้าหากมีปัญหาว่าต้องโหลดผ่าน proxy ก็ให้ลอง export http_proxy=”http://proxy:port” ดูครับ

3. ติดตั้งจาก github

กรณีที่อยากติดตั้ง package ที่อยู่บน Github เราสามารถทำได้โดยใช้คำสั่ง install_github ของ devtools ครับ เช่น

library(devtools)

install_github(“package”)

หรือถ้าต้องการระบุ path ที่จะเก็บpackageนี้ด้วยก็ทำได้โดยใช้ with_libpaths เช่น

with_libpaths(new=”/home/MyAccount/Rlib”, install_github(“package”))

Thai Latex บน Fedora 14 LXDE Desktop

การติดตั้ง Thai Latex บน Fedora 14 LXDE Desktop

วิธีนี้ต้องมี gcc compiler ก่อนนะครับ ซึ่งติดตั้งได้เลยจากตัว Add/Remove Software

ก่อนอื่นต้องไป download ไฟล์พวกนี้ก่อนนะครับ

  1. ftp://linux.thai.net/pub/ThaiLinux/software/libthai/libdatrie-0.2.4.tar.gz
  2. ftp://linux.thai.net/pub/thailinux/software/thailatex/thailatex-0.4.4.tar.gz
  3. ftp://linux.thai.net/pub/thailinux/software/swath/swath-0.4.0.tar.gz

หลังจากนั้นก็แตกไฟล์พวกนี้ออกโดยที่อยู่folder ของใครของมัน

จากนั้นก็เริ่มติดตั้งโดยเริ่มที่ตัว libdatrie ก่อนครับ

ที่ terminal ก็เปลี่ยน folder ไปที่ folder ของ libdatrie จากนั้นก็พิมพ์

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

ตามด้วย

./configure

และ

make install

หลังจากนั้นก็ติดตั้ง swath โดยทำเช่นเดียวกันครับคือพิมพ์ ./configure แล้วตามด้วย make install

ต่อด้วย thailatex ครับทำเช่นเดียวกันกับ swath

เป็นอันว่าเสร็จแล้วครับ ผมใช้งานได้ไม่มีปัญหาครับ

ผมใช้ TexMakerX ในการแก้ไขไฟล์ Latex ครับ อาจต้องมีการปรับแต่งให้มันอ่านและบันทึกภาษาไทยโดยไปที่ Edit -> Setup Encoding… แล้วเลือก TIS-620 ครับ