Abschnitte der Dokumentation
Nach einem Zielwert auflösen
Findet den Wert einer Eingabe eines Rechners, der eine seiner Ausgaben auf einen Zielwert bringt (die Leiterbahnbreite für 50 Ω, den Abstand für eine Ziel-Differenzimpedanz), und gibt ihn mit dem Vorwärtsergebnis genau bei diesem Wert zurück. Ein gezählter Aufruf ersetzt die Vorwärtsaufrufe, die ein Client sonst für die Suche von Hand aufwenden würde.
Wie die Suche abläuft
Die Suche läuft über die angegebenen Grenzen von solveFor, eingeengt durch range, wo eines angegeben ist; eine Eingabe ohne angegebene Grenze braucht range. Wo grid angegeben ist, wird der zurückgegebene value auf das nächste Vielfache des Rasters innerhalb des Bereichs gerundet, und unrounded trägt die exakte Lösung; ohne grid sind value und unrounded dieselbe Zahl. In jedem Fall ist result (genau das, was /calculate für diese Eingaben zurückgibt, Provenienz eingeschlossen) der Vorwärtslauf des Rechners genau beim zurückgegebenen value, sodass ein Client stets eine echte Vorwärtsberechnung anzeigt, nie die eigene Schätzung des Lösers.
Request-Body
| Feld | Beschreibung |
|---|---|
| slugerforderlichstring | Der Rechner. |
| inputserforderlichobject of numbers | Jede Eingabe außer solveFor. Ein für solveFor angegebener Wert ist nur der Startpunkt der Suche, mit dem zwischen mehreren Lösungen entschieden wird. |
| solveForerforderlichstring | Eine deklarierte numerische Eingabe des Rechners. |
| target.outputerforderlichstring | Ein Ausgabeschlüssel, den der Rechner zurückgibt. |
| target.valueerforderlichnumber | Der Wert, den diese Ausgabe erreichen soll. |
| gridnumber | Ein positives Fertigungsraster; der zurückgegebene Wert wird auf das nächste Vielfache innerhalb des Bereichs gerundet. |
| range[number, number] | Engt die angegebenen Grenzen von solveFor ein; erforderlich, wenn es keine angibt. |
Antwort
| Feld | Beschreibung |
|---|---|
| valuenumber | Der gefundene Wert, auf grid gerundet, wenn eines angegeben war. |
| unroundednumber | Die exakte Lösung, vor dem Runden auf das Raster. |
| reachedboolean | Ob der Zielwert erreicht wurde; false trägt trotzdem den nächstgelegenen gefundenen Wert, keine Schätzung. |
| evaluationsinteger | Wie viele Vorwärtsberechnungen die Suche gebraucht hat. |
| warningsstring[] | Die eigenen Befunde der Lösung: eine weitere Lösung im Bereich oder ein nicht erreichter Zielwert. |
| resultobject | Genau das, was /calculate für die Eingaben mit solveFor auf value gesetzt zurückgibt: values, warnings, errors und provenance. |
| slug, solveFor, target, gridecho | Die Felder der Anfrage, wie angegeben; grid ist null, wenn keines angegeben war. |
Kosten und Mehrdeutigkeit
Kosten
/calculate nach allen unten genannten Prüfungen und gutgeschrieben, wenn der Dienst danach scheitert. Ein Zielwert, den die Suche nicht erreichen kann, ist trotzdem ein Erfolg und wird trotzdem abgerechnet, mit reached: false und dem nächstgelegenen gefundenen Wert: Der Aufrufer hat etwas angefragt, das der Dienst geliefert hat.Mehr als eine Lösung
solveFor, sonst dem Standardwert des Rechners), und fügt eine Warnung hinzu, die den anderen nennt.Ablehnungen
Eine Anfrage, die sich nicht lösen lässt, wird abgelehnt, bevor etwas abgerechnet wird, und param nennt das fehlerhafte Feld:
| Status | Wann |
|---|---|
| 404 | Den Rechner-Slug gibt es nicht. |
| 400 | solveFor ist keine der deklarierten numerischen Eingaben des Rechners (param: solveFor, mit allowed). |
| 400 | target.output ist keine der Ausgaben des Rechners (param: target.output, mit allowed). |
| 400 | grid ist angegeben und keine endliche, positive Zahl oder hat kein Vielfaches im Bereich. |
| 400 | Ein angegebener Wert (eine Eingabe, target.value oder eine Bereichsgrenze) ist nicht endlich. |
| 400 | solveFor hat keine angegebene Grenze und der Body gibt keinen range an, oder der angegebene Bereich liegt außerhalb der angegebenen Grenzen oder ist leer. |
| 400 | Eine feste Eingabe überschreitet ein Limit, das der Rechner für seine eigene Laufzeit durchsetzt, wie bei /calculate. |