private void addDihedralRes(String line, Section actualSection) { if (actualSection != null) { List<String> split = reworkLine(line); List<DihedralRestraint> diheRes = actualSection.getDihedralRestraints(); DihedralRestraintImpl res = new DihedralRestraintImpl(); if (split.size() == 7) { res.setAi(split.get(0)); res.setAj(split.get(1)); res.setAk(split.get(2)); res.setAl(split.get(3)); res.setFuncType(Integer.parseInt(split.get(4))); res.setC1(new BigDecimal(split.get(5))); res.setC2(new BigDecimal(split.get(6))); diheRes.add(res); } else if (split.size() == 10) { res.setAi(split.get(0)); res.setAj(split.get(1)); res.setAk(split.get(2)); res.setAl(split.get(3)); res.setFuncType(Integer.parseInt(split.get(4))); res.setLabel(split.get(5)); res.setC1(new BigDecimal(split.get(6))); res.setC2(new BigDecimal(split.get(7))); res.setC3(new BigDecimal(split.get(8))); res.setC4(new BigDecimal(split.get(9))); diheRes.add(res); } else { ch.printErrorln(String.format("some dihedral restraints values are lost! --> %s", line)); } } }