covnmr_explain
Interpret ONE peak, or one 2D crosspeak: what is this signal?
Peak mode (default): give `ppm` and optionally `multiplicity` ("t", "dd"),
`j_values` (comma-separated Hz, "7.1,2.4") and `nucleus`. Returns the
spectral region, the functional groups consistent with it, and what the
coupling pattern implies.
Correlation mode: give `c_ppm` AND `experiment` ("HSQC", "HMBC", "COSY")
and it interprets the crosspeak instead -- bond type, and the groups on
each axis. This mode returns a DIFFERENT key set; `mode` says which you got.
Pass `smiles` and you additionally get `atom_attribution`: the atom in that
structure whose predicted shift is closest to `ppm`. This is genuinely
derived -- it runs the real shift predictor, it moves with the peak and
with the structure -- but it is a NEAREST-NEIGHBOUR ON ONE AXIS, not an
assignment, and it returns the nearest atom EVEN WHEN NOTHING IS WITHIN
TOLERANCE. `atom_label` sits at the top of that dict where it reads like an
answer. Read `attribution_status` first: "matched",
"no_atom_within_tolerance" (an atom is named but nothing fits -- measured
on ethanol at 9.8 / 12.0 / -2.0 ppm the deviations are 6.0 / 8.2 /
3.17 ppm), "no_structure_prediction", or "not_requested" when no `smiles`
was given.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ppm | Yes | ||
| c_ppm | No | ||
| smiles | No | ||
| api_key | No | ||
| nucleus | No | ||
| solvent | No | CDCl3 | |
| j_values | No | ||
| experiment | No | ||
| multiplicity | No |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |