nmr-processing 10.0.5 → 10.0.6
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.
- package/lib/datum/FiltersManager.js +1 -0
- package/lib/datum/FiltersManager.js.map +1 -1
- package/lib/prediction/predict.js +14 -25
- package/lib/prediction/predict.js.map +1 -1
- package/lib/prediction/predictCOSY.d.ts +2 -20
- package/lib/prediction/predictCOSY.js +2 -2
- package/lib/prediction/predictCOSY.js.map +1 -1
- package/lib/prediction/predictCarbon.d.ts +2 -15
- package/lib/prediction/predictCarbon.js +14 -16
- package/lib/prediction/predictCarbon.js.map +1 -1
- package/lib/prediction/predictHMBC.d.ts +2 -12
- package/lib/prediction/predictHMBC.js +2 -2
- package/lib/prediction/predictHMBC.js.map +1 -1
- package/lib/prediction/predictHSQC.d.ts +2 -12
- package/lib/prediction/predictHSQC.js +2 -2
- package/lib/prediction/predictHSQC.js.map +1 -1
- package/lib/prediction/predictProton.d.ts +2 -9
- package/lib/prediction/predictProton.js +9 -10
- package/lib/prediction/predictProton.js.map +1 -1
- package/lib/prediction/predictSpectra.d.ts +3 -2
- package/lib/prediction/predictSpectra.js +12 -7
- package/lib/prediction/predictSpectra.js.map +1 -1
- package/lib/prediction/utils/predict2D.d.ts +2 -12
- package/lib/prediction/utils/predict2D.js +9 -9
- package/lib/prediction/utils/predict2D.js.map +1 -1
- package/lib/prediction/utils/queryByHOSE.d.ts +2 -1
- package/lib/prediction/utils/queryByHOSE.js +29 -27
- package/lib/prediction/utils/queryByHOSE.js.map +1 -1
- package/lib/ranges/rangesToACS.js.map +1 -1
- package/lib/xyz/xyzAutoSignalsPicking.js +1 -1
- package/lib/xyz/xyzAutoSignalsPicking.js.map +1 -1
- package/lib-esm/datum/FiltersManager.js +1 -0
- package/lib-esm/datum/FiltersManager.js.map +1 -1
- package/lib-esm/prediction/predict.js +15 -26
- package/lib-esm/prediction/predict.js.map +1 -1
- package/lib-esm/prediction/predictCOSY.js +2 -2
- package/lib-esm/prediction/predictCOSY.js.map +1 -1
- package/lib-esm/prediction/predictCarbon.js +16 -18
- package/lib-esm/prediction/predictCarbon.js.map +1 -1
- package/lib-esm/prediction/predictHMBC.js +2 -2
- package/lib-esm/prediction/predictHMBC.js.map +1 -1
- package/lib-esm/prediction/predictHSQC.js +2 -2
- package/lib-esm/prediction/predictHSQC.js.map +1 -1
- package/lib-esm/prediction/predictProton.js +9 -10
- package/lib-esm/prediction/predictProton.js.map +1 -1
- package/lib-esm/prediction/predictSpectra.js +10 -5
- package/lib-esm/prediction/predictSpectra.js.map +1 -1
- package/lib-esm/prediction/utils/predict2D.js +9 -9
- package/lib-esm/prediction/utils/predict2D.js.map +1 -1
- package/lib-esm/prediction/utils/queryByHOSE.js +29 -27
- package/lib-esm/prediction/utils/queryByHOSE.js.map +1 -1
- package/lib-esm/ranges/rangesToACS.js.map +1 -1
- package/lib-esm/xyz/xyzAutoSignalsPicking.js +1 -1
- package/lib-esm/xyz/xyzAutoSignalsPicking.js.map +1 -1
- package/package.json +2 -2
- package/src/datum/FiltersManager.ts +1 -0
- package/src/prediction/predict.ts +15 -40
- package/src/prediction/predictCOSY.ts +3 -19
- package/src/prediction/predictCarbon.ts +19 -33
- package/src/prediction/predictHMBC.ts +3 -13
- package/src/prediction/predictHSQC.ts +3 -13
- package/src/prediction/predictProton.ts +11 -19
- package/src/prediction/predictSpectra.ts +14 -6
- package/src/prediction/utils/predict2D.ts +13 -29
- package/src/prediction/utils/queryByHOSE.ts +31 -30
- package/src/ranges/rangesToACS.ts +1 -0
- package/src/xyz/xyzAutoSignalsPicking.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FiltersManager.js","sourceRoot":"","sources":["../../src/datum/FiltersManager.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FiltersManager.js","sourceRoot":"","sources":["../../src/datum/FiltersManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,27 +37,17 @@ async function predict(molecule, options = {}) {
|
|
|
37
37
|
hmbc: {},
|
|
38
38
|
cosy: {},
|
|
39
39
|
}, } = options;
|
|
40
|
-
const
|
|
41
|
-
maxSphereSize: predictOptions?.C?.maxSphereSize,
|
|
42
|
-
});
|
|
43
|
-
const { diaIDs = [], moleculeWithHydrogens, hoses, molfileWithH, distanceMatrix, } = hoseCodesAndInfo;
|
|
44
|
-
const groupedDiaIDs = (0, openchemlib_utils_1.groupDiastereotopicAtomIDs)(diaIDs, moleculeWithHydrogens);
|
|
40
|
+
const topicMolecule = new openchemlib_utils_1.TopicMolecule(molecule);
|
|
45
41
|
const protonPrediction = (0, shouldPredict_1.shouldPredict)('H', predictOptions)
|
|
46
|
-
? await (0, predictProton_1.predictProton)(
|
|
42
|
+
? await (0, predictProton_1.predictProton)(topicMolecule, {
|
|
47
43
|
...predictOptions?.H,
|
|
48
|
-
diaIDs,
|
|
49
|
-
distanceMatrix,
|
|
50
44
|
})
|
|
51
45
|
: undefined;
|
|
52
46
|
const carbonPrediction = (0, shouldPredict_1.shouldPredict)('C', predictOptions)
|
|
53
|
-
? await (0, predictCarbon_1.predictCarbon)(
|
|
54
|
-
...predictOptions?.C,
|
|
55
|
-
molfile: molfileWithH,
|
|
56
|
-
groupedDiaIDs,
|
|
57
|
-
hoses,
|
|
58
|
-
})
|
|
47
|
+
? await (0, predictCarbon_1.predictCarbon)(topicMolecule, predictOptions?.C)
|
|
59
48
|
: undefined;
|
|
60
49
|
const spectra = {};
|
|
50
|
+
const diaIDs = topicMolecule.diaIDs;
|
|
61
51
|
const predictions = {};
|
|
62
52
|
if (check1DPrediction(protonPrediction, diaIDs)) {
|
|
63
53
|
predictions.H = protonPrediction;
|
|
@@ -69,20 +59,14 @@ async function predict(molecule, options = {}) {
|
|
|
69
59
|
if ('C' in predictOptions)
|
|
70
60
|
spectra.carbon = carbonPrediction;
|
|
71
61
|
}
|
|
72
|
-
const optionsTwoD = {
|
|
73
|
-
predictions,
|
|
74
|
-
joinDistance,
|
|
75
|
-
distanceMatrix,
|
|
76
|
-
groupedDiaIDs,
|
|
77
|
-
diaIDs,
|
|
78
|
-
};
|
|
79
62
|
for (const key in predictOptions) {
|
|
80
63
|
if (key === 'H' || key === 'C')
|
|
81
64
|
continue;
|
|
82
65
|
const { predictor, required, message } = toPredict[key];
|
|
83
66
|
if (required.every((key) => key in predictions)) {
|
|
84
|
-
spectra[key] = await predictor(
|
|
85
|
-
|
|
67
|
+
spectra[key] = await predictor(topicMolecule, {
|
|
68
|
+
predictions,
|
|
69
|
+
joinDistance,
|
|
86
70
|
...predictOptions[key],
|
|
87
71
|
});
|
|
88
72
|
}
|
|
@@ -91,8 +75,13 @@ async function predict(molecule, options = {}) {
|
|
|
91
75
|
}
|
|
92
76
|
}
|
|
93
77
|
return {
|
|
94
|
-
|
|
95
|
-
|
|
78
|
+
diaIDs: topicMolecule.diaIDs,
|
|
79
|
+
hoses: topicMolecule.hoseCodes,
|
|
80
|
+
distanceMatrix: topicMolecule.distanceMatrix,
|
|
81
|
+
moleculeWithHydrogens: topicMolecule.moleculeWithH,
|
|
82
|
+
groupedDiaIDs: topicMolecule.getGroupedDiastereotopicAtomIDs(),
|
|
83
|
+
molfile: topicMolecule.toMolfile(),
|
|
84
|
+
molfileWithH: topicMolecule.toMolfileWithH(),
|
|
96
85
|
spectra,
|
|
97
86
|
};
|
|
98
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/prediction/predict.ts"],"names":[],"mappings":";;;AAEA,
|
|
1
|
+
{"version":3,"file":"predict.js","sourceRoot":"","sources":["../../src/prediction/predict.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { GroupDiastereotopicAtomIDs } from './GroupDiastereotopicAtomIDs';
|
|
1
|
+
import { TopicMolecule } from 'openchemlib-utils';
|
|
3
2
|
import type { PredictionBase1D } from './PredictionBase1D';
|
|
4
|
-
import { PredictProtonOptions } from './predictProton';
|
|
5
3
|
export interface PredictCOSYOptions {
|
|
6
4
|
/**
|
|
7
5
|
* maximum number of bonds to take into account.
|
|
@@ -13,13 +11,6 @@ export interface PredictCOSYOptions {
|
|
|
13
11
|
* @default 2
|
|
14
12
|
*/
|
|
15
13
|
minLength?: number;
|
|
16
|
-
/**
|
|
17
|
-
* mono dimensional signal to generate the bidimenionals cross peaks.
|
|
18
|
-
* The object should has properties with name equal to "H" and "C".
|
|
19
|
-
*/
|
|
20
|
-
predictOptions?: {
|
|
21
|
-
H?: PredictProtonOptions;
|
|
22
|
-
};
|
|
23
14
|
/**
|
|
24
15
|
* signals with euclidean distance in ppm less than this it will
|
|
25
16
|
* joined into a zone.
|
|
@@ -43,18 +34,9 @@ export interface PredictCOSYOptions {
|
|
|
43
34
|
* @default true
|
|
44
35
|
*/
|
|
45
36
|
includeDiagonal?: boolean;
|
|
46
|
-
/**
|
|
47
|
-
* diastereotopic atom ids of the molecule.
|
|
48
|
-
*/
|
|
49
|
-
diaIDs: string[];
|
|
50
|
-
/**
|
|
51
|
-
* grouped diastereotopic atom ids of the molecule.
|
|
52
|
-
*/
|
|
53
|
-
groupedDiaIDs: GroupDiastereotopicAtomIDs[];
|
|
54
|
-
distanceMatrix: number[][];
|
|
55
37
|
}
|
|
56
38
|
/**
|
|
57
39
|
* Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
|
|
58
40
|
* @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
|
|
59
41
|
*/
|
|
60
|
-
export declare function predictCOSY(
|
|
42
|
+
export declare function predictCOSY(topicMolecule: TopicMolecule, options: PredictCOSYOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
|
|
@@ -6,9 +6,9 @@ const predict2D_1 = require("./utils/predict2D");
|
|
|
6
6
|
* Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
|
|
7
7
|
* @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
|
|
8
8
|
*/
|
|
9
|
-
async function predictCOSY(
|
|
9
|
+
async function predictCOSY(topicMolecule, options) {
|
|
10
10
|
const { minLength = 2, maxLength = 3, joinDistance = { H: 0.05, C: 0.5 }, includeDiagonal = true, } = options;
|
|
11
|
-
return (0, predict2D_1.predict2D)(
|
|
11
|
+
return (0, predict2D_1.predict2D)(topicMolecule, {
|
|
12
12
|
...options,
|
|
13
13
|
from: 'H',
|
|
14
14
|
to: 'H',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predictCOSY.js","sourceRoot":"","sources":["../../src/prediction/predictCOSY.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"predictCOSY.js","sourceRoot":"","sources":["../../src/prediction/predictCOSY.ts"],"names":[],"mappings":";;;AAGA,iDAA8C;AAkC9C;;;GAGG;AAEI,KAAK,UAAU,WAAW,CAC/B,aAA4B,EAC5B,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,IAAA,qBAAS,EAAC,aAAa,EAAE;QAC9B,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;QACZ,eAAe;KAChB,CAAC,CAAC;AACL,CAAC;AApBD,kCAoBC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { TopicMolecule } from 'openchemlib-utils';
|
|
1
2
|
import { PredictionBase1D } from './PredictionBase1D';
|
|
2
3
|
import type { DataBaseStructure } from './dataStructure';
|
|
3
|
-
import { GroupedDiaID } from 'openchemlib-utils';
|
|
4
4
|
export interface PredictCarbonOptions {
|
|
5
5
|
/**
|
|
6
6
|
* custom database, each entry in the levels should has
|
|
@@ -17,23 +17,10 @@ export interface PredictCarbonOptions {
|
|
|
17
17
|
* @default 'maximum level in the database'
|
|
18
18
|
*/
|
|
19
19
|
maxSphereSize?: number;
|
|
20
|
-
/**
|
|
21
|
-
* diastereotopic atom ids.
|
|
22
|
-
*/
|
|
23
|
-
groupedDiaIDs: GroupedDiaID[];
|
|
24
|
-
/**
|
|
25
|
-
* hoses code of the molecule.
|
|
26
|
-
*/
|
|
27
|
-
hoses: Array<any[] | undefined>;
|
|
28
|
-
/**
|
|
29
|
-
* molfile of the molecule, it could be used if there is not a database provided.
|
|
30
|
-
* so the prediction will be fetched to the web service (webserviceURL)
|
|
31
|
-
*/
|
|
32
|
-
molfile?: string;
|
|
33
20
|
}
|
|
34
21
|
export type PredictCarbon = typeof predictCarbon;
|
|
35
22
|
/**
|
|
36
23
|
* Make a query to a hose code based database to predict carbon chemical shift
|
|
37
24
|
* @returns {Promise<object>} - object with molfile, diaIDs, signals, joined signals by diaIDs and ranges.
|
|
38
25
|
*/
|
|
39
|
-
export declare function predictCarbon(
|
|
26
|
+
export declare function predictCarbon(topicMolecule: TopicMolecule, options?: PredictCarbonOptions): Promise<PredictionBase1D>;
|
|
@@ -5,8 +5,6 @@ const uuid_1 = require("@lukeed/uuid");
|
|
|
5
5
|
const setIDs_1 = require("../peaks/util/setIDs");
|
|
6
6
|
const signalsToRanges_1 = require("../signals/signalsToRanges");
|
|
7
7
|
const fetchPrediction_1 = require("./utils/fetchPrediction");
|
|
8
|
-
const getFilteredIDiaIDs_1 = require("./utils/getFilteredIDiaIDs");
|
|
9
|
-
const isMolfileNotEmpty_1 = require("./utils/isMolfileNotEmpty");
|
|
10
8
|
const queryByHOSE_1 = require("./utils/queryByHOSE");
|
|
11
9
|
function checkFromPrediction(signal) {
|
|
12
10
|
if (!signal.atoms)
|
|
@@ -20,12 +18,9 @@ function checkFromPrediction(signal) {
|
|
|
20
18
|
* Make a query to a hose code based database to predict carbon chemical shift
|
|
21
19
|
* @returns {Promise<object>} - object with molfile, diaIDs, signals, joined signals by diaIDs and ranges.
|
|
22
20
|
*/
|
|
23
|
-
async function predictCarbon(options) {
|
|
24
|
-
const {
|
|
25
|
-
if (
|
|
26
|
-
return (0, fetchPrediction_1.fetchPrediction)(molfile, { webserviceURL });
|
|
27
|
-
}
|
|
28
|
-
else if (!(0, isMolfileNotEmpty_1.isMolfileNotEmpty)(molfile)) {
|
|
21
|
+
async function predictCarbon(topicMolecule, options = {}) {
|
|
22
|
+
const { database, webserviceURL = 'https://nmr-prediction.service.zakodium.com/v1/predict/carbon', } = options;
|
|
23
|
+
if (topicMolecule.molecule.getAllAtoms() === 0) {
|
|
29
24
|
return {
|
|
30
25
|
nucleus: '13C',
|
|
31
26
|
joinedSignals: [],
|
|
@@ -34,18 +29,21 @@ async function predictCarbon(options) {
|
|
|
34
29
|
};
|
|
35
30
|
}
|
|
36
31
|
if (!database) {
|
|
37
|
-
|
|
32
|
+
const molfile = topicMolecule.toMolfile();
|
|
33
|
+
return (0, fetchPrediction_1.fetchPrediction)(molfile, { webserviceURL });
|
|
38
34
|
}
|
|
39
35
|
const maxLevel = database.length - 1;
|
|
40
36
|
let { maxSphereSize = maxLevel } = options;
|
|
41
37
|
if (maxSphereSize > maxLevel)
|
|
42
38
|
maxSphereSize = maxLevel;
|
|
43
|
-
const
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
39
|
+
const hoseCodes = topicMolecule.hoseCodes;
|
|
40
|
+
const diaIDsWithInfo = topicMolecule.diaIDsAndInfo.map((entry, index) => ({
|
|
41
|
+
...entry,
|
|
42
|
+
hoses: hoseCodes[index],
|
|
43
|
+
}));
|
|
44
|
+
const predictions = (0, queryByHOSE_1.queryByHose)(diaIDsWithInfo, database, {
|
|
48
45
|
maxSphereSize,
|
|
46
|
+
atomLabel: 'C',
|
|
49
47
|
});
|
|
50
48
|
const signals = formatSignals(predictions);
|
|
51
49
|
const joinedSignals = joinSignalByDiaID(signals);
|
|
@@ -60,10 +58,10 @@ exports.predictCarbon = predictCarbon;
|
|
|
60
58
|
function formatSignals(predictions) {
|
|
61
59
|
const signals = [];
|
|
62
60
|
for (const prediction of predictions) {
|
|
63
|
-
const {
|
|
61
|
+
const { nbAtoms, atoms, delta, diaIDs, statistic } = prediction;
|
|
64
62
|
const signal = {
|
|
65
63
|
id: (0, uuid_1.v4)(),
|
|
66
|
-
delta: delta
|
|
64
|
+
delta: delta ?? NaN,
|
|
67
65
|
atoms,
|
|
68
66
|
diaIDs,
|
|
69
67
|
multiplicity: 's',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predictCarbon.js","sourceRoot":"","sources":["../../src/prediction/predictCarbon.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"predictCarbon.js","sourceRoot":"","sources":["../../src/prediction/predictCarbon.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { GroupDiastereotopicAtomIDs } from './GroupDiastereotopicAtomIDs';
|
|
1
|
+
import { TopicMolecule } from 'openchemlib-utils';
|
|
3
2
|
import { PredictionBase1D } from './PredictionBase1D';
|
|
4
3
|
/**
|
|
5
4
|
* Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
|
|
@@ -35,14 +34,5 @@ export interface PredictHMBCOptions {
|
|
|
35
34
|
H?: PredictionBase1D;
|
|
36
35
|
C?: PredictionBase1D;
|
|
37
36
|
};
|
|
38
|
-
/**
|
|
39
|
-
* diastereotopic atom ids of the molecule.
|
|
40
|
-
*/
|
|
41
|
-
diaIDs: string[];
|
|
42
|
-
/**
|
|
43
|
-
* grouped diastereotopic atom ids of the molecule.
|
|
44
|
-
*/
|
|
45
|
-
groupedDiaIDs: GroupDiastereotopicAtomIDs[];
|
|
46
|
-
distanceMatrix: number[][];
|
|
47
37
|
}
|
|
48
|
-
export declare function predictHMBC(
|
|
38
|
+
export declare function predictHMBC(topicMolecule: TopicMolecule, options: PredictHMBCOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.predictHMBC = void 0;
|
|
4
4
|
const predict2D_1 = require("./utils/predict2D");
|
|
5
|
-
async function predictHMBC(
|
|
5
|
+
async function predictHMBC(topicMolecule, options) {
|
|
6
6
|
const { minLength = 2, maxLength = 3, joinDistance = { H: 0.05, C: 0.5 }, } = options;
|
|
7
|
-
return (0, predict2D_1.predict2D)(
|
|
7
|
+
return (0, predict2D_1.predict2D)(topicMolecule, {
|
|
8
8
|
...options,
|
|
9
9
|
from: 'H',
|
|
10
10
|
to: 'C',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predictHMBC.js","sourceRoot":"","sources":["../../src/prediction/predictHMBC.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"predictHMBC.js","sourceRoot":"","sources":["../../src/prediction/predictHMBC.ts"],"names":[],"mappings":";;;AAGA,iDAA8C;AAoCvC,KAAK,UAAU,WAAW,CAC/B,aAA4B,EAC5B,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GACnC,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,aAAa,EAAE;QAC9B,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,kCAkBC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { GroupDiastereotopicAtomIDs } from './GroupDiastereotopicAtomIDs';
|
|
1
|
+
import { TopicMolecule } from 'openchemlib-utils';
|
|
3
2
|
import { PredictionBase1D } from './PredictionBase1D';
|
|
4
3
|
export interface PredictHSQCOptions {
|
|
5
4
|
/**
|
|
@@ -31,18 +30,9 @@ export interface PredictHSQCOptions {
|
|
|
31
30
|
H?: PredictionBase1D;
|
|
32
31
|
C?: PredictionBase1D;
|
|
33
32
|
};
|
|
34
|
-
/**
|
|
35
|
-
* diastereotopic atom ids of the molecule.
|
|
36
|
-
*/
|
|
37
|
-
diaIDs: string[];
|
|
38
|
-
/**
|
|
39
|
-
* grouped diastereotopic atom ids of the molecule.
|
|
40
|
-
*/
|
|
41
|
-
groupedDiaIDs: GroupDiastereotopicAtomIDs[];
|
|
42
|
-
distanceMatrix: number[][];
|
|
43
33
|
}
|
|
44
34
|
/**
|
|
45
35
|
* Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
|
|
46
36
|
* @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
|
|
47
37
|
*/
|
|
48
|
-
export declare function predictHSQC(
|
|
38
|
+
export declare function predictHSQC(topicMolecule: TopicMolecule, options: PredictHSQCOptions): Promise<import("./PredictionBase2D").PredictionBase2D>;
|
|
@@ -6,9 +6,9 @@ const predict2D_1 = require("./utils/predict2D");
|
|
|
6
6
|
* Generate the correlation bidimensional nmr peaks based on the number of bonds between a pair of atoms
|
|
7
7
|
* @returns {Promise<object>} - object with molfile, diaIDs, 2D signals joined signals and zones.
|
|
8
8
|
*/
|
|
9
|
-
async function predictHSQC(
|
|
9
|
+
async function predictHSQC(topicMolecule, options) {
|
|
10
10
|
const { minLength = 1, maxLength = 1, joinDistance = { H: 0.05, C: 0.5 }, } = options;
|
|
11
|
-
return (0, predict2D_1.predict2D)(
|
|
11
|
+
return (0, predict2D_1.predict2D)(topicMolecule, {
|
|
12
12
|
...options,
|
|
13
13
|
from: 'H',
|
|
14
14
|
to: 'C',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predictHSQC.js","sourceRoot":"","sources":["../../src/prediction/predictHSQC.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"predictHSQC.js","sourceRoot":"","sources":["../../src/prediction/predictHSQC.ts"],"names":[],"mappings":";;;AAGA,iDAA8C;AA8B9C;;;GAGG;AAEI,KAAK,UAAU,WAAW,CAC/B,aAA4B,EAC5B,OAA2B;IAE3B,MAAM,EACJ,SAAS,GAAG,CAAC,EACb,SAAS,GAAG,CAAC,EACb,YAAY,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GACnC,GAAG,OAAO,CAAC;IAEZ,OAAO,IAAA,qBAAS,EAAC,aAAa,EAAE;QAC9B,GAAG,OAAO;QACV,IAAI,EAAE,GAAG;QACT,EAAE,EAAE,GAAG;QACP,SAAS;QACT,SAAS;QACT,YAAY;KACb,CAAC,CAAC;AACL,CAAC;AAlBD,kCAkBC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TopicMolecule } from 'openchemlib-utils';
|
|
1
2
|
import { PredictionBase1D } from './PredictionBase1D';
|
|
2
3
|
/**
|
|
3
4
|
* Makes a prediction using proton.
|
|
@@ -8,14 +9,6 @@ export interface PredictProtonOptions {
|
|
|
8
9
|
* A callback receiving a molfile and the result
|
|
9
10
|
*/
|
|
10
11
|
cache?: (molfile: string, result?: string) => void | string | undefined;
|
|
11
|
-
/**
|
|
12
|
-
* diastereotopic atom ids.
|
|
13
|
-
*/
|
|
14
|
-
diaIDs: string[];
|
|
15
|
-
/**
|
|
16
|
-
* distance matrix
|
|
17
|
-
*/
|
|
18
|
-
distanceMatrix: number[][];
|
|
19
12
|
}
|
|
20
13
|
export type PredictProton = typeof predictProton;
|
|
21
|
-
export declare function predictProton(
|
|
14
|
+
export declare function predictProton(topicMolecule: TopicMolecule, options?: PredictProtonOptions): Promise<PredictionBase1D>;
|
|
@@ -9,9 +9,8 @@ const cross_fetch_1 = __importDefault(require("cross-fetch"));
|
|
|
9
9
|
const form_data_1 = __importDefault(require("form-data"));
|
|
10
10
|
const signalsJoin_1 = require("../signals/signalsJoin");
|
|
11
11
|
const signalsToRanges_1 = require("../signals/signalsToRanges");
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
if (!(0, isMolfileNotEmpty_1.isMolfileNotEmpty)(molfile)) {
|
|
12
|
+
async function predictProton(topicMolecule, options = {}) {
|
|
13
|
+
if (topicMolecule.molecule.getAllAtoms() === 0) {
|
|
15
14
|
return {
|
|
16
15
|
nucleus: '1H',
|
|
17
16
|
joinedSignals: [],
|
|
@@ -22,11 +21,11 @@ async function predictProton(molfile, options) {
|
|
|
22
21
|
const { cache } = options;
|
|
23
22
|
let result;
|
|
24
23
|
if (cache) {
|
|
25
|
-
result = cache(
|
|
24
|
+
result = cache(topicMolecule.idCode);
|
|
26
25
|
}
|
|
27
26
|
if (result === undefined) {
|
|
28
27
|
const formData = new form_data_1.default();
|
|
29
|
-
formData.append('molfile',
|
|
28
|
+
formData.append('molfile', topicMolecule.toMolfile());
|
|
30
29
|
const response = await (0, cross_fetch_1.default)('https://www.nmrdb.org/service/predictor', {
|
|
31
30
|
method: 'POST',
|
|
32
31
|
// @ts-expect-error RequestInit type does not include FormData.
|
|
@@ -34,11 +33,10 @@ async function predictProton(molfile, options) {
|
|
|
34
33
|
});
|
|
35
34
|
result = await response.text();
|
|
36
35
|
if (cache) {
|
|
37
|
-
cache(
|
|
36
|
+
cache(topicMolecule.idCode, result);
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
|
-
const
|
|
41
|
-
const signals = protonParser(result, { diaIDs, distanceMatrix });
|
|
39
|
+
const signals = protonParser(result, topicMolecule);
|
|
42
40
|
const joinedSignals = (0, signalsJoin_1.signalsJoin)(signals);
|
|
43
41
|
return {
|
|
44
42
|
nucleus: '1H',
|
|
@@ -48,11 +46,12 @@ async function predictProton(molfile, options) {
|
|
|
48
46
|
};
|
|
49
47
|
}
|
|
50
48
|
exports.predictProton = predictProton;
|
|
51
|
-
function protonParser(result,
|
|
49
|
+
function protonParser(result, topicMolecule) {
|
|
52
50
|
if (result.includes('ERR')) {
|
|
53
51
|
throw Error(`Spinus optimization: ${result}`);
|
|
54
52
|
}
|
|
55
|
-
const
|
|
53
|
+
const diaIDs = topicMolecule.diaIDs;
|
|
54
|
+
const distanceMatrix = topicMolecule.distanceMatrix;
|
|
56
55
|
const lines = result.split('\n').filter((line) => line);
|
|
57
56
|
const signals = [];
|
|
58
57
|
for (const line of lines) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predictProton.js","sourceRoot":"","sources":["../../src/prediction/predictProton.ts"],"names":[],"mappings":";;;;;;AAAA,uCAAgD;AAChD,8DAAgC;AAChC,0DAAiC;
|
|
1
|
+
{"version":3,"file":"predictProton.js","sourceRoot":"","sources":["../../src/prediction/predictProton.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FromTo, PointXY } from 'cheminfo-types';
|
|
1
|
+
import { FromTo, Logger, PointXY } from 'cheminfo-types';
|
|
2
2
|
import type { Molecule } from 'openchemlib/full';
|
|
3
3
|
import { PredictAllOptions } from './predict';
|
|
4
4
|
/**
|
|
@@ -24,10 +24,11 @@ interface SimulationOptions {
|
|
|
24
24
|
twoD?: Partial<TwoDOptions>;
|
|
25
25
|
}
|
|
26
26
|
interface PredictAllSpectraOptions {
|
|
27
|
+
logger?: Logger;
|
|
27
28
|
prediction?: PredictAllOptions;
|
|
28
29
|
simulation?: SimulationOptions;
|
|
29
30
|
}
|
|
30
|
-
export declare function
|
|
31
|
+
export declare function predictSpectra(molecule: Molecule, options?: PredictAllSpectraOptions): Promise<{
|
|
31
32
|
spectra: any[];
|
|
32
33
|
molecules: {
|
|
33
34
|
molfile: string;
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.predictSpectra = void 0;
|
|
4
4
|
const signals2DToZ_1 = require("../signals/signals2DToZ");
|
|
5
5
|
const signalsToXY_1 = require("../signals/signalsToXY");
|
|
6
6
|
const getFrequency_1 = require("../utilities/getFrequency");
|
|
7
7
|
const predict_1 = require("./predict");
|
|
8
|
-
async function
|
|
9
|
-
const { simulation: simulationOptions = { oneD: {}, twoD: {} }, prediction:
|
|
10
|
-
const { spectra } = await (0, predict_1.predict)(molecule,
|
|
8
|
+
async function predictSpectra(molecule, options = {}) {
|
|
9
|
+
const { logger, simulation: simulationOptions = { oneD: {}, twoD: {} }, prediction: predictOptions = {}, } = options;
|
|
10
|
+
const { spectra } = await (0, predict_1.predict)(molecule, { logger, ...predictOptions });
|
|
11
11
|
const oneDOptions = {
|
|
12
12
|
...{
|
|
13
13
|
proton: { from: 0, to: 14 },
|
|
14
14
|
carbon: { from: 0, to: 200 },
|
|
15
15
|
nbPoints: 65536,
|
|
16
|
+
frequency: 400,
|
|
16
17
|
lineWidth: 1,
|
|
17
18
|
},
|
|
18
19
|
...(simulationOptions.oneD || {}),
|
|
@@ -25,6 +26,10 @@ async function predictAllSpectra(molecule, options = {}) {
|
|
|
25
26
|
},
|
|
26
27
|
...(simulationOptions.twoD || {}),
|
|
27
28
|
};
|
|
29
|
+
if (!('frequency' in simulationOptions) && logger) {
|
|
30
|
+
logger.warn(`Frequency is settled to 400 MHz`);
|
|
31
|
+
}
|
|
32
|
+
const { frequency = 400 } = simulationOptions;
|
|
28
33
|
const newSpectra = [];
|
|
29
34
|
for (const experiment in spectra) {
|
|
30
35
|
switch (experiment) {
|
|
@@ -35,7 +40,7 @@ async function predictAllSpectra(molecule, options = {}) {
|
|
|
35
40
|
lineWidth: oneDOptions.lineWidth,
|
|
36
41
|
...oneDOptions[experiment],
|
|
37
42
|
experiment,
|
|
38
|
-
frequency
|
|
43
|
+
frequency,
|
|
39
44
|
}));
|
|
40
45
|
break;
|
|
41
46
|
}
|
|
@@ -45,7 +50,7 @@ async function predictAllSpectra(molecule, options = {}) {
|
|
|
45
50
|
newSpectra.push(get2DSpectrum(spectra[experiment], {
|
|
46
51
|
...twoDOptions,
|
|
47
52
|
experiment,
|
|
48
|
-
frequency
|
|
53
|
+
frequency,
|
|
49
54
|
}));
|
|
50
55
|
break;
|
|
51
56
|
}
|
|
@@ -58,7 +63,7 @@ async function predictAllSpectra(molecule, options = {}) {
|
|
|
58
63
|
molecules: [{ molfile: molecule.toMolfile() }],
|
|
59
64
|
};
|
|
60
65
|
}
|
|
61
|
-
exports.
|
|
66
|
+
exports.predictSpectra = predictSpectra;
|
|
62
67
|
function get2DSpectrum(prediction, options) {
|
|
63
68
|
const { signals, zones, nuclei } = prediction;
|
|
64
69
|
const { frequency: baseFrequency, experiment } = options;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"predictSpectra.js","sourceRoot":"","sources":["../../src/prediction/predictSpectra.ts"],"names":[],"mappings":";;;AAGA,0DAAuD;AACvD,wDAAyE;AACzE,4DAAyD;AAEzD,uCAAuD;
|
|
1
|
+
{"version":3,"file":"predictSpectra.js","sourceRoot":"","sources":["../../src/prediction/predictSpectra.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { GroupDiastereotopicAtomIDs } from '../GroupDiastereotopicAtomIDs';
|
|
1
|
+
import { TopicMolecule } from 'openchemlib-utils';
|
|
3
2
|
import { PredictionBase1D } from '../PredictionBase1D';
|
|
4
3
|
import { PredictionBase2D } from '../PredictionBase2D';
|
|
5
4
|
import type { PredictCarbon, PredictCarbonOptions } from '../predictCarbon';
|
|
@@ -54,15 +53,6 @@ export interface Predict2DOptions {
|
|
|
54
53
|
* @default false
|
|
55
54
|
*/
|
|
56
55
|
includeDiagonal?: boolean;
|
|
57
|
-
/**
|
|
58
|
-
* diastereotopic atom ids of the molecule.
|
|
59
|
-
*/
|
|
60
|
-
diaIDs: string[];
|
|
61
|
-
/**
|
|
62
|
-
* grouped diastereotopic atom ids of the molecule.
|
|
63
|
-
*/
|
|
64
|
-
groupedDiaIDs: GroupDiastereotopicAtomIDs[];
|
|
65
|
-
distanceMatrix: number[][];
|
|
66
56
|
}
|
|
67
57
|
export interface PredictOptions {
|
|
68
58
|
[key: string]: PredictProtonOptions | PredictCarbonOptions | undefined;
|
|
@@ -70,5 +60,5 @@ export interface PredictOptions {
|
|
|
70
60
|
C?: PredictCarbonOptions;
|
|
71
61
|
}
|
|
72
62
|
export type Predictions = Record<string, PredictionBase1D | undefined>;
|
|
73
|
-
export declare function predict2D(
|
|
63
|
+
export declare function predict2D(topicMolecule: TopicMolecule, options: Predict2DOptions): Promise<PredictionBase2D>;
|
|
74
64
|
export {};
|