Pesquisar este blog

terça-feira, 6 de maio de 2014

enim EPR

Documents/iff105/Cuenim/1stRound/QMMMM/Cluster/frame

1) Substitui os nomes dos átomos com números para os nomes canônicos

sed "s/C3/C /g" cuenim.xyz | sed "s/C5/C /g" | sed "s/H2/H /g" | sed "s/N2/N /g" | sed "s/H6/H /g" | sed "s/H7/H /g" | sed "s/C1/C /g" | sed "s/H8/H /g" | sed "s/H9/H /g" | sed "s/N3/N /g" | sed "s/H3/H /g" | sed "s/H11/H /g" | sed "s/CU/Cu /g" | sed "s/H4/H /g" | sed "s/H5/H /g" | sed "s/N1/N /g" | sed "s/H10/H /g" | sed "s/C4/C /g" | sed "s/H1/H /g" | sed "s/C5/C /g" | sed "s/C5/C /g" | sed "s/C5/C /g" | sed "s/C5/C /g" | sed "s/C5/C /g" | sed "s/C2/C /g"> aaaa.xyz

2) Roda o script master para obter dois arquivos: "cauda" e "cabeça"

3) Roda o arquivo job.sh (favor alterar as variáveis!!) para separar a trajetória em n arquivos xyz
cria um dir chamado frame para colocar os arquivos

4) Roda este script pra criar o input pro ORCA
#!/bin/bash

for ((  i = 1 ;  i <= 329;  i=i+1  )); do cat cabeca frame_$i.xyz cauda >> $i.inp;
 done

cria um dir inp para colocar os arquivos de input


5) Roda o script do orca
#!/bin/bash

for ((  i = 1 ;  i <= 200;  i=i+1  )); do 
/home/marcos/Programs/orca_2_9_1_linux_x86-64/orca $i.inp > $i.out 
 done


Distâncias Cu_O para os 120 primeiros frames da dinâmica QM/MM

#Análise dos resultados:


# Obtém os dados de 'A' e organiza nos arquivos Axx, Ayy e Azz

for (( i = 1 ; i <= 121; i=i+1))
do

Axx=`sed -n '/ Ax       Ay       Az/{N;N;N;p;}'  $i.out | sed '4!d' | awk {'print $5,$6,$7'} | sed ':a;$!N;s/ /\n/;ta;' | sort -n | sed '3!d'`; echo $i ${Axx} >> Axx
Ayy=`sed -n '/ Ax       Ay       Az/{N;N;N;p;}'  $i.out | sed '4!d' | awk {'print $5,$6,$7'} | sed ':a;$!N;s/ /\n/;ta;' | sort -n | sed '2!d'`; echo ${Ayy} >> Ayy
Azz=`sed -n '/ Ax       Ay       Az/{N;N;N;p;}'  $i.out | sed '4!d' | awk {'print $5,$6,$7'} | sed ':a;$!N;s/ /\n/;ta;' | sort -n | sed '1!d'`; echo ${Azz} >> Azz

done

#explica
#sed -n '/ Ax       Ay       Az/{N;N;N;p;}'  $i.out
# pega 3 linhas abaixo depois de encontrar o padrao "Ax       Ay       Az" no arquivo $i.out. O nro de linha abaixo esta relacionado com a repeticao N; . Por se N;N; quer dizer que pegara tb 2 linhas abaixo do padrao.
#sed ':a;$!N;s/ /\n/;ta;' >> substitui espaço em branco por um enter;


*************************************

#!/bin/bash

for (( i = 1 ; i <= 121; i=i+1))
do
grep -3 "Ax       Ay       Az" $i.out | grep 13Cu >> INFO/A_hiperfino.dat
grep "g(tot)" $i.out >> INFO/g_tot.dat
done

awk {'print $5,$6,$7'} INFO/A_hiperfino.dat >> INFO/hyperfine.dat
awk {'print $2,$3,$4,$6'} INFO/g_tot.dat >> g-tensor.dat

for (( i = 1 ; i <= 121; i=i+1))
do

done