22 #include <utility/exit.hh>
23 #include <numeric/xyzVector.hh>
32 #include <utility/vector1.hh>
65 if(nonO_aro_bonds>0) {
67 }
else if(O_single_bonds > 0 && O_double_bonds > 0) {
69 }
else if(N_single_bonds == 1) {
70 if(O_double_bonds == 1 && C_single_bonds == 1 &&
hasbbN()) {
77 }
else if(N_single_bonds == 2 && N_double_bonds == 1) {
80 switch(H_single_bonds){
81 case 1:
type_=
"CH1";
break;
82 case 2:
type_=
"CH2";
break;
83 case 3:
type_=
"CH3";
break;
88 if(nonO_aro_bonds==2) {
99 if(H_single_bonds == 2) {
101 }
else if (H_single_bonds == 1 && C_single_bonds == 1) {
103 }
else if (C_single_bonds == 2) {
109 if(nonO_aro_bonds > 0) {
111 }
else if(H_single_bonds == 2) {
113 }
else if(H_single_bonds == 1 && C_single_bonds == 1) {
130 }
else if(C_aromatic_bonds >=1)
168 this->
atomname_=molecule_container_->atom_name(atomno);
169 element_ = molecule_container_->atom_type(atomno).element();
185 std::string element = molecule_container_->atom_type(bonded[i]).element();
201 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
226 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
246 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
268 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
290 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
310 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
334 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
349 for(
core::Size i=1; i<=bonded.size()&&!found; i++) {
387 std::pair<std::string,core::chemical::BondName> key(element,bond_type);
393 std::pair<std::string,core::chemical::BondName> key(element,bond_type);
394 std::map< std::pair<std::string,core::chemical::BondName>,
core::Size>::const_iterator bond_iter;
401 return bond_iter->second;
408 std::map< std::pair<std::string,core::chemical::BondName>,
core::Size >::const_iterator bond_iter;
411 std::pair<std::string,core::chemical::BondName> key = bond_iter->first;
412 if(key.second == bond_type)
414 total += bond_iter->second;
423 std::map< std::pair<std::string,core::chemical::BondName>,
core::Size >::const_iterator bond_iter;
426 std::pair<std::string, core::chemical::BondName> key = bond_iter->first;
427 if(key.first == element)
429 total += bond_iter->second;