return SSData;
}
-bool secondaryStructures::hasHBondBetween(std::size_t Donor, std::size_t Acceptor) const{
- if( ( (*ResInfoMap)[Donor].acceptor[0]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptorEnergy[0] < HBondEnergyCutOff ) ||
- ( (*ResInfoMap)[Donor].acceptor[1]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptorEnergy[1] < HBondEnergyCutOff ) ){
- std::cout << "HBond Exist" << std::endl;
+bool secondaryStructures::hasHBondBetween(std::size_t Donor, std::size_t Acceptor) const{ // prob should add resi name comparison ?
+ if( (*ResInfoMap)[Donor].acceptor[0] == nullptr ||
+ (*ResInfoMap)[Donor].acceptor[1] == nullptr ||
+ (*ResInfoMap)[Acceptor].info == nullptr ){
+ return false;
+ }
+ else {
+ if( ( ( (*ResInfoMap)[Donor].acceptor[0]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptor[0]->chainid == (*ResInfoMap)[Acceptor].info->chainid ) && (*ResInfoMap)[Donor].acceptorEnergy[0] < HBondEnergyCutOff ) ||
+ ( ( (*ResInfoMap)[Donor].acceptor[1]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptor[1]->chainid == (*ResInfoMap)[Acceptor].info->chainid ) && (*ResInfoMap)[Donor].acceptorEnergy[1] < HBondEnergyCutOff ) ){
+ std::cout << "HBond Exist" << std::endl;
+ }
+ return ( ( (*ResInfoMap)[Donor].acceptor[0]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptor[0]->chainid == (*ResInfoMap)[Acceptor].info->chainid ) && (*ResInfoMap)[Donor].acceptorEnergy[0] < HBondEnergyCutOff ) ||
+ ( ( (*ResInfoMap)[Donor].acceptor[1]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptor[1]->chainid == (*ResInfoMap)[Acceptor].info->chainid ) && (*ResInfoMap)[Donor].acceptorEnergy[1] < HBondEnergyCutOff );
}
- return ( ( (*ResInfoMap)[Donor].acceptor[0]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptorEnergy[0] < HBondEnergyCutOff ) ||
- ( (*ResInfoMap)[Donor].acceptor[1]->nr == (*ResInfoMap)[Acceptor].info->nr && (*ResInfoMap)[Donor].acceptorEnergy[1] < HBondEnergyCutOff ) );
}
bool secondaryStructures::NoChainBreaksBetween(std::size_t Resi1, std::size_t Resi2) const{