|
非常感谢楼主的脚本
为了批量计算MPI和满足自己强迫症,我把脚本改得优雅了一些- #!/bin/bash
- echo "Script for mapping molecular polarity index (MPI) from multiple xyz and gbw files."
- # ulimit -s unlimited
- tmp=$(mktemp)
- list=$(mktemp)
- cat << EOF > $tmp
- 12
- 0
- -1
- -1
- q
- EOF
- # for gbws in *.gbw
- # do
- # echo "Convert from ${gbws} to wfn..."
- # $HOME/apps/orca4/orca_2aim ${gbws%.gbw}
- # rm -f *.wfx
- # echo "done"
- # done
- echo 'file,MPI(eV),MPI(kcal/mol)' > "$list"
- for wfns in *.wfn
- do
- echo "Calculating MPI from $wfns ..."
- mpi=$(multiwfn $wfns < $tmp |\
- grep --colour=auto -m 1 'Molecular polarity index')
- mpi_eV=$(echo "$mpi" | tr -cd "[0-9]. "| awk '{print $1}')
- mpi_kcal_mol=$(echo "$mpi" | tr -cd "[0-9]. "| awk '{print $2}')
- echo "$mpi"
- echo "$wfns","$mpi_eV","$mpi_kcal_mol" >> "$list"
- done
- rm $tmp
- mv $list MPIlist.csv
- echo "Finished"
复制代码
|
|