Scylla&charybdis.tgz: Difference between revisions
Lbellarosa (talk | contribs) No edit summary |
Lbellarosa (talk | contribs) No edit summary |
||
| Line 4: | Line 4: | ||
The coupled scripts ''scylla.sh'' and ''charybdis.sh'' are used to run iteratively molecular dynamics simulations. | The coupled scripts ''scylla.sh'' and ''charybdis.sh'' are used to run iteratively molecular dynamics simulations. | ||
'''Launching''': ''charybdis.sh name nproc final_time'' (check the ''running steps'' for more details) | '''Launching''': ''charybdis.sh name nproc final_time'' (check the ''setup steps'' and ''running steps'' for more details) | ||
'''Output file''': directories with prefix ''prfx'' | '''Output file''': directories with prefix ''prfx'' (check the ''setup steps'' for more details) | ||
| Line 40: | Line 40: | ||
Before running a calculation with scylla and charybdis, a special care is needed in the preparation of the input DIRECTORIES. | Before running a calculation with ''scylla'' and ''charybdis'', a special care is needed in the preparation of the input DIRECTORIES. | ||
1) Be sure to be on mn1/mn2 or whatever in marenostrum. | 1) Be sure to be on mn1/mn2 or whatever in marenostrum. | ||
| Line 48: | Line 48: | ||
3) In the scratch directory /gpfs/scratch/GROUP/USER, you will create the same tree of directories. In this case, we will have /gpfs/scratch/GROUP/USER/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1. | 3) In the scratch directory /gpfs/scratch/GROUP/USER, you will create the same tree of directories. In this case, we will have /gpfs/scratch/GROUP/USER/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1. | ||
Here, we will put in a directory called dyn_00 our initial (un)optimized geometry... Remember! We need an INCAR, KPOINTS, POSCAR AND POTCAR at least!!! You can simply copy the directory with | Here, we will put in a directory called dyn_00 our initial (un)optimized geometry... Remember! We need an INCAR, KPOINTS, POSCAR AND POTCAR at least!!! You can simply copy the directory with | ||
all the optimization here: ''scylla | all the optimization here: ''scylla'' and ''charybdis'' are smart enough to realize that there is a CONTCAR file and to move it to a POSCAR. | ||
If I want my directories be named, for example, pilly00, just go inside ''charybdis'' and change the correspondent prfx variable (line 25): in this case, I would write ''prfx="pilly"''. | |||
| Line 56: | Line 57: | ||
You are ready to run ''scylla | You are ready to run ''scylla'' and ''charybdis''. The command is: | ||
''charybdis.sh name proc final_time'' | ''charybdis.sh name proc final_time'' | ||
| Line 66: | Line 67: | ||
''charybdis.sh h2o_on_Pt100 80 17'' | ''charybdis.sh h2o_on_Pt100 80 17'' | ||
All the directories created (dyn_00, dyn_01, dyn_02....) will be moved to your home tree (in the previous example, ~/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1). | All the directories created (dyn_00, dyn_01, dyn_02....) where the dynamics is finished will be moved to your home tree (in the previous example, ~/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1). | ||
In the scratch tree directory (/gpfs/scratch/GROUP/USER/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1) there is the directory where the dynamics is currently running. | In the scratch tree directory (/gpfs/scratch/GROUP/USER/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1) there is the directory where the dynamics is currently running. | ||
When the dynamics is finished, in the scratch tree directory | When the full dynamics is finished after $final_time ps, in the scratch tree directory will appear the file res.dat: it's a summary with the results about the trajectories, if they finished well or not. | ||
| Line 79: | Line 80: | ||
ran smoothly.... | ran smoothly.... | ||
'''final_time''': in picoseconds. If you want to run a dynamics (md) < 1 ps (???), write this time in fs, and in scylla comment the line 18 and write below it ''tf_fs=$tf_ps''. Please, make sure that the | '''final_time''': in picoseconds (ps). If you want to run a dynamics (md) < 1 ps (???), write this time in femtoseconds (fs), and in scylla comment the line 18 and write below it ''tf_fs=$tf_ps''. Please, make sure that the | ||
NSW parameter in the INCAR is a dividend of final_time (expressed in fs). For example, if final_time is 18, any parameter = 500, 1000, 1200 or any integer dividend of 18000 will be good, but 700 will run | NSW parameter in the INCAR is a dividend of final_time (expressed in fs). For example, if final_time is 18, any parameter NSW = 500, 1000, 1200 or any integer dividend of 18000 will be good, but 700 will run | ||
a dynamics up to 18200 fs (18.2 ps) and then it will stop. | a dynamics up to 18200 fs (18.2 ps) and then it will stop. | ||
Enjoy! And of course, for any question I'm, unfortunately, here. | |||
Revision as of 16:24, 9 January 2013
go back to Main Page, Computational Resources, Scripts, Scripts for VASP
The coupled scripts scylla.sh and charybdis.sh are used to run iteratively molecular dynamics simulations.
Launching: charybdis.sh name nproc final_time (check the setup steps and running steps for more details)
Output file: directories with prefix prfx (check the setup steps for more details)
INSTALLATION STEPS
First of all, download the package of scripts:
File:Scripts.tgz
Place it in the directory of Mare Nostrum ~/bin. If this directory does not exist, create it.
1) If YOU DO NOT HAVE a directory called ~/bin/scripts, put scripts.tgz inside ~/bin and uncompress it with the command: tar -xvzf scripts.tgz and remove scripts.tgz.
2) If YOU HAVE already a directory called ~/bin/scripts, create a new directory exp, put scripts.tgz inside ~/bin/exp and uncompress it with the command: tar -xvzf scripts.tgz and remove scripts.tgz. Now move the files adjust.sh, charybdis.sh, copy.sh and scylla.sh in the directory ~/bin/scripts; remove ~/bin/exp.
Plese, check that all the scripts adjust.sh, charybdis.sh, copy.sh and scylla.sh are executables (they should appear green on your screen). If not, run the command chmod u+x on each of them.
The installation is ready!
SETUP STEPS
Before running a calculation with scylla and charybdis, a special care is needed in the preparation of the input DIRECTORIES.
1) Be sure to be on mn1/mn2 or whatever in marenostrum.
2) In your home directory (~), create all the tree of directories where you want to store your results. For example, create the directories ~/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1.
3) In the scratch directory /gpfs/scratch/GROUP/USER, you will create the same tree of directories. In this case, we will have /gpfs/scratch/GROUP/USER/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1. Here, we will put in a directory called dyn_00 our initial (un)optimized geometry... Remember! We need an INCAR, KPOINTS, POSCAR AND POTCAR at least!!! You can simply copy the directory with all the optimization here: scylla and charybdis are smart enough to realize that there is a CONTCAR file and to move it to a POSCAR. If I want my directories be named, for example, pilly00, just go inside charybdis and change the correspondent prfx variable (line 25): in this case, I would write prfx="pilly".
RUNNING STEPS
You are ready to run scylla and charybdis. The command is:
charybdis.sh name proc final_time
An example of the paraters will clear things up. Let suppose I want to simulate 17 ps of water on Pt(100). name (the name of the command sub file for the queues) can be h2o_on_Pt100, proc (the number of processors; up to date, it is better to put it = to an integer multiple of 16) can be set to 80, and finally final_time = 17. So, the command will be:
charybdis.sh h2o_on_Pt100 80 17
All the directories created (dyn_00, dyn_01, dyn_02....) where the dynamics is finished will be moved to your home tree (in the previous example, ~/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1). In the scratch tree directory (/gpfs/scratch/GROUP/USER/Work/h2o_on_Pt/Gamma_point/Ecut_500/Tr1) there is the directory where the dynamics is currently running. When the full dynamics is finished after $final_time ps, in the scratch tree directory will appear the file res.dat: it's a summary with the results about the trajectories, if they finished well or not.
REMARKS
name: any name WITHOUT dots is accepted. Remember that name CANNOT start with a number or any special character (/,\,*,+...).
proc: as I said, it appears that an integer multiple of 16 will make your jobs faster. NEVERTHELESS, I ran all my test jobs on 4 processors, and I didn't have to wait at all and everything ran smoothly....
final_time: in picoseconds (ps). If you want to run a dynamics (md) < 1 ps (???), write this time in femtoseconds (fs), and in scylla comment the line 18 and write below it tf_fs=$tf_ps. Please, make sure that the NSW parameter in the INCAR is a dividend of final_time (expressed in fs). For example, if final_time is 18, any parameter NSW = 500, 1000, 1200 or any integer dividend of 18000 will be good, but 700 will run a dynamics up to 18200 fs (18.2 ps) and then it will stop.
Enjoy! And of course, for any question I'm, unfortunately, here.