io.github.dfieser/thermocouple-its90
thermocouple-its90
Conversión de termopares ITS-90 para Python: de voltaje a temperatura y de temperatura a voltaje para los ocho tipos designados por letras (B, E, J, K, N, R, S, T), con compensación de unión fría y coeficientes Seebeck. El conjunto de pruebas verifica cada uno de los 12 026 puntos tabulados de las tablas de referencia del NIST en cada ejecución.
Solo biblioteca estándar, sin dependencias, totalmente tipado. Una versión para navegador de este motor funciona como calculadora de termopares en línea gratuita, publicada desde este repositorio en cada lanzamiento.
Instalación
pip install thermocouple-its90Related MCP server: mcp-units
Convertir milivoltios de termopar a temperatura
from thermocouple_its90 import TypeK
TypeK.emf(300.0) # 12.209 (mV at 300 C, 0 C reference: the table value)
TypeK.temperature(12.209) # 300.0 (C, ice-bath reference)
TypeK.seebeck(300.0) # 0.0416 (mV per C)
TypeK.range # (-270.0, 1372.0)Compensación de unión fría
Un termopar mide la diferencia entre sus uniones, y las tablas de referencia suponen que la unión fría está a 0 °C. Si los terminales de su medidor están a temperatura ambiente, una consulta directa de la tabla sería incorrecta:
from thermocouple_its90 import TypeK
# Meter reads 4.096 mV, terminals at 25 C:
TypeK.temperature(4.096) # 100.0 C <- naive lookup, wrong
TypeK.temperature(4.096, reference=25.0) # 124.3 C <- the actual answerLos ocho tipos funcionan de la misma manera:
from thermocouple_its90 import get, letters
letters() # ['B', 'E', 'J', 'K', 'N', 'R', 'S', 'T']
get("s").emf(1400.0) # 14.373 mV
get("t").temperature(-4.648) # -149.98 C (cryogenic ranges included)Precisión, verificada en lugar de afirmada
Las funciones directas de referencia reproducen los 12 026 puntos completos de un grado de las tablas de referencia del NIST dentro de su redondeo de impresión de 0.001 mV. La comparación completa se ejecuta en CI en cada push (
tests/test_full_tables.py).La inversión se inicializa con los polinomios inversos publicados del ITS-90 y se refina mediante iteración de Newton sobre la función directa exacta. Los recorridos de ida y vuelta coinciden en microgrados, en lugar de las bandas de error de 0.02 a 0.06 °C de los polinomios inversos.
Los tipos K, E y T se invierten en todos sus rangos criogénicos (hasta -270 °C), por debajo de donde se detienen los polinomios inversos publicados.
El tipo B se maneja con su física: su FEM no es monótona cerca de la temperatura ambiente, por lo que la inversión por debajo de 0.291 mV (unos 250 °C) se rechaza con una explicación en lugar de devolver uno de dos posibles resultados.
Servidor MCP para agentes de IA
Los modelos de lenguaje recuerdan mal los polinomios de termopares. El paquete incluye un Protocolo de Contexto de Modelo para que los agentes llamen a la implementación verificada en su lugar:
pip install "thermocouple-its90[mcp]"
claude mcp add thermocouple -- thermocouple-its90-mcpHerramientas: thermocouple_to_temperature, thermocouple_to_emf,
thermocouple_types.
Procedencia de los datos y licencia
Los coeficientes se analizaron mecánicamente, nunca se escribieron a mano, a partir de la
Base de Datos de Termopares ITS-90 del NIST (SRD 60, https://its90.nist.gov/). La base de datos reproduce
el Monografía 175 del NIST (Burns, Scroger, Strouse, Croarkin y Guthrie, 1993),
una publicación del gobierno de los Estados Unidos no sujeta a derechos de autor. El
conjunto de datos canónico vive en data/its90.json; _data.py se genera a partir
de él y CI falla si se desvían. El código tiene licencia MIT.
Relacionados
Calculadora en línea, este motor en el navegador, con ejemplos resueltos y preguntas frecuentes
Más calculadoras de ingeniería verificadas del mismo autor, incluyendo herramientas de electrodo de referencia, composición de aleaciones, difusión y difracción de rayos X
lcf-strain-life, el mismo patrón de biblioteca más MCP para análisis de fatiga de bajo ciclo
Cita
Si esta biblioteca es útil en su trabajo publicado, por favor cítela mediante el
DOI conceptual https://doi.org/10.5281/zenodo.22036393, que siempre resuelve a
la versión más reciente (consulte CITATION.cff). Cite también la referencia subyacente: Burns, G. W., Scroger, M. G., Strouse, G. F.,
Croarkin, M. C. y Guthrie, W. F. (1993). Temperature-electromotive force
reference functions and tables for the letter-designated thermocouple types
based on the ITS-90 (NIST Monograph 175). NIST.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for aerospace calculations: orbital mechanics, ephemeris, DSN operations, ...
Remote MCP server for deterministic educational practice-assessment score conversions.
QuLab MCP remote server (Streamable HTTP) for computational science and lab tools.
Engineering calculation MCP server for oil and gas engineering applications.
Related MCP Servers
- AlicenseAqualityFmaintenanceA universal MCP server that exposes all UTCP-registered tools to MCP clients while providing a web interface for tool management.714 npm205MIT
- AlicenseAqualityDmaintenanceMCP server for converting cooking measurements (volume, weight, temperature) between common units like ml, cup, g, oz, and Celsius/Fahrenheit.31MIT
- AlicenseBqualityBmaintenanceAn MCP server for controlling lab instruments (oscilloscopes, signal generators, etc.) via standardized interfaces like USBTMC, RS-232, and LAN.100MIT
- AlicenseAqualityCmaintenanceThis MCP server enables AI clients to calculate the boiling temperature of water at a given absolute pressure using the IAPWS-IF97 standard, separating natural-language reasoning from authoritative scientific computation.1MIT