Révision f43a1b4c
b/global_script.sh | ||
---|---|---|
1 | 1 |
#!/bin/bash |
2 | 2 |
|
3 | 3 |
user="$(pwd | awk -F"/" '{print $3}')" |
4 |
|
|
5 |
file_path="$(find /home/${user} -name "DockOnSurf_path")"
|
|
4 |
file_path="$(find $HOME -name "DockOnSurf_path")" |
|
5 |
echo $file_path
|
|
6 | 6 |
|
7 | 7 |
### Mise en place de l'arborescence |
8 | 8 |
|
... | ... | |
51 | 51 |
|
52 | 52 |
${DockOnSurf_path}/modules/launch_cp2k_molecule_seule.sh $molecule |
53 | 53 |
|
54 |
### Attente jusqu'à ce que tous les calculs aient fini |
|
55 |
|
|
56 |
mol="$(echo $molecule | cut -c1-10)" |
|
57 |
while [ "$(qstat | grep $mol | wc -l)" != 0 ]; |
|
58 |
do |
|
59 |
sleep 30 |
|
60 |
done |
|
61 |
|
|
62 | 54 |
echo ' -- ALL CALCULATIONS FOR MOLECULE ALONE HAVE BEEN DONE --' |
63 | 55 |
|
64 | 56 |
### Suppression des fichiers inutiles |
... | ... | |
116 | 108 |
|
117 | 109 |
${DockOnSurf_path}/modules/launch_script+diss.sh $molecule |
118 | 110 |
|
119 |
### Attente jusqu'à ce que tous les calculs aient fini |
|
120 |
|
|
121 |
mol2="$(echo $molecule | cut -c1-5)" |
|
122 |
while [ "$(qstat | grep surf_${mol2} | wc -l)" != 0 ]; |
|
123 |
do |
|
124 |
sleep 30 |
|
125 |
done |
|
126 |
|
|
127 | 111 |
echo ' -- ALL CALCULATIONS FOR ADSORPTION STRUCTURES HAVE BEEN DONE --' |
128 | 112 |
|
129 | 113 |
### Suppression des fichiers inutiles |
... | ... | |
139 | 123 |
|
140 | 124 |
${DockOnSurf_path}/modules/script_grandes_molecules+diss.sh $molecule $num_center ${nb_at_surf} ${cutoff} |
141 | 125 |
|
142 |
echo ' -- CLUSTERING HAS BEEN DONE AND CLUSTER CENTERS CALCULATIONS HAVE BEEN LAUNCHED --' |
|
143 |
|
|
144 |
### Attente jusqu'à ce que tous les calculs aient fini |
|
145 |
|
|
146 |
while [ "$(qstat | grep surf_${mol2} | wc -l)" != 0 ]; |
|
147 |
do |
|
148 |
sleep 30 |
|
149 |
done |
|
150 |
|
|
151 | 126 |
echo ' -- ALL CLUSTER CENTERS CALCULATIONS HAVE BEEN DONE --' |
152 | 127 |
|
153 | 128 |
|
b/modules/launch_cp2k_molecule_seule.sh | ||
---|---|---|
16 | 16 |
sed "/PROJECT_NAME/c\PROJECT_NAME ${molecule}" ${CP2K_input_molecule} > ${Molecule_results_path}/${molecule}/${molecule}_1/${molecule}.inp |
17 | 17 |
sed "s/XXXX/${molecule}/g" ${CP2K_sub} > ${Molecule_results_path}/${molecule}/${molecule}_1/cp2k_gamma.j |
18 | 18 |
cp ${Molecule_results_path}/${molecule}_confs/xyz_files/${molecule}_1.xyz ${Molecule_results_path}/${molecule}/${molecule}_1/coord.xyz |
19 |
qsub cp2k_gamma.j |
|
19 |
new_job_id=$(qsub cp2k_gamma.j | awk '{print $3}') |
|
20 |
echo "Submitted job $new_job_id" |
|
21 |
jobs_owned+=($new_job_id) |
|
20 | 22 |
|
21 | 23 |
for ((i=2; i<=n; i++)) ; do |
22 | 24 |
mkdir ${Molecule_results_path}/${molecule}/${molecule}_$i |
... | ... | |
24 | 26 |
ln ${Molecule_results_path}/${molecule}/${molecule}_1/cp2k_gamma.j . |
25 | 27 |
ln ${Molecule_results_path}/${molecule}/${molecule}_1/${molecule}.inp . |
26 | 28 |
cp ${Molecule_results_path}/${molecule}_confs/xyz_files/${molecule}_${i}.xyz coord.xyz |
27 |
qsub cp2k_gamma.j |
|
29 |
new_job_id=$(qsub cp2k_gamma.j | awk '{print $3}') |
|
30 |
echo "Submitted job $new_job_id" |
|
31 |
jobs_owned+=($new_job_id) |
|
28 | 32 |
done |
29 | 33 |
|
30 |
|
|
31 |
|
|
34 |
### Attente jusqu'à ce que tous les calculs aient fini |
|
35 |
go_on=true |
|
36 |
while [ $go_on == true ]; do |
|
37 |
all_jobs=`qstat | tail -n+3 | awk '{print $1}'` |
|
38 |
for j1 in ${jobs_owned[@]} ; do |
|
39 |
for j2 in ${all_jobs[@]}; do |
|
40 |
if [ $j1 == $j2 ]; then |
|
41 |
sleep 30 |
|
42 |
continue 3 |
|
43 |
fi |
|
44 |
done |
|
45 |
done |
|
46 |
echo "loop finished" |
|
47 |
go_on=false |
|
48 |
done |
b/modules/launch_script+diss.sh | ||
---|---|---|
40 | 40 |
ln ${mol_dir}/${nom_de_la_molecule}_1/cp2k_gamma.j . |
41 | 41 |
ln ${mol_dir}/${nom_de_la_molecule}_1/surf_${nom_de_la_molecule}.inp . |
42 | 42 |
fi |
43 |
qsub cp2k_gamma.j |
|
43 |
new_job_id=$(qsub cp2k_gamma.j | awk '{print $3}') |
|
44 |
echo "Submitted job $new_job_id" |
|
45 |
jobs_owned+=($new_job_id) |
|
44 | 46 |
fi |
45 | 47 |
done |
46 | 48 |
|
49 |
### Attente jusqu'à ce que tous les calculs aient fini |
|
50 |
go_on=true |
|
51 |
while [ $go_on == true ]; do |
|
52 |
all_jobs=`qstat | tail -n+3 | awk '{print $1}'` |
|
53 |
for j1 in ${jobs_owned[@]} ; do |
|
54 |
for j2 in ${all_jobs[@]}; do |
|
55 |
if [ $j1 == $j2 ]; then |
|
56 |
sleep 30 |
|
57 |
continue 3 |
|
58 |
fi |
|
59 |
done |
|
60 |
done |
|
61 |
echo "loop finished" |
|
62 |
go_on=false |
|
63 |
done |
|
47 | 64 |
|
48 |
|
b/modules/script_grandes_molecules+diss.sh | ||
---|---|---|
354 | 354 |
sed -i 's/EPS_SCF/EPS_SCF\ 1E-07\ #/g' ${dir}/surf_${nom_de_la_molecule}.inp |
355 | 355 |
# launches the calculation |
356 | 356 |
cd $dir/ |
357 |
qsub ${mol_dir}/relaunched_calculations/cp2k_gamma.j |
|
357 |
new_job_id=$(qsub ${mol_dir}/relaunched_calculations/cp2k_gamma.j | awk '{print $3}') |
|
358 |
echo "Submitted job $new_job_id" |
|
359 |
jobs_owned+=($new_job_id) |
|
358 | 360 |
cd - |
359 | 361 |
done |
360 | 362 |
fi |
361 | 363 |
|
362 |
|
|
364 |
### Attente jusqu'à ce que tous les calculs aient fini |
|
365 |
go_on=true |
|
366 |
while [ $go_on == true ]; do |
|
367 |
all_jobs=`qstat | tail -n+3 | awk '{print $1}'` |
|
368 |
for j1 in ${jobs_owned[@]} ; do |
|
369 |
for j2 in ${all_jobs[@]}; do |
|
370 |
if [ $j1 == $j2 ]; then |
|
371 |
sleep 30 |
|
372 |
continue 3 |
|
373 |
fi |
|
374 |
done |
|
375 |
done |
|
376 |
echo "loop finished" |
|
377 |
go_on=false |
|
378 |
done |
|
363 | 379 |
|
Formats disponibles : Unified diff