MatLens · Ecuaciones y modelos

Análisis térmico (TGA / DSC / cinética)

Esta sección resume las ecuaciones de análisis térmico (TGA, DSC y cinética) que MatLens evalúa en matlens/core/thermal.py. Las temperaturas de los datos están en °C salvo que el nombre indique K, las velocidades de calentamiento \beta en K/min y las masas en la unidad de los datos (% o mg). Constante de los gases: R = 8.314462618 J mol⁻¹ K⁻¹.

Grado de conversión a partir de la pérdida de masa

matlens/core/thermal.py::alpha_from_mass

\alpha(T) = \frac{m_0 - m(T)}{m_0 - m_f}
SímboloUnidadesDefinición
\alpha—grado de conversión
m(T)% o mgmasa suavizada (Savitzky–Golay, orden 3, ventana de unos N/50 puntos, mínimo 5)
m_0, m_f% o mgmasa suavizada en el primer y el último punto del intervalo elegido [T_{lo}, T_{hi}]

Se recorta \alpha a [0, 1] y se fuerza monótono no decreciente (máximo acumulado). Requiere al menos 10 puntos y pérdida no nula.

Referencia: implementación propia.

Grado de conversión a partir de un pico DSC

matlens/core/thermal.py::alpha_from_dsc

\alpha(T) = \frac{\int_{T_{lo}}^{T}\left[\Phi(T') - B(T')\right]dT'}{\int_{T_{lo}}^{T_{hi}}\left[\Phi(T') - B(T')\right]dT'}

con integración trapezoidal en temperatura. B es una línea base lineal entre las medias de los primeros y últimos \max(3, N/25) puntos, o sigmoidal (la base se reparte proporcionalmente al área parcial acumulada, 20 iteraciones). \alpha se recorta a [0,1] y se hace monótono.

Referencia: implementación propia.

Velocidad de reacción

matlens/core/thermal.py::_rate

\frac{d\alpha}{dt} = \frac{d\alpha}{dT}\,\frac{\beta}{60}

en s⁻¹, con d\alpha/dT por diferencias finitas sobre \alpha suavizado (Savitzky–Golay, ventana 11, orden 3) y T en K.

Kissinger

matlens/core/thermal.py::kissinger_from_peaks, matlens/core/thermal.py::kissinger, matlens/core/thermal.py::peak_temperature

\ln\frac{\beta}{T_p^2} = \ln\frac{A R}{E_a} - \frac{E_a}{R\,T_p}
SímboloUnidadesDefinición
\betaK/minvelocidad de calentamiento
T_pKtemperatura del máximo de d\alpha/dt
E_akJ/molenergía de activación
As⁻¹factor preexponencial

T_p se obtiene del máximo de d\alpha/dt con refinamiento parabólico de tres puntos. Recta por mínimos cuadrados ordinarios (sin pesos) de \ln(\beta/T_p^2) frente a 1/T_p con al menos 3 velocidades. Con pendiente s y ordenada b:

E_a = -s\,R, \qquad \ln A = b - \ln 60 + \ln\frac{E_a}{R}

(el término -\ln 60 convierte A de min⁻¹ a s⁻¹ porque \beta está en K/min). Incertidumbre: u(E_a) = u(s)\,R, error típico de la regresión (k = 1); no se informa incertidumbre de \ln A.

Validez: supone que la posición del pico refleja una reacción de un solo paso; \ln A corresponde a un modelo de primer orden.

Referencia: H. E. Kissinger, Anal. Chem. 29 (1957) 1702.

Métodos isoconversionales: procedimiento común

matlens/core/thermal.py::isoconversional

Requiere al menos 3 curvas \alpha(T) a distintas \beta. Rejilla por defecto: \alpha = 0.05, 0.10, …, 0.95. Para cada \alpha se interpola linealmente T_{\alpha,i} (K) en cada curva (solo si \alpha está dentro de su intervalo) y se ajusta una recta por mínimos cuadrados ordinarios frente a 1/T_{\alpha,i} con al menos 3 puntos válidos. Incertidumbre de E_a(\alpha): error típico de la pendiente de la regresión (k = 1). Se informa también R^2, la media de E_a y la dispersión relativa (E_{\max} - E_{\min})/|\bar E|; si supera 0.25 se avisa de que los datos no corresponden a un paso único (matlens/core/thermal.py::step_warnings).

Referencia general: S. Vyazovkin et al., Thermochim. Acta 520 (2011) 1.

Ozawa–Flynn–Wall (OFW)

\ln\beta = \text{cte} - 1.052\,\frac{E_a}{R\,T_\alpha}
E_a = -\frac{s\,R}{1.052}, \qquad u(E_a) = \frac{u(s)\,R}{1.052}

con \beta en K/min y logaritmo natural (aproximación de Doyle).

Referencias: T. Ozawa, Bull. Chem. Soc. Jpn. 38 (1965) 1881; J. H. Flynn y L. A. Wall, J. Res. NBS 70A (1966) 487.

Kissinger–Akahira–Sunose (KAS)

\ln\frac{\beta}{T_\alpha^2} = \text{cte} - \frac{E_a}{R\,T_\alpha}
E_a = -s\,R, \qquad u(E_a) = u(s)\,R

Es la forma KAS original (exponente 2, coeficiente 1).

Referencia: T. Akahira, T. Sunose, Res. Report Chiba Inst. Technol. (Sci. Technol.) 16 (1971) 22.

Starink

\ln\frac{\beta}{T_\alpha^{1.92}} = \text{cte} - 1.0008\,\frac{E_a}{R\,T_\alpha}
E_a = -\frac{s\,R}{1.0008}, \qquad u(E_a) = \frac{u(s)\,R}{1.0008}

Aproximación integral más exacta que KAS y OFW para E_a/RT habituales (método "starink").

Referencia: M. J. Starink, Thermochim. Acta 404 (2003) 163.

Friedman

\ln\left(\frac{d\alpha}{dt}\right)_{\alpha} = \ln\left[A f(\alpha)\right] - \frac{E_a}{R\,T_\alpha}
E_a = -s\,R, \qquad u(E_a) = u(s)\,R

con d\alpha/dt en s⁻¹ interpolada linealmente a cada \alpha; los valores d\alpha/dt \le 0 se descartan.

Referencia: H. L. Friedman, J. Polym. Sci. C 6 (1964) 183.

Vyazovkin (método integral avanzado)

matlens/core/thermal.py::_isoconversional_vyazovkin, matlens/core/thermal.py::_vyazovkin_ea, matlens/core/thermal.py::_seg_integral

Para cada \alpha se usa solo el segmento [\alpha - \Delta\alpha, \alpha], donde \Delta\alpha es la mediana del paso de la rejilla (el primer segmento empieza en \max(\alpha_1 - \Delta\alpha, 0)). Con calentamiento lineal:

J_i(E) = \frac{1}{\beta_i}\int_{T_{\alpha-\Delta\alpha,i}}^{T_{\alpha,i}} \exp\left(-\frac{E}{R\,T}\right)dT
\Phi(E) = \sum_{i=1}^{n}\sum_{j \ne i}\frac{J_i(E)}{J_j(E)}

E_a es el valor que minimiza \Phi (en el código se minimiza \Phi(E) = \sum_i\sum_j J_i/J_j - n, equivalente). La integral se evalúa con cuadratura de Gauss–Legendre de 16 nodos, multiplicada por el factor común \exp(E/(R\,T_{\mathrm{ref}})) con T_{\mathrm{ref}} la media de los T_\alpha, para evitar desbordamientos; el factor se cancela en los cocientes. Minimización escalar acotada en 1 \le E_a \le 1000 kJ/mol (tolerancia 10^{-4} kJ/mol). Se necesitan al menos 3 curvas que cubran el segmento. En el E_a exacto, \Phi = n(n-1).

Incertidumbre: no se calcula; u(E_a) y R^2 se informan como NaN.

Referencias: S. Vyazovkin, J. Comput. Chem. 22 (2001) 178; Comité de Cinética del ICTAC, Thermochim. Acta 520 (2011) 1.

Coats–Redfern

matlens/core/thermal.py::coats_redfern

Método de ajuste de modelo con una sola velocidad de calentamiento:

\ln\frac{g(\alpha)}{T^2} = \ln\left[\frac{A R}{\beta E_a}\left(1 - \frac{2RT}{E_a}\right)\right] - \frac{E_a}{R\,T}

Recta por mínimos cuadrados ordinarios de \ln(g(\alpha)/T^2) frente a 1/T en 0.05 \le \alpha \le 0.95 (por defecto; mínimo 5 puntos finitos) para cada modelo g(\alpha):

ClaveModelog(\alpha)
F1orden 1-\ln(1-\alpha)
F1.5orden 1.52\left[(1-\alpha)^{-1/2} - 1\right]
F2orden 2(1-\alpha)^{-1} - 1
R2contracción de área1 - (1-\alpha)^{1/2}
R3contracción de volumen1 - (1-\alpha)^{1/3}
D1difusión 1D\alpha^2
D3difusión 3D (Jander)\left[1 - (1-\alpha)^{1/3}\right]^2
A2Avrami–Erofeev n = 2\left[-\ln(1-\alpha)\right]^{1/2}
A3Avrami–Erofeev n = 3\left[-\ln(1-\alpha)\right]^{1/3}

E_a = -s\,R con u(E_a) = u(s)\,R (k = 1). Se descartan modelos con E_a \le 0 y se ordenan por R^2 decreciente. El factor preexponencial se calcula como

A = \frac{\beta}{60}\,\frac{E_a}{R\,\bar T^2}\,\exp\left(\frac{E_a}{R\,\bar T}\right)

en s⁻¹, con \bar T la media de las temperaturas ajustadas.

Nota (diferencia con la literatura): MatLens no obtiene A de la ordenada de la recta de Coats–Redfern (A = \frac{\beta E_a}{R}e^{b}, despreciando 2RT/E_a), sino con la expresión anterior, de tipo Kissinger, evaluada en la temperatura media del intervalo. Además, \ln A así calculado no depende del modelo g(\alpha) salvo a través de E_a.

Referencia: A. W. Coats, J. P. Redfern, Nature 201 (1964) 68.

Escalones TGA: onset y endset

matlens/core/thermal.py::tga_steps, matlens/core/thermal.py::dtg

DTG: dm/dT de la masa suavizada (Savitzky–Golay, ventana 21, orden 3). Los escalones son picos de -dm/dT con prominencia mínima del 5 % del pico mayor; picos a menos de 8 °C o cuyo valle no baja de 0.5 veces el pico menor se fusionan. Los límites de cada escalón se fijan donde -dm/dT cae por debajo de \min(\max(0.01\,r_{\max}, 3\hat\sigma), 0.5\,r_{\max}), con \hat\sigma = 1.4826\,\mathrm{MAD}. Onset y endset son la intersección de la tangente en el máximo de DTG con las líneas base previa y posterior (ajustes lineales de unos \max(5, N/50) puntos):

T_{\mathrm{onset}} = \frac{a_t - a_{\mathrm{pre}}}{b_{\mathrm{pre}} - s_p}, \qquad a_t = m_p - s_p T_p

Pérdida: \Delta m = m_{\mathrm{inicio}} - m_{\mathrm{fin}} evaluadas sobre las líneas base; en % de m_0 (mediana de los 5 primeros puntos). El balance de masa (matlens/core/thermal.py::tga_summary) avisa si la pérdida detectada difiere más de 2 puntos porcentuales de la total.

Referencia: ASTM E2550 / ISO 11358-1.

Estequiometría TGA

matlens/core/thermal.py::hydrate_water_count, matlens/core/thermal.py::expected_residue_pct

n_{\mathrm{H_2O}} = \frac{w\,M_{\mathrm{anh}}}{M_{\mathrm{H_2O}}(1 - w)}, \qquad \text{residuo}(\%) = \frac{n_r\,M_r}{M_p}\cdot 100

con w la fracción de pérdida de agua, M_{\mathrm{H_2O}} = 18.015 g/mol, M_{\mathrm{anh}}, M_r y M_p las masas molares del compuesto anhidro, del residuo y del precursor.

Referencia: implementación propia.

Entalpía de un pico DSC

matlens/core/thermal.py::dsc_peak

\Delta H = \frac{1}{m}\int_{t_{lo}}^{t_{hi}}\left[\Phi(t) - B(t)\right]dt
SímboloUnidadesDefinición
\Delta HJ/gentalpía (se informa su valor absoluto y el signo como dirección)
\PhimW (o W/g si ya está normalizado)flujo de calor
mmgmasa de muestra (no se usa si los datos están normalizados)
tstiempo, de la columna de tiempo o t = (T - T_{lo})/(\beta/60)

Integración trapezoidal. Línea base lineal entre las medias de los primeros y últimos \max(3, N/25) puntos, o sigmoidal tangencial (ISO 11357-3), en la que la base se interpola proporcionalmente al área parcial acumulada (20 iteraciones). Onset y endset: cruce con cero de las tangentes en los puntos de máxima pendiente de la señal corregida antes y después del pico.

Referencia: ASTM E794 / ISO 11357-1; línea base sigmoidal ISO 11357-3.

Transición vítrea

matlens/core/thermal.py::glass_transition

Líneas base previa y posterior ajustadas al 20 % de los puntos en cada extremo. T_{g,\mathrm{mid}} es la temperatura donde la señal suavizada corta la recta media de ambas bases (semialtura del escalón extrapolado); T_{g,\mathrm{infl}} es el punto de máxima pendiente; onset y endset son las intersecciones de la tangente en la inflexión con cada línea base.

\Delta c_p = \frac{|\Delta\Phi|}{\beta/60}

con \Delta\Phi la altura del escalón en T_{g,\mathrm{mid}} (W/g, dividida por la masa si no está normalizada) y \Delta c_p en J g⁻¹ K⁻¹.

Referencia: ASTM E1356 / ISO 11357-2.

Cristalinidad

matlens/core/thermal.py::crystallinity

X_c = \frac{\Delta H_m - \Delta H_{cc}}{\Delta H_m^0\,w}\cdot 100

con \Delta H_m y \Delta H_{cc} las entalpías de fusión y de cristalización en frío (J/g), w la fracción en masa del polímero y \Delta H_m^0 la entalpía del polímero 100 % cristalino (por defecto 293 J/g, PE; tabla: PP 207, PET 140, PLA 93, PCL 139, PA6 230 J/g).

En la operación DSC automática, \Delta H_{cc} se mide (si no se fija a mano): matlens/core/thermal.py::heating_segments separa un programa calentamiento–enfriamiento–calentamiento exportado en una sola tabla en rampas de calentamiento (cambio de signo de dT en el orden del archivo; se analiza la primera, o la indicada), y dsc_events/assign_dsc_events localizan los picos de ambos signos por prominencia (\geq 10 % del mayor) sobre la señal menos la recta entre los extremos. La fusión es el pico grande (\geq 25 % del mayor) de mayor temperatura; su signo define la dirección endotérmica (independiente del convenio «endo arriba/abajo» del equipo). La cristalización en frío es el mayor pico de signo opuesto por debajo de la ventana de fusión; T_g se busca por debajo de ella.

Referencias de \Delta H_m^0: B. Wunderlich, Thermal Analysis of Polymeric Materials (Springer, 2005); Brandrup, Immergut, Grulke, Polymer Handbook, 4.ª ed. (Wiley, 1999).

Tiempo de inducción a la oxidación (OIT)

matlens/core/thermal.py::oxidative_induction_time

Intersección de la tangente en el punto de máxima pendiente tras el cambio de gas con la línea base previa (media de los primeros \max(5, N/20) puntos):

t_{\mathrm{onset}} = t_i - \frac{\Phi_i - \Phi_{\mathrm{base}}}{(d\Phi/dt)_i}, \qquad \mathrm{OIT} = t_{\mathrm{onset}} - t_{\mathrm{switch}}

en min.

Referencia: ASTM E1858 / ISO 11357-6.

Separación de rampas en programas calentamiento–enfriamiento–calentamiento

Código: matlens/core/thermal.py::heating_segments

Un programa DSC de varios segmentos exportado como una sola tabla repite cada temperatura; ordenarlo por T entrelazaría los segmentos y destruiría las integrales. Algoritmo exacto:

  1. Se conservan los índices con T finita (con menos de 8 se devuelve todo como un solo segmento).
  2. T se suaviza con una media móvil de w = \max(5, \lfloor N/200\rfloor) puntos, forzada a impar, con relleno por repetición del borde.
  3. Se toma el signo de cada \Delta T_s con una tolerancia de 10^{-4}\,(T_{\max}-T_{\min}): +1 calentamiento, -1 enfriamiento, 0 isoterma.
  4. Se corta en cada cambio de signo y se conservan solo los tramos de signo +1, en el orden del archivo; isotermas y enfriamientos se descartan.
  5. Se eliminan las rampas cuyo intervalo de temperatura sea menor que el 15 % (min_frac) del de la rampa más larga.

La operación DSC automática analiza la primera rampa (primer calentamiento, con la historia térmica de la muestra) o la que indique el usuario.

Supuestos físicos y límites de validez de la cinética

  • Ecuación de un solo paso. Todos los métodos parten de d\alpha/dt = A\,e^{-E_a/RT} f(\alpha) con A y E_a constantes. Si la reacción tiene varios pasos (paralelos o consecutivos) o cambia de mecanismo, los métodos isoconversionales lo muestran como una dependencia E_a(\alpha), y step_warnings avisa cuando (E_{\max}-E_{\min})/|\bar E| > 0.25; Kissinger y Coats–Redfern dan entonces un valor aparente sin significado físico simple.
  • Calentamiento lineal. OFW, KAS, Starink, Kissinger y la integral de Vyazovkin suponen T = T_0 + \beta t. Con autocalentamiento o con programas no lineales solo Friedman (diferencial) sigue siendo correcto; MatLens no implementa la variante de Vyazovkin para programas arbitrarios de temperatura.
  • Aproximaciones de la integral de temperatura. OFW usa la de Doyle (\ln p(x) \approx -5.331 - 1.052\,x, con x = E/RT), adecuada hacia x \approx 20–60; KAS usa p(x)\approx e^{-x}/x^2 y Starink p(x)\propto e^{-1.0008x}/x^{1.92}. El sesgo que introducen no forma parte de la incertidumbre informada (véase el ejemplo resuelto: OFW se desvía alrededor del 1 % y KAS del 0.2 % en el caso sintético).
  • Kissinger supone que el máximo de d\alpha/dt ocurre a la misma conversión para todas las \beta (estrictamente cierto solo para orden 1); su \ln A corresponde a un modelo F1.
  • Coats–Redfern con una sola velocidad no distingue modelos g(\alpha) que linealizan igual de bien (efecto de compensación): varios modelos dan R^2 \approx 1 con E_a muy distintas (en el ejemplo, F1, A2 y A3). Las recomendaciones del ICTAC desaconsejan obtener E_a con una sola \beta.
  • Línea base DSC. La línea base lineal supone que la capacidad calorífica cambia linealmente a través del pico; si el pico coincide con un escalón de c_p (p. ej. fusión cerca de T_g) conviene la sigmoidal. Las entalpías no se corrigen por la constante de calibración del equipo: MatLens supone que el flujo de calor ya está calibrado.

Incertidumbre: qué se informa y qué no

ResultadoIncertidumbre informadaTipo
Kissinger E_au(s)\,R, error típico de la pendienteanalítica, k = 1
Kissinger \ln Aninguna—
OFW, KAS, Starink, Friedman E_a(\alpha)u(s)\,R/c, con c = 1.052, 1, 1.0008, 1analítica, k = 1
Vyazovkin E_a(\alpha)NaN (no se calcula)—
Coats–Redfern E_au(s)\,R; \ln A sin incertidumbreanalítica, k = 1
TGA, DSC, T_g, OIT, X_cninguna—

No se incluye: el sesgo de las aproximaciones de la integral de temperatura, la elección de la ventana de \alpha o de la línea base, la calibración de temperatura y de entalpía del equipo, el retardo térmico (que crece con \beta y desplaza T_p) ni la incertidumbre de la masa. Con 3–4 velocidades la regresión tiene 1–2 grados de libertad; un intervalo del 95 % exigiría el factor de Student (t_{0.975,1} \approx 12.7 con 3 puntos), que MatLens no aplica: el valor es k = 1.

Avisos de validez

Condiciones comprobadas en el código (los textos aparecen en la sección «Validity warnings» de esta página):

  • tga_summary: estado warning si la suma de las pérdidas de los escalones detectados difiere en más de 2 puntos porcentuales de la pérdida total 100\,(m_0 - m_\text{fin})/m_0 (pérdida temprana o ancha que el umbral de prominencia de la DTG no separó).
  • step_warnings: aviso si la dispersión relativa de E_a(\alpha) supera 0.25 (no es un paso único).
  • Errores que impiden el cálculo (ValueError, no se muestra ningún número): menos de 3 velocidades de calentamiento (isoconversional y Kissinger); menos de 10 puntos o pérdida nula al obtener \alpha de TGA; área nula al obtenerla de DSC; menos de 5 puntos entre los límites de \alpha (Coats–Redfern); menos de 20 puntos en TGA; falta la velocidad o la columna de tiempo, o la masa, en dsc_peak; transición vítrea no encontrada en el rango; pérdida fuera de 0–100 % en hydrate_water_count; menos puntos de los necesarios tras el cambio de gas en OIT.

Referencias con DOI

DOI comprobados en Crossref: Kissinger, Anal. Chem. 29 (1957) 1702, doi:10.1021/ac60131a045; Ozawa, Bull. Chem. Soc. Jpn. 38 (1965) 1881, doi:10.1246/bcsj.38.1881; Flynn y Wall, J. Res. NBS 70A (1966) 487, doi:10.6028/jres.070A.043; Friedman, J. Polym. Sci. C 6 (1964) 183, doi:10.1002/polc.5070060121; Starink, Thermochim. Acta 404 (2003) 163, doi:10.1016/S0040-6031(03)00144-8; Coats y Redfern, Nature 201 (1964) 68, doi:10.1038/201068a0; Vyazovkin et al. (ICTAC), Thermochim. Acta 520 (2011) 1, doi:10.1016/j.tca.2011.03.034. Akahira y Sunose (1971) y Vyazovkin, J. Comput. Chem. 22 (2001) 178 se citan sin DOI (no verificado). Las normas ASTM/ISO se citan por su código.

Ejemplos resueltos

Generados por tools/gen_equation_examples.py (módulo tools/equation_examples/thermal.py) ejecutando las funciones de MatLens sobre casos sintéticos; no se editan a mano.

Ejemplo resuelto: cinética (Kissinger, isoconversionales, Coats–Redfern)

Caso sintético: reacción de primer orden (F1) con E_a = 150 kJ/mol y \ln A = 25 (A en s⁻¹), calentada a 2, 5, 10, 20 K/min; \alpha(T) exacto por integración numérica de d\alpha/dT = (A/\beta)e^{-E_a/RT}(1-\alpha) en una rejilla de 0.1 K entre 150 y 450 °C. Resultados de kissinger, isoconversional y coats_redfern:

β (K/min)T_p (K)
2576.137
5592.417
10605.338
20618.816

Kissinger: E_a = 150 ± 6.5e-05 kJ/mol, \ln A = 25, R^2 = 1.

MétodoE_a (α = 0.2)E_a (α = 0.5)E_a (α = 0.8)
Kissinger–Akahira–Sunose149.73 ± 0.0042149.71 ± 0.0043149.7 ± 0.0044
Ozawa–Flynn–Wall151.36 ± 0.063151.66 ± 0.068151.89 ± 0.071
Starink (2003)149.99 ± 0.0014149.99 ± 0.0013149.98 ± 0.0013
Friedman (diferencial)150 ± 1.5e-05150 ± 4.9e-05150 ± 0.00026
Vyazovkin (integral avanzado)nan150150

(E_a en kJ/mol, ± error típico de la pendiente, k = 1; Vyazovkin no da incertidumbre.)

Coats–Redfern a 10 K/min, tres mejores modelos por R^2:

ModeloE_a (kJ/mol)u(E_a)\ln AR^2
F1149.720.0003325.691
A269.9510.00318.7080.999999
A343.3630.0042.8220.999994

Las diferencias con el valor verdadero (150 kJ/mol) muestran el sesgo propio de cada aproximación de la integral de temperatura; no forman parte de la incertidumbre informada.

En este ejemplo Vyazovkin da NaN en \alpha = 0.2 porque con la rejilla 0.2/0.5/0.8 el primer segmento empieza en \max(0.2 - 0.3, 0) = 0, y ninguna curva cubre exactamente \alpha = 0; con la rejilla por defecto (paso 0.05) ese caso solo afecta al primer punto si las curvas no empiezan en \alpha = 0.

Ejemplo resuelto: escalones TGA y balance de masa

Caso sintético: dos escalones sigmoidales de 12 % (centro 120 °C, anchura 8 °C) y 30 % (450 °C, 15 °C) sobre 100 %, rejilla de 0.5 °C y ruido gaussiano \sigma = 0.01 % (semilla fija). Resultado de tga_steps y tga_summary:

EscalónOnset (°C)T_{max} DTG (°C)Endset (°C)Pérdida (%)
1104.67120.5135.3211.83
2421.42449.5478.6529.57

Balance: pérdida total 42 %, detectada 41.4 %, sin asignar 0.601 %, residuo 58 %; estado de validez ok.

Si el primer escalón fuera agua de hidratación de un compuesto anhidro de 160 g/mol, hydrate_water_count daría n_{H_2O} = 1.192.

Ejemplo resuelto: entalpía de un pico DSC

Caso sintético sin ruido: pico gaussiano de 2.0 mW de altura y \sigma = 4 K centrado en 150 °C sobre una línea base inclinada (0.5 mW + 0.002 mW/K), \beta = 10 K/min, masa 5 mg, integrado entre 120 y 180 °C con línea base lineal (dsc_peak). Área analítica: 2.0\cdot4\sqrt{2\pi}/(\beta/60) = 120.32 mJ, es decir 24.064 J/g.

MagnitudValor
\lvert\Delta H\rvert (J/g)24.064
dirección1
T_{pico} (°C)150
T_{onset} (°C)142
T_{endset} (°C)158
X_c con \Delta H_m^0 = 293 J/g (%)8.213

Ejemplo resuelto: separación de rampas

Programa calentamiento–enfriamiento–calentamiento 25 → 200 → 25 → 200 °C exportado como una sola tabla de 1198 filas. heating_segments devuelve:

Rampaprimer índiceúltimo índiceT inicial (°C)T final (°C)
1039925200
2798119725200

El enfriamiento se descarta; la operación DSC automática analiza la primera rampa salvo que se indique otra.

Generado desde MatLens c0ab138. ← Todas las técnicas