File tree Expand file tree Collapse file tree 1 file changed +11
-8
lines changed
descriptor/qsarmolecular/src/main/java/org/openscience/cdk/qsar/descriptors/molecular Expand file tree Collapse file tree 1 file changed +11
-8
lines changed Original file line number Diff line number Diff line change @@ -1383,27 +1383,30 @@ private void calcGroup066_to_079(int i) {
13831383 } else if (fragment [i ].equals ("SaaN" )) {
13841384 frags [75 ]++;
13851385 alogpfrag [i ] = 75 ;
1386- } else if (fragment [i ].equals ("SssdNp" )) {
1387- boolean haveSsOm = false ;
1388- boolean haveSdO = false ;
1389- boolean ar = false ;
1386+ } else if (fragment [i ].equals ("SdssNp" ) ||
1387+ fragment [i ].equals ("SddsN" )) {
1388+ int haveSsOm = 0 ;
1389+ int haveSdO = 0 ;
1390+ boolean ar = false ;
13901391
13911392 for (int j = 0 ; j <= nbors .size () - 1 ; j ++) {
13921393 if (fragment [atomContainer .indexOf (((IAtom ) nbors .get (j )))].equals ("SsOm" )) {
1393- haveSsOm = true ;
1394+ haveSsOm ++ ;
13941395 } else if (fragment [atomContainer .indexOf (((IAtom ) nbors .get (j )))].equals ("SdO" )) {
1395- haveSdO = true ;
1396+ haveSdO ++ ;
13961397 } else {
13971398 if (((IAtom ) nbors .get (j )).getFlag (CDKConstants .ISAROMATIC )) {
13981399 ar = true ;
13991400 }
14001401 }
14011402 }
14021403
1403- if (haveSsOm && haveSdO && ar ) {
1404+ boolean isNitro = haveSdO == 2 || (haveSsOm >= 1 && haveSdO >= 1 );
1405+
1406+ if (isNitro && ar ) {
14041407 frags [76 ]++;
14051408 alogpfrag [i ] = 76 ;
1406- } else if (haveSsOm && haveSdO && !ar ) {
1409+ } else if (isNitro && !ar ) {
14071410 frags [77 ]++;
14081411 alogpfrag [i ] = 77 ;
14091412 } else {
You can’t perform that action at this time.
0 commit comments