-
Notifications
You must be signed in to change notification settings - Fork 0
/
multiple_g09_jobs_from_XYZ.sh
48 lines (33 loc) · 1.3 KB
/
multiple_g09_jobs_from_XYZ.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# This was based on JMF 'noodles.sh';
# adapted for .xyz files as generated from Gaussian .log file with jkp_extract_geom.awk or similar
# Everyone loves a bit of Raman
# This program, when given a list of .xyz files, will generate a massive matrix of new SP calculations
# With QC method and basis as specified in these DO loops
for file
do
for METHOD in b3lyp CAM-b3lyp PBE1PBE PBEPBE
do
for BASIS in "6-31g*" AUG-cc-pVDZ AUG-cc-pVTZ AUG-cc-pVQZ
do
suffix=` echo "_${METHOD}_${BASIS}" | tr "*+" "sp" `
# NB: Armour file names, convert * -> s, + -> p
instruct="#p opt(VeryTight,CalcAll) Integral(Grid=UltraFine) ${METHOD}/${BASIS} "
echo "OK; suffix is ${suffix}"
echo " Run line is ${instruct}"
echo "Generating COM file ${file%.*}${suffix}.com"
cat > "${file%.*}${suffix}.com" << EOF
%Chk=${file%.*}${suffix}.chk
%Mem=8Gb
%nproc=8
${instruct}
Autjob by noodles.sh | Great noodly basis sets! 8)
0 1
EOF
cat $file >> "${file%.*}${suffix}.com"
echo "" >> "${file%.*}${suffix}.com"
# echo "Copying Checkpoint... (disks grind into dust)... ${file%.*}.chk --> ${file%.*}${suffix}.chk"
# cp "${file%.*}.chk" "${file%.*}${suffix}.chk"
echo
done
done
done