Skip to content
Secciones de la documentación

Resolver para un valor objetivo

POSThttps://rftools.io/api/py/v1/calculate/solve

Halla el valor de una entrada de la calculadora que lleva una de sus salidas a un objetivo (el ancho de pista que da 50 Ω, la separación que da una impedancia diferencial objetivo) y lo devuelve junto con el resultado directo exactamente en ese valor. Una sola llamada contabilizada sustituye a las llamadas directas que un cliente gastaría buscando a mano.

Cuerpo de la solicitud

SolveRequest
CampoDescripción
slugobligatoriostringLa calculadora.
inputsobligatorioobject of numbersTodas las entradas excepto solveFor. Un valor dado para solveFor es solo el punto de partida de la búsqueda, que sirve para desempatar entre varias soluciones.
solveForobligatoriostringUna entrada numérica declarada de la calculadora.
target.outputobligatoriostringUna clave de salida que devuelve la calculadora.
target.valueobligatorionumberEl valor que debe alcanzar esa salida.
gridnumberUna rejilla de fabricación positiva; el valor devuelto se redondea a su múltiplo más cercano dentro del rango.
range[number, number]Acota los límites declarados de solveFor; obligatorio cuando no declara ninguno.

Respuesta

SolveResponse
CampoDescripción
valuenumberEl valor resuelto, redondeado a grid si se indicó uno.
unroundednumberLa solución exacta, antes del redondeo a la rejilla.
reachedbooleanSi se alcanzó el objetivo; false sigue llevando el valor más cercano encontrado, no una conjetura.
evaluationsintegerCuántas evaluaciones directas usó la búsqueda.
warningsstring[]Los hallazgos propios de la resolución: otra solución en el rango, o un objetivo no alcanzado.
resultobjectExactamente lo que /calculate devuelve para las entradas con solveFor fijado en value: values, warnings, errors y provenance.
slug, solveFor, target, gridechoLos campos de la solicitud, tal como se dieron; grid es null cuando no se indicó.

Coste y soluciones múltiples

Coste

Una llamada contabilizada, cobrada como /calculate después de todas las comprobaciones de abajo, y devuelta si el servicio falla después. Un objetivo que la búsqueda no puede alcanzar se responde igualmente con éxito y se cobra igualmente, con reached: false y el valor más cercano encontrado: el cliente pidió algo que el servicio entregó.

Más de una solución

Cuando la salida cruza el objetivo más de una vez dentro del rango, la llamada devuelve el cruce más cercano al valor inicial (el valor del propio cliente para solveFor, o si no, el valor predeterminado de la calculadora) y añade una advertencia que nombra el otro.

Rechazos

Una solicitud que no se puede resolver se rechaza antes de cobrar nada, y param nombra el campo erróneo:

Rechazos de solve
EstadoCuándo
404El slug de la calculadora no existe.
400solveFor no es una de las entradas numéricas declaradas de la calculadora (param: solveFor, con allowed).
400target.output no es una de las salidas de la calculadora (param: target.output, con allowed).
400Se indica grid y no es un número finito y positivo, o no tiene ningún múltiplo en el rango.
400Algún valor dado (una entrada, target.value o un límite del rango) no es finito.
400solveFor no tiene límite declarado y el cuerpo no da ningún range, o el rango dado queda fuera de los límites declarados o está vacío.
400Una entrada fija supera un límite que la calculadora impone a su propio tiempo de ejecución, como en /calculate.