nmr-processing 9.9.2 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/lib/assignment/get13CAssignments.js +7 -4
  2. package/lib/assignment/get13CAssignments.js.map +1 -1
  3. package/lib/assignment/get1HAssignments.js +7 -5
  4. package/lib/assignment/get1HAssignments.js.map +1 -1
  5. package/lib/assignment/utils/generalAssignment/buildAssignments.d.ts +3 -1
  6. package/lib/assignment/utils/generalAssignment/buildAssignments.js +18 -7
  7. package/lib/assignment/utils/generalAssignment/buildAssignments.js.map +1 -1
  8. package/lib/index.d.ts +2 -7
  9. package/lib/index.js +2 -7
  10. package/lib/index.js.map +1 -1
  11. package/lib/prediction/GroupDiastereotopicAtomIDs.d.ts +6 -0
  12. package/lib/prediction/GroupDiastereotopicAtomIDs.js +3 -0
  13. package/lib/prediction/GroupDiastereotopicAtomIDs.js.map +1 -0
  14. package/lib/prediction/Prediction1D.d.ts +2 -7
  15. package/lib/prediction/Prediction2D.d.ts +2 -7
  16. package/lib/prediction/PredictionBase1D.d.ts +8 -0
  17. package/lib/prediction/PredictionBase1D.js +3 -0
  18. package/lib/prediction/PredictionBase1D.js.map +1 -0
  19. package/lib/prediction/PredictionBase2D.d.ts +8 -0
  20. package/lib/prediction/PredictionBase2D.js +3 -0
  21. package/lib/prediction/PredictionBase2D.js.map +1 -0
  22. package/lib/prediction/predict.d.ts +55 -0
  23. package/lib/prediction/predict.js +113 -0
  24. package/lib/prediction/predict.js.map +1 -0
  25. package/lib/prediction/predictCOSY.d.ts +15 -13
  26. package/lib/prediction/predictCOSY.js +3 -6
  27. package/lib/prediction/predictCOSY.js.map +1 -1
  28. package/lib/prediction/predictCarbon.d.ts +12 -4
  29. package/lib/prediction/predictCarbon.js +10 -16
  30. package/lib/prediction/predictCarbon.js.map +1 -1
  31. package/lib/prediction/predictHMBC.d.ts +16 -25
  32. package/lib/prediction/predictHMBC.js +3 -7
  33. package/lib/prediction/predictHMBC.js.map +1 -1
  34. package/lib/prediction/predictHSQC.d.ts +16 -25
  35. package/lib/prediction/predictHSQC.js +3 -7
  36. package/lib/prediction/predictHSQC.js.map +1 -1
  37. package/lib/prediction/predictProton.d.ts +7 -4
  38. package/lib/prediction/predictProton.js +8 -21
  39. package/lib/prediction/predictProton.js.map +1 -1
  40. package/lib/prediction/{predictAllSpectra.d.ts → predictSpectra.d.ts} +1 -1
  41. package/lib/prediction/{predictAllSpectra.js → predictSpectra.js} +7 -5
  42. package/lib/prediction/predictSpectra.js.map +1 -0
  43. package/lib/prediction/utils/fetchPrediction.d.ts +2 -3
  44. package/lib/prediction/utils/fetchPrediction.js +12 -7
  45. package/lib/prediction/utils/fetchPrediction.js.map +1 -1
  46. package/lib/prediction/utils/getFilteredIDiaIDs.d.ts +4 -13
  47. package/lib/prediction/utils/getFilteredIDiaIDs.js +7 -20
  48. package/lib/prediction/utils/getFilteredIDiaIDs.js.map +1 -1
  49. package/lib/prediction/utils/isMolfileNotEmpty.d.ts +1 -0
  50. package/lib/prediction/utils/isMolfileNotEmpty.js +12 -0
  51. package/lib/prediction/utils/isMolfileNotEmpty.js.map +1 -0
  52. package/lib/prediction/utils/predict2D.d.ts +13 -16
  53. package/lib/prediction/utils/predict2D.js +41 -18
  54. package/lib/prediction/utils/predict2D.js.map +1 -1
  55. package/lib/prediction/utils/queryByHOSE.d.ts +1 -2
  56. package/lib/prediction/utils/queryByHOSE.js.map +1 -1
  57. package/lib/prediction/utils/shouldPredict.d.ts +2 -0
  58. package/lib/prediction/utils/shouldPredict.js +15 -0
  59. package/lib/prediction/utils/shouldPredict.js.map +1 -0
  60. package/lib-esm/assignment/get13CAssignments.js +7 -4
  61. package/lib-esm/assignment/get13CAssignments.js.map +1 -1
  62. package/lib-esm/assignment/get1HAssignments.js +7 -5
  63. package/lib-esm/assignment/get1HAssignments.js.map +1 -1
  64. package/lib-esm/assignment/utils/generalAssignment/buildAssignments.js +18 -7
  65. package/lib-esm/assignment/utils/generalAssignment/buildAssignments.js.map +1 -1
  66. package/lib-esm/index.js +2 -7
  67. package/lib-esm/index.js.map +1 -1
  68. package/lib-esm/prediction/GroupDiastereotopicAtomIDs.js +2 -0
  69. package/lib-esm/prediction/GroupDiastereotopicAtomIDs.js.map +1 -0
  70. package/lib-esm/prediction/PredictionBase1D.js +2 -0
  71. package/lib-esm/prediction/PredictionBase1D.js.map +1 -0
  72. package/lib-esm/prediction/PredictionBase2D.js +2 -0
  73. package/lib-esm/prediction/PredictionBase2D.js.map +1 -0
  74. package/lib-esm/prediction/predict.js +109 -0
  75. package/lib-esm/prediction/predict.js.map +1 -0
  76. package/lib-esm/prediction/predictCOSY.js +3 -6
  77. package/lib-esm/prediction/predictCOSY.js.map +1 -1
  78. package/lib-esm/prediction/predictCarbon.js +10 -16
  79. package/lib-esm/prediction/predictCarbon.js.map +1 -1
  80. package/lib-esm/prediction/predictHMBC.js +3 -7
  81. package/lib-esm/prediction/predictHMBC.js.map +1 -1
  82. package/lib-esm/prediction/predictHSQC.js +3 -7
  83. package/lib-esm/prediction/predictHSQC.js.map +1 -1
  84. package/lib-esm/prediction/predictProton.js +8 -21
  85. package/lib-esm/prediction/predictProton.js.map +1 -1
  86. package/lib-esm/prediction/{predictAllSpectra.js → predictSpectra.js} +7 -5
  87. package/lib-esm/prediction/predictSpectra.js.map +1 -0
  88. package/lib-esm/prediction/utils/fetchPrediction.js +12 -7
  89. package/lib-esm/prediction/utils/fetchPrediction.js.map +1 -1
  90. package/lib-esm/prediction/utils/getFilteredIDiaIDs.js +7 -20
  91. package/lib-esm/prediction/utils/getFilteredIDiaIDs.js.map +1 -1
  92. package/lib-esm/prediction/utils/isMolfileNotEmpty.js +8 -0
  93. package/lib-esm/prediction/utils/isMolfileNotEmpty.js.map +1 -0
  94. package/lib-esm/prediction/utils/predict2D.js +41 -18
  95. package/lib-esm/prediction/utils/predict2D.js.map +1 -1
  96. package/lib-esm/prediction/utils/queryByHOSE.js.map +1 -1
  97. package/lib-esm/prediction/utils/shouldPredict.js +11 -0
  98. package/lib-esm/prediction/utils/shouldPredict.js.map +1 -0
  99. package/package.json +2 -3
  100. package/src/assignment/get13CAssignments.ts +9 -8
  101. package/src/assignment/get1HAssignments.ts +8 -9
  102. package/src/assignment/utils/generalAssignment/buildAssignments.ts +28 -12
  103. package/src/index.ts +3 -8
  104. package/src/prediction/GroupDiastereotopicAtomIDs.ts +6 -0
  105. package/src/prediction/Prediction1D.ts +2 -7
  106. package/src/prediction/Prediction2D.ts +2 -7
  107. package/src/prediction/PredictionBase1D.ts +9 -0
  108. package/src/prediction/PredictionBase2D.ts +9 -0
  109. package/src/prediction/predict.ts +201 -0
  110. package/src/prediction/predictCOSY.ts +18 -18
  111. package/src/prediction/predictCarbon.ts +28 -26
  112. package/src/prediction/predictHMBC.ts +17 -27
  113. package/src/prediction/predictHSQC.ts +18 -25
  114. package/src/prediction/predictProton.ts +16 -30
  115. package/src/prediction/{predictAllSpectra.ts → predictSpectra.ts} +6 -4
  116. package/src/prediction/utils/fetchPrediction.ts +15 -10
  117. package/src/prediction/utils/getFilteredIDiaIDs.ts +16 -49
  118. package/src/prediction/utils/isMolfileNotEmpty.ts +8 -0
  119. package/src/prediction/utils/predict2D.ts +69 -69
  120. package/src/prediction/utils/queryByHOSE.ts +2 -2
  121. package/src/prediction/utils/shouldPredict.ts +14 -0
  122. package/lib/prediction/predictAll.d.ts +0 -64
  123. package/lib/prediction/predictAll.js +0 -82
  124. package/lib/prediction/predictAll.js.map +0 -1
  125. package/lib/prediction/predictAllSpectra.js.map +0 -1
  126. package/lib/prediction/utils/getPredictions.d.ts +0 -4
  127. package/lib/prediction/utils/getPredictions.js +0 -18
  128. package/lib/prediction/utils/getPredictions.js.map +0 -1
  129. package/lib-esm/prediction/predictAll.js +0 -78
  130. package/lib-esm/prediction/predictAll.js.map +0 -1
  131. package/lib-esm/prediction/predictAllSpectra.js.map +0 -1
  132. package/lib-esm/prediction/utils/getPredictions.js +0 -14
  133. package/lib-esm/prediction/utils/getPredictions.js.map +0 -1
  134. package/src/openchemlib-utils.d.ts +0 -167
  135. package/src/prediction/predictAll.ts +0 -157
  136. package/src/prediction/utils/getPredictions.ts +0 -24
@@ -4,39 +4,36 @@ exports.predict2D = void 0;
4
4
  const uuid_1 = require("@lukeed/uuid");
5
5
  const ml_hclust_1 = require("ml-hclust");
6
6
  const ml_matrix_1 = require("ml-matrix");
7
- const openchemlib_utils_1 = require("openchemlib-utils");
7
+ const full_1 = require("openchemlib/full");
8
8
  const setIDs_1 = require("../../peaks/util/setIDs");
9
9
  const getNuclei_1 = require("./getNuclei");
10
- const getPredictions_1 = require("./getPredictions");
11
10
  function checkFromTo(options) {
12
11
  if (!options.from || !options.to) {
13
12
  throw new Error('options from and to are mandatory');
14
13
  }
15
14
  }
16
- async function predict2D(molecule, options = {}) {
15
+ async function predict2D(molecule, options) {
17
16
  checkFromTo(options);
18
17
  molecule.addImplicitHydrogens();
19
- const { from, to, diaIDs, minLength = 0, maxLength, predictOptions = {}, predictions, predictor, joinDistance = { H: 0.05, C: 0.5 }, includeDiagonal = false, } = options;
20
- const pathsInfo = (0, openchemlib_utils_1.getPathsInfo)(molecule, {
18
+ const { from, to, diaIDs, groupedDiaIDs, minLength = 0, maxLength, predictions, distanceMatrix, joinDistance = { H: 0.05, C: 0.5 }, includeDiagonal = false, } = options;
19
+ const pathsInfo = getPossibleCorrelations({
20
+ molecule,
21
21
  fromLabel: from,
22
22
  toLabel: to,
23
+ diaIDs,
24
+ distanceMatrix,
23
25
  minLength,
24
26
  maxLength,
25
27
  });
26
- const groupedDiaIDS = diaIDs
27
- ? (0, openchemlib_utils_1.groupDiastereotopicAtomIDs)(diaIDs, molecule)
28
- : (0, openchemlib_utils_1.getGroupedDiastereotopicAtomIDs)(molecule);
29
28
  const diaIDswithAtomInfo = [];
30
- for (const diaID of groupedDiaIDS) {
29
+ for (const diaID of groupedDiaIDs) {
31
30
  diaIDswithAtomInfo.push({
32
31
  ...diaID,
33
32
  pathInfo: JSON.parse(JSON.stringify(pathsInfo[diaID.atoms[0]])),
34
33
  });
35
34
  }
36
- const xPrediction = await (0, getPredictions_1.getPredictions)(from, molecule, predictOptions, predictor, predictions);
37
- const yPrediction = from === to
38
- ? xPrediction
39
- : await (0, getPredictions_1.getPredictions)(to, molecule, predictOptions, predictor, predictions);
35
+ const yPrediction = predictions[to];
36
+ const xPrediction = predictions[from];
40
37
  if (!xPrediction || !yPrediction) {
41
38
  throw new Error('predictions are not availaible');
42
39
  }
@@ -88,22 +85,48 @@ async function predict2D(molecule, options = {}) {
88
85
  }
89
86
  }
90
87
  if (includeDiagonal) {
91
- addSelftCorrelation(group, { paths: pathsInfo, signalsByDiaID });
88
+ addSelfCorrelation(group, { paths: pathsInfo, signalsByDiaID });
92
89
  }
93
90
  // clusterize signals by distance
94
91
  const joinedSignals = Object.values(group);
95
92
  const zones = createZones(joinedSignals, { joinDistance, from, to });
96
93
  return {
97
- molfile: molecule.toMolfile(),
98
- diaIDs: spectra.x.diaIDs,
99
94
  nuclei: (0, getNuclei_1.getNuclei)({ from, to }),
100
95
  joinedSignals,
101
96
  signals: splitSignals(joinedSignals),
102
97
  zones,
103
- molecule,
104
98
  };
105
99
  }
106
100
  exports.predict2D = predict2D;
101
+ function getPossibleCorrelations(options) {
102
+ const { fromLabel, toLabel, distanceMatrix, molecule, diaIDs, minLength, maxLength, } = options;
103
+ const fromAtomicNumber = full_1.Molecule.getAtomicNoFromLabel(fromLabel);
104
+ const toAtomicNumber = full_1.Molecule.getAtomicNoFromLabel(toLabel);
105
+ const atomPathInfo = [];
106
+ for (let from = 0; from < molecule.getAllAtoms(); from++) {
107
+ const toSave = {
108
+ oclID: diaIDs[from],
109
+ paths: [],
110
+ };
111
+ for (let to = 0; to < molecule.getAllAtoms(); to++) {
112
+ if (from === to)
113
+ continue;
114
+ if (molecule.getAtomicNo(to) !== toAtomicNumber)
115
+ continue;
116
+ if (molecule.getAtomicNo(from) !== fromAtomicNumber)
117
+ continue;
118
+ const pathLength = distanceMatrix[from][to];
119
+ if (pathLength >= minLength && pathLength <= maxLength) {
120
+ toSave.paths.push({
121
+ from,
122
+ to,
123
+ });
124
+ }
125
+ }
126
+ atomPathInfo.push(toSave);
127
+ }
128
+ return atomPathInfo;
129
+ }
107
130
  function splitSignals(joinedSignals) {
108
131
  const signals = [];
109
132
  for (const signal of joinedSignals) {
@@ -118,7 +141,7 @@ function splitSignals(joinedSignals) {
118
141
  }
119
142
  return (0, setIDs_1.setIDs)(signals);
120
143
  }
121
- function addSelftCorrelation(group, options) {
144
+ function addSelfCorrelation(group, options) {
122
145
  const { paths = [], signalsByDiaID } = options;
123
146
  for (const atom of paths) {
124
147
  if (atom.paths.length < 1)
@@ -1 +1 @@
1
- {"version":3,"file":"predict2D.js","sourceRoot":"","sources":["../../../src/prediction/utils/predict2D.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"predict2D.js","sourceRoot":"","sources":["../../../src/prediction/utils/predict2D.ts"],"names":[],"mappings":";;;AAAA,uCAAgD;AAChD,yCAA2C;AAC3C,yCAAmC;AACnC,2CAA4C;AAE5C,oDAAiD;AAWjD,2CAAwC;AAoFxC,SAAS,WAAW,CAClB,OAAyB;IAEzB,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;AACH,CAAC;AAIM,KAAK,UAAU,SAAS,CAAC,QAAkB,EAAE,OAAyB;IAC3E,WAAW,CAAC,OAAO,CAAC,CAAC;IAErB,QAAQ,CAAC,oBAAoB,EAAE,CAAC;IAEhC,MAAM,EACJ,IAAI,EACJ,EAAE,EACF,MAAM,EACN,aAAa,EACb,SAAS,GAAG,CAAC,EACb,SAAS,EACT,WAAW,EACX,cAAc,EACd,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAClC,eAAe,GAAG,KAAK,GACxB,GAAG,OAAO,CAAC;IAEZ,MAAM,SAAS,GAAG,uBAAuB,CAAC;QACxC,QAAQ;QACR,SAAS,EAAE,IAAI;QACf,OAAO,EAAE,EAAE;QACX,MAAM;QACN,cAAc;QACd,SAAS;QACT,SAAS;KACV,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAA6C,EAAE,CAAC;IACxE,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE;QACjC,kBAAkB,CAAC,IAAI,CAAC;YACtB,GAAG,KAAK;YACR,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAChE,CAAC,CAAC;KACJ;IAED,MAAM,WAAW,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAEtC,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;KACnD;IAED,MAAM,OAAO,GAAqC;QAChD,CAAC,EAAE,WAAW;QACd,CAAC,EAAE,WAAW;KACf,CAAC;IAEF,MAAM,cAAc,GAAoB;QACtC,CAAC,EAAE,EAAE;QACL,CAAC,EAAE,EAAE;KACN,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE;QACjC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE;YAChD,IAAI,CAAC,MAAM,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAC7D,cAAc,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;SACjD;KACF;IAED,MAAM,KAAK,GAAgC,EAAE,CAAC;IAC9C,KAAK,MAAM,KAAK,IAAI,kBAAkB,EAAE;QACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAChC,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAExC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QAEhD,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE;YAC/B,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;gBAAE,SAAS;YAE1D,MAAM,WAAW,GAAwC;gBACvD,CAAC,EAAE,QAAQ;gBACX,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;aACtB,CAAC;YAEF,MAAM,GAAG,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;YAC5D,IAAI,GAAG,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;gBAC/D,SAAS;aACV;YAED,MAAM,IAAI,GAAQ,EAAE,EAAE,EAAE,IAAA,SAAU,GAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAQ,EAAE,EAAE,EAAE,IAAA,SAAU,GAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;YACvD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;gBAC9B,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;gBACtC,IAAI,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;gBACvD,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;aACxD;YAED,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,KAAK,CAAC,GAAG,CAAC,GAAG,MAAqB,CAAC;SACpC;KACF;IAED,IAAI,eAAe,EAAE;QACnB,kBAAkB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAC;KACjE;IAED,iCAAiC;IACjC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,WAAW,CAAC,aAAa,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IAErE,OAAO;QACL,MAAM,EAAE,IAAA,qBAAS,EAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAC/B,aAAa;QACb,OAAO,EAAE,YAAY,CAAC,aAAa,CAAC;QACpC,KAAK;KACc,CAAC;AACxB,CAAC;AA7GD,8BA6GC;AAMD,SAAS,uBAAuB,CAAC,OAAY;IAC3C,MAAM,EACJ,SAAS,EACT,OAAO,EACP,cAAc,EACd,QAAQ,EACR,MAAM,EACN,SAAS,EACT,SAAS,GACV,GAAG,OAAO,CAAC;IACZ,MAAM,gBAAgB,GAAG,eAAQ,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAClE,MAAM,cAAc,GAAG,eAAQ,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9D,MAAM,YAAY,GAA0B,EAAE,CAAC;IAC/C,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE;QACxD,MAAM,MAAM,GAAwB;YAClC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC;YACnB,KAAK,EAAE,EAAE;SACV,CAAC;QACF,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,EAAE,EAAE;YAClD,IAAI,IAAI,KAAK,EAAE;gBAAE,SAAS;YAC1B,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,cAAc;gBAAE,SAAS;YAC1D,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,gBAAgB;gBAAE,SAAS;YAC9D,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;YAC5C,IAAI,UAAU,IAAI,SAAS,IAAI,UAAU,IAAI,SAAS,EAAE;gBACtD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;oBAChB,IAAI;oBACJ,EAAE;iBACH,CAAC,CAAC;aACJ;SACF;QACD,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KAC3B;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAS,YAAY,CAAC,aAA4B;IAChD,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE;QAClC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE;YACxC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,EAAE;gBACxC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrD,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC5B,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC5B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACzB;SACF;KACF;IACD,OAAO,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAMD,SAAS,kBAAkB,CACzB,KAAkC,EAClC,OAAmC;IAEnC,MAAM,EAAE,KAAK,GAAG,EAAE,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAC/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,SAAS;QACvC,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC;YAAE,SAAS;QAEzC,MAAM,MAAM,GAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;QAErC,MAAM,IAAI,GAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QAC3B,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;YACvD,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;SACxD;QAED,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;QAEtB,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,MAAqB,CAAC;KAC9D;AACH,CAAC;AAOD,SAAS,WAAW,CAAC,OAAsB,EAAE,OAA2B;IACtE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACtB,OAAO,EAAe,CAAC;KACxB;IAED,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;IAC3C,MAAM,MAAM,GAAG,IAAI,kBAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEtE,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEjC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IACvC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IAEvC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CACtB,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAChD,CAAC;IAEF,MAAM,SAAS,GAAG,IAAA,iBAAK,EAAC,MAAM,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IACpE,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;IAEpD,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;QAC9B,MAAM,MAAM,GAAkB,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,MAAM;YAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE;gBACnC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;aAC7B;SACF;QAED,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,IAAA,SAAU,GAAE;YAChB,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YAC7C,OAAO,EAAE,MAAM;SAChB,CAAC,CAAC;KACJ;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,MAAM,CAAC,OAAsB,EAAE,OAA2B;IACjE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;IAC3C,IAAI,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACnC,IAAI,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACnC,IAAI,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACnC,IAAI,IAAI,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACnC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI;YAAE,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI;YAAE,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI;YAAE,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACjD,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI;YAAE,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;KAClD;IACD,OAAO;QACL,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,EAAE;QACrE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE;KAClE,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,QAAmB,EAAE,WAAmB;IAC7D,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,MAAM,GAAG,WAAW,EAAE;YAChC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;SACzB;KACF;IACD,OAAO,QAAQ,CAAC,MAAM,GAAG,cAAc;QACrC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC;QACtC,CAAC,CAAC,QAAQ,CAAC;AACf,CAAC"}
@@ -1,5 +1,4 @@
1
1
  import type { DataBaseStructure } from '../dataStructure';
2
- import type { GroupedDiaIDsWithHose } from './getFilteredIDiaIDs';
3
2
  export interface Prediction {
4
3
  diaIDs: string[];
5
4
  delta: number | null;
@@ -14,6 +13,6 @@ export interface Prediction {
14
13
  nb: number;
15
14
  };
16
15
  }
17
- export declare function queryByHose(diaIDs: GroupedDiaIDsWithHose, db: DataBaseStructure, options: {
16
+ export declare function queryByHose(diaIDs: any, db: DataBaseStructure, options: {
18
17
  maxSphereSize: number;
19
18
  }): Prediction[];
@@ -1 +1 @@
1
- {"version":3,"file":"queryByHOSE.js","sourceRoot":"","sources":["../../../src/prediction/utils/queryByHOSE.ts"],"names":[],"mappings":";;;AAkBA,SAAgB,WAAW,CACzB,MAA6B,EAC7B,EAAqB,EACrB,OAAkC;IAElC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAElC,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE;QAC5B,IAAI,GAAG,CAAC;QACR,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;gBACT,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7B,KAAK,GAAG,CAAC,CAAC;aACX;SACF;QAED,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE;YACtC,MAAM,IAAI,GAAG;gBACX,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;gBACvB,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC1B,KAAK,EAAE,CAAC,UAAU,CAAC;gBACnB,OAAO,EAAE,CAAC;gBACV,KAAK;gBACL,SAAS,EACP,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;oBACnB,CAAC,CAAC;wBACE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;wBACZ,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;wBACV,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;wBACX,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;wBACX,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;qBACX;oBACH,CAAC,CAAC,SAAS;aAChB,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACrB;KACF;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAxCD,kCAwCC"}
1
+ {"version":3,"file":"queryByHOSE.js","sourceRoot":"","sources":["../../../src/prediction/utils/queryByHOSE.ts"],"names":[],"mappings":";;;AAkBA,SAAgB,WAAW,CACzB,MAAW,EACX,EAAqB,EACrB,OAAkC;IAElC,MAAM,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC;IAElC,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE;QAC5B,IAAI,GAAG,CAAC;QACR,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC/C,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;gBACT,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7B,KAAK,GAAG,CAAC,CAAC;aACX;SACF;QAED,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE;YACtC,MAAM,IAAI,GAAG;gBACX,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;gBACvB,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;gBAC1B,KAAK,EAAE,CAAC,UAAU,CAAC;gBACnB,OAAO,EAAE,CAAC;gBACV,KAAK;gBACL,SAAS,EACP,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;oBACnB,CAAC,CAAC;wBACE,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;wBACZ,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;wBACV,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;wBACX,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;wBACX,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;qBACX;oBACH,CAAC,CAAC,SAAS;aAChB,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACrB;KACF;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAxCD,kCAwCC"}
@@ -0,0 +1,2 @@
1
+ import { PredictionOptionsByExperiment } from '../predict';
2
+ export declare function shouldPredict(key: keyof PredictionOptionsByExperiment, options: PredictionOptionsByExperiment): boolean;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.shouldPredict = void 0;
4
+ function shouldPredict(key, options) {
5
+ if (key in options)
6
+ return true;
7
+ const heteroRequired = 'hsqc' in options || 'hmbc' in options;
8
+ return key === 'C'
9
+ ? heteroRequired
10
+ : key === 'H'
11
+ ? heteroRequired || 'cosy' in options
12
+ : false;
13
+ }
14
+ exports.shouldPredict = shouldPredict;
15
+ //# sourceMappingURL=shouldPredict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shouldPredict.js","sourceRoot":"","sources":["../../../src/prediction/utils/shouldPredict.ts"],"names":[],"mappings":";;;AAEA,SAAgB,aAAa,CAC3B,GAAwC,EACxC,OAAsC;IAEtC,IAAI,GAAG,IAAI,OAAO;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,cAAc,GAAG,MAAM,IAAI,OAAO,IAAI,MAAM,IAAI,OAAO,CAAC;IAC9D,OAAO,GAAG,KAAK,GAAG;QAChB,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,KAAK,GAAG;YACb,CAAC,CAAC,cAAc,IAAI,MAAM,IAAI,OAAO;YACrC,CAAC,CAAC,KAAK,CAAC;AACZ,CAAC;AAXD,sCAWC"}
@@ -1,6 +1,5 @@
1
1
  import { v4 as generateID } from '@lukeed/uuid';
2
- import { ensureHeterotopicChiralBonds } from 'openchemlib-utils';
3
- import { predictCarbon, } from '../prediction/predictCarbon';
2
+ import { predict } from '..';
4
3
  import { buildAssignments, } from './utils/oneDimensionalAssignment/buildAssignments';
5
4
  function checkAtomsAndDiaIDs(signals) {
6
5
  for (const signal of signals) {
@@ -24,8 +23,12 @@ export async function get13CAssignments(ranges, molecule, options = {}) {
24
23
  if (!molecule) {
25
24
  throw new Error('It is needed a OCL molecule instance to assign');
26
25
  }
27
- ensureHeterotopicChiralBonds(molecule);
28
- const { joinedSignals } = await predictCarbon(molecule, predictionOptions);
26
+ const { spectra } = await predict(molecule, {
27
+ predictOptions: {
28
+ C: predictionOptions,
29
+ },
30
+ });
31
+ const joinedSignals = spectra.carbon?.joinedSignals || [];
29
32
  checkAtomsAndDiaIDs(joinedSignals);
30
33
  const copyRanges = checkIntegration(ranges);
31
34
  const targets = {};
@@ -1 +1 @@
1
- {"version":3,"file":"get13CAssignments.js","sourceRoot":"","sources":["../../src/assignment/get13CAssignments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EACL,aAAa,GAEd,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAEL,gBAAgB,GACjB,MAAM,mDAAmD,CAAC;AAE3D,SAAS,mBAAmB,CAC1B,OAAsB;IAEtB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACzE;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAkB;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;YAAE,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;KAC5D;IACD,OAAO,MAAmC,CAAC;AAC7C,CAAC;AA8BD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAkB,EAClB,QAAkB,EAClB,UAAoC,EAAE;IAEtC,MAAM,EACJ,eAAe,GAAG,EAAE,EACpB,QAAQ,GAAG,CAAC,EACZ,YAAY,GAAG,EAAE,EACjB,mBAAmB,GAAG,CAAC,EACvB,OAAO,GAAG,IAAI,EACd,iBAAiB,GAAG,EAAE,GACvB,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IAED,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAE3E,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAY,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE;QAC9B,MAAM,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;KACjD;IAED,OAAO,gBAAgB,CAAC;QACtB,eAAe;QACf,OAAO;QACP,QAAQ;QACR,mBAAmB;QACnB,YAAY;QACZ,OAAO;QACP,aAAa;QACb,yBAAyB,EAAE,KAAK;KACjC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"get13CAssignments.js","sourceRoot":"","sources":["../../src/assignment/get13CAssignments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAqC,OAAO,EAAE,MAAM,IAAI,CAAC;AAQhE,OAAO,EAEL,gBAAgB,GACjB,MAAM,mDAAmD,CAAC;AAE3D,SAAS,mBAAmB,CAC1B,OAAsB;IAEtB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACzE;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAkB;IAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS;YAAE,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;KAC5D;IACD,OAAO,MAAmC,CAAC;AAC7C,CAAC;AA8BD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,MAAkB,EAClB,QAAkB,EAClB,UAAoC,EAAE;IAEtC,MAAM,EACJ,eAAe,GAAG,EAAE,EACpB,QAAQ,GAAG,CAAC,EACZ,YAAY,GAAG,EAAE,EACjB,mBAAmB,GAAG,CAAC,EACvB,OAAO,GAAG,IAAI,EACd,iBAAiB,GAAG,EAAE,GACvB,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;QAC1C,cAAc,EAAE;YACd,CAAC,EAAE,iBAAiB;SACrB;KACF,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,aAAa,IAAI,EAAE,CAAC;IAE1D,mBAAmB,CAAC,aAAa,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAY,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE;QAC9B,MAAM,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;KACjD;IAED,OAAO,gBAAgB,CAAC;QACtB,eAAe;QACf,OAAO;QACP,QAAQ;QACR,mBAAmB;QACnB,YAAY;QACZ,OAAO;QACP,aAAa;QACb,yBAAyB,EAAE,KAAK;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { v4 as generateID } from '@lukeed/uuid';
2
- import { ensureHeterotopicChiralBonds } from 'openchemlib-utils';
3
- import { predictProton, } from '../prediction/predictProton';
2
+ import { predict } from '..';
4
3
  import { buildAssignments, } from './utils/oneDimensionalAssignment/buildAssignments';
5
4
  function checkAtomsAndDiaIDs(signals) {
6
5
  for (const signal of signals) {
@@ -24,9 +23,12 @@ export async function get1HAssignments(ranges, molecule, options = {}) {
24
23
  if (!molecule) {
25
24
  throw new Error('It is needed a OCL molecule instance to assign');
26
25
  }
27
- molecule.addImplicitHydrogens();
28
- ensureHeterotopicChiralBonds(molecule);
29
- const { joinedSignals } = await predictProton(molecule, predictionOptions);
26
+ const { spectra } = await predict(molecule, {
27
+ predictOptions: {
28
+ H: predictionOptions,
29
+ },
30
+ });
31
+ const joinedSignals = spectra.proton?.joinedSignals || [];
30
32
  checkForIntegration(ranges);
31
33
  checkAtomsAndDiaIDs(joinedSignals);
32
34
  const targets = {};
@@ -1 +1 @@
1
- {"version":3,"file":"get1HAssignments.js","sourceRoot":"","sources":["../../src/assignment/get1HAssignments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAEhD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAGjE,OAAO,EACL,aAAa,GAEd,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EACL,gBAAgB,GAEjB,MAAM,mDAAmD,CAAC;AAO3D,SAAS,mBAAmB,CAC1B,OAAsB;IAEtB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACzE;AACH,CAAC;AAID,SAAS,mBAAmB,CAC1B,MAAkB;IAElB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;KACF;AACH,CAAC;AAgCD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAkB,EAClB,QAAkB,EAClB,UAAmC,EAAE;IAErC,MAAM,EACJ,eAAe,EACf,QAAQ,GAAG,CAAC,EACZ,YAAY,GAAG,EAAE,EACjB,mBAAmB,GAAG,CAAC,EACvB,OAAO,GAAG,IAAI,EACd,iBAAiB,GAAG,EAAE,GACvB,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IAED,QAAQ,CAAC,oBAAoB,EAAE,CAAC;IAChC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;IAEvC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IAE3E,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5B,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAY,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,MAAM,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;KACjD;IAED,OAAO,gBAAgB,CAAC;QACtB,eAAe;QACf,OAAO;QACP,QAAQ;QACR,mBAAmB;QACnB,YAAY;QACZ,OAAO;QACP,aAAa;QACb,yBAAyB,EAAE,IAAI;KAChC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"get1HAssignments.js","sourceRoot":"","sources":["../../src/assignment/get1HAssignments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGhD,OAAO,EAAY,OAAO,EAAE,MAAM,IAAI,CAAC;AAKvC,OAAO,EACL,gBAAgB,GAEjB,MAAM,mDAAmD,CAAC;AAO3D,SAAS,mBAAmB,CAC1B,OAAsB;IAEtB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;KACzE;AACH,CAAC;AAID,SAAS,mBAAmB,CAC1B,MAAkB;IAElB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SACxD;KACF;AACH,CAAC;AAgCD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAkB,EAClB,QAAkB,EAClB,UAAmC,EAAE;IAErC,MAAM,EACJ,eAAe,EACf,QAAQ,GAAG,CAAC,EACZ,YAAY,GAAG,EAAE,EACjB,mBAAmB,GAAG,CAAC,EACvB,OAAO,GAAG,IAAI,EACd,iBAAiB,GAAG,EAAE,GACvB,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;KACnE;IAED,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;QAC1C,cAAc,EAAE;YACd,CAAC,EAAE,iBAAiB;SACrB;KACF,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,aAAa,IAAI,EAAE,CAAC;IAE1D,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5B,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAY,EAAE,CAAC;IAC5B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,MAAM,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,GAAG,KAAK,CAAC;QACpC,OAAO,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;KACjD;IAED,OAAO,gBAAgB,CAAC;QACtB,eAAe;QACf,OAAO;QACP,QAAQ;QACR,mBAAmB;QACnB,YAAY;QACZ,OAAO;QACP,aAAa;QACb,yBAAyB,EAAE,IAAI;KAChC,CAAC,CAAC;AACL,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import TreeSet from 'ml-tree-set';
2
2
  import { getConnectivityMatrix } from 'openchemlib-utils';
3
- import { predictCarbon } from '../../../prediction/predictCarbon';
4
- import { predictProton } from '../../../prediction/predictProton';
3
+ import { predict, } from '../../../prediction/predict';
5
4
  import { createMapPossibleAssignment, } from './createMapPossibleAssignment';
6
5
  import { exploreTree } from './exploreTree';
7
6
  import { isSpectraData1D } from './isSpectraData1D';
@@ -9,7 +8,6 @@ import { searchIndices } from './searchIndices';
9
8
  const comparator = (a, b) => {
10
9
  return b.score - a.score;
11
10
  };
12
- const predictor = { H: predictProton, C: predictCarbon };
13
11
  function checkNMRSignal1D(signals) {
14
12
  const keys = [
15
13
  'nbAtoms',
@@ -43,11 +41,15 @@ export async function buildAssignments(props) {
43
41
  let diaIDPeerPossibleAssignment = {};
44
42
  for (const atomTypesToPredict of assignmentOrder) {
45
43
  for (const atomType of atomTypesToPredict) {
46
- const options = predictionOptions[atomType];
44
+ const options = {};
45
+ options[atomType] = predictionOptions[atomType];
47
46
  const predictedSignals = inputPrediction[atomType];
48
- const { joinedSignals } = predictedSignals
49
- ? { joinedSignals: predictedSignals }
50
- : await predictor[atomType](molecule, options);
47
+ const joinedSignals = await getJoinedSignals({
48
+ molecule,
49
+ predictedSignals,
50
+ options,
51
+ atomType,
52
+ });
51
53
  checkNMRSignal1D(joinedSignals);
52
54
  if (!predictions[atomType])
53
55
  predictions[atomType] = {};
@@ -202,4 +204,13 @@ function fillPartial(nSources, value = null) {
202
204
  }
203
205
  return partial;
204
206
  }
207
+ async function getJoinedSignals(input) {
208
+ const { molecule, predictedSignals, options, atomType } = input;
209
+ if (predictedSignals)
210
+ return predictedSignals;
211
+ const { spectra } = await predict(molecule, {
212
+ predictOptions: options,
213
+ });
214
+ return spectra[atomType === 'C' ? 'carbon' : 'proton']?.joinedSignals || [];
215
+ }
205
216
  //# sourceMappingURL=buildAssignments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildAssignments.js","sourceRoot":"","sources":["../../../../src/assignment/utils/generalAssignment/buildAssignments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildAssignments.js","sourceRoot":"","sources":["../../../../src/assignment/utils/generalAssignment/buildAssignments.ts"],"names":[],"mappings":"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"}
package/lib-esm/index.js CHANGED
@@ -5,13 +5,6 @@ export * from './constants/couplingPatterns';
5
5
  export * from './peaks/peaksFilterImpurities';
6
6
  export * from './peaks/peaksToXY';
7
7
  export * from './peaks/peakToXY';
8
- export * from './prediction/predictProton';
9
- export * from './prediction/predictCarbon';
10
- export * from './prediction/predictCOSY';
11
- export * from './prediction/predictHSQC';
12
- export * from './prediction/predictHMBC';
13
- export * from './prediction/predictAll';
14
- export * from './prediction/predictAllSpectra';
15
8
  export * from './assignment/get1HAssignments';
16
9
  export * from './assignment/get13CAssignments';
17
10
  export * from './assignment/getAssignments';
@@ -25,6 +18,8 @@ export * from './signals/signalsToFID';
25
18
  export * from './signals/simulation/simulate1D';
26
19
  export * from './signal/signalJoinCouplings';
27
20
  export * from './signal/signalMultiplicityPattern';
21
+ export * from './prediction/predict';
22
+ export * from './prediction/predictSpectra';
28
23
  export * from './utilities/resurrect';
29
24
  export * from './utilities/rangeFromSignal';
30
25
  export * from './utilities/getFrequency';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,gCAAgC,CAAC;AAE/C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAE7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAE3C,cAAc,2BAA2B,CAAC;AAE1C,cAAc,kCAAkC,CAAC;AAEjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAElD,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAC;AACzD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,iDAAiD,CAAC;AAChE,cAAc,oDAAoD,CAAC;AACnE,OAAO,KAAK,cAAc,MAAM,qCAAqC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AAEjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAE5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AAEpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iCAAiC,CAAC;AAChD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AAEnD,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAE5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAE7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AAEzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAE7C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAE3C,cAAc,2BAA2B,CAAC;AAE1C,cAAc,kCAAkC,CAAC;AAEjD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAElD,cAAc,iBAAiB,CAAC;AAChC,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAC;AACzD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,wCAAwC,CAAC;AACvD,cAAc,iDAAiD,CAAC;AAChE,cAAc,oDAAoD,CAAC;AACnE,OAAO,KAAK,cAAc,MAAM,qCAAqC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=GroupDiastereotopicAtomIDs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupDiastereotopicAtomIDs.js","sourceRoot":"","sources":["../../src/prediction/GroupDiastereotopicAtomIDs.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=PredictionBase1D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PredictionBase1D.js","sourceRoot":"","sources":["../../src/prediction/PredictionBase1D.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=PredictionBase2D.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PredictionBase2D.js","sourceRoot":"","sources":["../../src/prediction/PredictionBase2D.ts"],"names":[],"mappings":""}
@@ -0,0 +1,109 @@
1
+ import { getHoseCodesAndInfo, groupDiastereotopicAtomIDs, } from 'openchemlib-utils';
2
+ import { predictCOSY } from './predictCOSY';
3
+ import { predictCarbon } from './predictCarbon';
4
+ import { predictHMBC } from './predictHMBC';
5
+ import { predictHSQC } from './predictHSQC';
6
+ import { predictProton } from './predictProton';
7
+ import { shouldPredict } from './utils/shouldPredict';
8
+ const toPredict = {
9
+ cosy: {
10
+ predictor: predictCOSY,
11
+ required: ['H'],
12
+ message: 'Proton prediction is missing so COSY could not be generated.',
13
+ },
14
+ hsqc: {
15
+ predictor: predictHSQC,
16
+ required: ['H', 'C'],
17
+ message: 'Carbon and / or proton prediction is missing so HSQC could not be generated.',
18
+ },
19
+ hmbc: {
20
+ predictor: predictHMBC,
21
+ required: ['H', 'C'],
22
+ message: 'Carbon and / or proton prediction is missing so HMBC could not be generated.',
23
+ },
24
+ };
25
+ /**
26
+ * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
27
+ * @returns {Promise<object>} - object with molfile, diaIDs, 1D and 2D signals, joined signals, ranges and zones.
28
+ */
29
+ export async function predict(molecule, options = {}) {
30
+ const { logger, joinDistance = { H: 0.05, C: 0.5 }, predictOptions = {
31
+ H: {},
32
+ C: {},
33
+ hsqc: {},
34
+ hmbc: {},
35
+ cosy: {},
36
+ }, } = options;
37
+ const hoseCodesAndInfo = getHoseCodesAndInfo(molecule, {
38
+ maxSphereSize: predictOptions?.C?.maxSphereSize,
39
+ });
40
+ const { diaIDs = [], moleculeWithHydrogens, hoses, molfileWithH, distanceMatrix, } = hoseCodesAndInfo;
41
+ const groupedDiaIDs = groupDiastereotopicAtomIDs(diaIDs, moleculeWithHydrogens);
42
+ const protonPrediction = shouldPredict('H', predictOptions)
43
+ ? await predictProton(molfileWithH, {
44
+ ...predictOptions?.H,
45
+ diaIDs,
46
+ distanceMatrix,
47
+ })
48
+ : undefined;
49
+ const carbonPrediction = shouldPredict('C', predictOptions)
50
+ ? await predictCarbon({
51
+ ...predictOptions?.C,
52
+ molfile: molfileWithH,
53
+ groupedDiaIDs,
54
+ hoses,
55
+ })
56
+ : undefined;
57
+ const spectra = {};
58
+ const predictions = {};
59
+ if (check1DPrediction(protonPrediction, diaIDs)) {
60
+ predictions.H = protonPrediction;
61
+ if ('H' in predictOptions)
62
+ spectra.proton = protonPrediction;
63
+ }
64
+ if (check1DPrediction(carbonPrediction, diaIDs)) {
65
+ predictions.C = carbonPrediction;
66
+ if ('C' in predictOptions)
67
+ spectra.carbon = carbonPrediction;
68
+ }
69
+ const optionsTwoD = {
70
+ predictions,
71
+ joinDistance,
72
+ distanceMatrix,
73
+ groupedDiaIDs,
74
+ diaIDs,
75
+ };
76
+ for (const key in predictOptions) {
77
+ if (key === 'H' || key === 'C')
78
+ continue;
79
+ const { predictor, required, message } = toPredict[key];
80
+ if (required.every((key) => key in predictions)) {
81
+ spectra[key] = await predictor(molecule, {
82
+ ...optionsTwoD,
83
+ ...predictOptions[key],
84
+ });
85
+ }
86
+ else if (logger) {
87
+ logger.warn(message);
88
+ }
89
+ }
90
+ return {
91
+ ...hoseCodesAndInfo,
92
+ groupedDiaIDs,
93
+ spectra,
94
+ };
95
+ }
96
+ function check1DPrediction(prediction, diaIDs = []) {
97
+ if (!prediction)
98
+ return false;
99
+ if (prediction.ranges.length === 0)
100
+ return false;
101
+ const { signals } = prediction;
102
+ for (const signal of signals) {
103
+ const isCorrect = signal.diaIDs?.every((diaID) => diaIDs.includes(diaID));
104
+ if (!isCorrect)
105
+ return false;
106
+ }
107
+ return true;
108
+ }
109
+ //# sourceMappingURL=predict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/prediction/predict.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,18 @@
1
- import { predictProton } from './predictProton';
2
1
  import { predict2D } from './utils/predict2D';
3
2
  /**
4
3
  * Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
5
4
  * @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
6
5
  */
7
- export async function predictCOSY(molecule, options = {}) {
8
- const { minLength = 2, maxLength = 3, predictions, predictor = { H: predictProton }, predictOptions, joinDistance = { H: 0.05, C: 0.5 }, includeDiagonal = true, } = options;
6
+ export async function predictCOSY(molecule, options) {
7
+ const { minLength = 2, maxLength = 3, joinDistance = { H: 0.05, C: 0.5 }, includeDiagonal = true, } = options;
9
8
  return predict2D(molecule, {
9
+ ...options,
10
10
  from: 'H',
11
11
  to: 'H',
12
- predictor,
13
12
  minLength,
14
13
  maxLength,
15
14
  joinDistance,
16
- predictions,
17
15
  includeDiagonal,
18
- predictOptions,
19
16
  });
20
17
  }
21
18
  //# sourceMappingURL=predictCOSY.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"predictCOSY.js","sourceRoot":"","sources":["../../src/prediction/predictCOSY.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAwB,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,SAAS,EAAa,MAAM,mBAAmB,CAAC;AA4CzD;;;GAGG;AAEH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,UAA8B,EAAE;IAEhC,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,WAAW,EACX,SAAS,GAAG,EAAE,CAAC,EAAE,aAAa,EAAE,EAChC,cAAc,EACd,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAClC,eAAe,GAAG,IAAI,GACvB,GAAG,OAAO,CAAC;IAEZ,OAAO,SAAS,CAAC,QAAQ,EAAE;QACzB,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,SAAS;QACT,YAAY;QACZ,WAAW;QACX,eAAe;QACf,cAAc;KACf,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"predictCOSY.js","sourceRoot":"","sources":["../../src/prediction/predictCOSY.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAgD9C;;;GAGG;AAEH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAkB,EAClB,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAClC,eAAe,GAAG,IAAI,GACvB,GAAG,OAAO,CAAC;IAEZ,OAAO,SAAS,CAAC,QAAQ,EAAE;QACzB,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;QACZ,eAAe;KAChB,CAAC,CAAC;AACL,CAAC"}