void Gen_Soft_Dihedral_List_Excluding_Ring(void) { int i, nDih, iPos, ia, ib, ic, id; nDih = Mol.nDihedral; n_Soft_Dih = 0; for(i=0; i<nDih; i++) { if(Mol.Is_A_Dihedrals_In_A_Ring(i) == 0) { iPos = i*4; ia = Mol.DihedralList[iPos ]; ib = Mol.DihedralList[iPos+1]; ic = Mol.DihedralList[iPos+2]; id = Mol.DihedralList[iPos+3]; if(ib <= ic) { if(!Is_In_Soft_Dihedral_List(ib, ic)) { Dih_Bond[n_Soft_Dih][0] = ia; Dih_Bond[n_Soft_Dih][1] = ib; Dih_Bond[n_Soft_Dih][2] = ic; Dih_Bond[n_Soft_Dih][3] = id; n_Soft_Dih++; printf("%3d %3d %3d %3d \n", Mol.DihedralList[iPos]+1, Mol.DihedralList[iPos+1]+1, Mol.DihedralList[iPos+2]+1, Mol.DihedralList[iPos+3]+1); } } else { if(!Is_In_Soft_Dihedral_List(ic, ib)) { Dih_Bond[n_Soft_Dih][0] = id; Dih_Bond[n_Soft_Dih][1] = ic; Dih_Bond[n_Soft_Dih][2] = ib; Dih_Bond[n_Soft_Dih][3] = ia; n_Soft_Dih++; printf("%3d %3d %3d %3d \n", Mol.DihedralList[iPos]+1, Mol.DihedralList[iPos+1]+1, Mol.DihedralList[iPos+2]+1, Mol.DihedralList[iPos+3]+1); } } } } }