r9 - 11 Jan 2007 - 20:23:53 - YusongLiuYou are here: TWiki >  Computing Web > ScsCharmm

CHARMM at SCS

Description

CHARMM(Chemistry at HARvard Macromolecular Mechanics) is a program for macromolecular simulations, including energy minimization, molecular dynamics and Monte Carlo simulations.

The primary concern of CHARMM has been to create a research instrument for theoretical studies of the properties and biological function of molecules. Consequently, emphasis has been placed on the versatility of the program and it is being continually modified as work proceeds into new areas.

How to install CHARMM:

CHARMM Release Package

The CHARMM release package for CHARMM developers and user sites includes (1) complete source and include files, (2) updated documentation files, (3) some supporting data files, (4) testcases, (5) the PREFX preprocessor and tools needed to set up CHARMM development environments and (6) standard topology and parameter files.

For more information see the Charmm site.

General Use

The user of CHARMM controls its execution by executing commands sequentially from a command file or interactivly.

The general syntax for using the program is:

charmm < filename.inp > filename.out
CHARMM
The actual name of the program (or script which runs the program) on the computer system being used; the name may not be the same on all systems.
filename.inp

A text file containing CHARMM input commands, using the command syntax described in usage.doc. The actual filename is up to the user.
filename.out
The log file for the CHARMM run, containing echoed commands, and various amounts of command output. The output print level may be increased or decreased in general, and procedures such as minimization and dynamics have printout frequency specifications.

Cluster Specific Use

Anfinsen

Running CHARMM With LAMMPI

Running Lam
Before you can run CHARMM, you should learn how to use Lam, which is in /user/local/lam/7.1.2/
If you are using Lam you need to first setup your environment. You need to make sure that Lam is using ssh rather than rsh. You will need to setup your ssh environment to allow you to login to anfinsen nodes without a password. Once, you set this up, you can run lamboot to start daemons on multiple nodes to submit your job.

Below is step-by-step command list that you will need to run at a tcsh prompt:

Instead of anfinsen00 any anfinsen node may be used.

anfinsen00# ssh-keygen -t rsa
* it will prompt you for a password... you dont have to enter one
anfinsen00# ssh-keygen -t dsa
* it will prompt you for a password... you dont have to enter one
anfinsen00# cat ~/.ssh/id_dsa.pub ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys2
* now log into all phoenix nodes and type 'yes' to save their fingerprints to ~/.ssh/known_hosts
anfinsen00# setenv LAMRSH 'ssh -x'
* You can add this to your shell config files
anfinsen00# setenv LAMHOME /usr 
* use lam-7.1.2
anfinsen00# lamboot <options> <hostfile>
* I would specify a host file listing nodes that you want to run lam daemons on. Be sure to include the hostname of the machine you are on. * I do have a default list setup -- lamboot with no arguments should run. However, if a node is down, lamboot won't work. So I would have a list of currently up nodes. An easy way to do this, is to cp /usr/local/lam/7.1.2/etc/lam/lam-bhost.def to a file that you can edit and run lamboot against it.

* Take note of downed machines and remove them from your list. BTW, -x makes lam run in fault tolerant mode... which may interest you

* see man lamboot

anfinsen00# mpirun -np 4 ./charmm <filename.inp>filename.out
    * Use lam's mpirun and run your command.
anfinsen00# lamhalt
* run lamhalt when you are done.

Running CHARMM
<dd>lamboot -v nodefile</dd>
The nodefile looks like that:
   <dd>phoenix000.scs.fsu.edu cpu=1 </dd>
   <dd>phoenix001.scs.fsu.edu cpu=1</dd>
   <dd>phoenix002.scs.fsu.edu cpu=1</dd>
   <dd>phoenix003.scs.fsu.edu cpu=1</dd>
   
   <dd>mpirun -np n charmm < filename.inp > filename.out</dd>
   

Phoenix

Running CHARMM With MPICH2

Running MPICH2
Because CHARMM can not support the Lam Mpi's version in phoenix, so weu use MPICH2. setup mpich2 in your .cshrc file you should add the following lines:
setenv MPICHHOME /usr/local/mpich2/1.0.4p1/
set path = ($MPICHHOME/bin $path )
start mpich2 with the command
phoenix001# mpd &
Running CHARMM
phoenix001# cd your_Charmm_Inputfile_Dir 

phoenix001# mpiexec -n 4 ./charmm <filename.inp>filename.out
* Intead of MPICH1's mpirun, you should use mpiexec and run your command.

-- YusongLiu - 30 Nov 2006

Edit | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r9 < r8 < r7 < r6 < r5 | More topic actions
 
SCS TWiki

This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback