TNT Multi-Species (Multiple Bond Types) — Handbook¶
Quick Reference¶
Use When¶
The TNT Multi-Species model is appropriate for network materials containing multiple distinct bond types with different relaxation timescales:
Dual-crosslinked hydrogels (physical + chemical crosslinks)
Interpenetrating polymer networks (IPNs)
Heterogeneous biological networks (fibrin + collagen, actin + intermediate filaments)
Multi-strength supramolecular assemblies (hydrogen bonds + hydrophobic interactions)
Hierarchical networks with discrete energy barriers
Reversible networks with multiple association strengths
Key diagnostic: Multiple distinct relaxation peaks in \(G''(\omega)\) or multi-modal relaxation spectrum.
Parameters¶
The model requires \(2N + 1\) parameters for \(N\) bond species:
Symbol |
Typical Value |
Units |
Description |
|---|---|---|---|
\(G_i\) |
\(10^2\) to \(10^5\) |
Pa |
Modulus contribution from species \(i\) |
\(\tau_{b,i}\) |
\(10^{-3}\) to \(10^3\) |
s |
Bond lifetime of species \(i\) |
\(\eta_s\) |
0.0 to \(10^{-2}\) |
Pa·s |
Solvent viscosity (background) |
\(N\) |
2 to 5 |
dimensionless |
Number of bond species (constructor argument) |
Total parameters: \(2N + 1\) (e.g., 5 for \(N=2\), 11 for \(N=5\))
Key Equation¶
Each bond species evolves independently:
Total stress is the superposition of all species contributions:
where \(\mathbf{S}_i\) is the conformation tensor for species \(i\), \(\boldsymbol{\kappa}\) is the velocity gradient tensor, and \(\mathbf{D}\) is the rate-of-strain tensor.
Supported Test Modes¶
All six rheological protocols are supported:
FLOW_CURVE: Steady shear viscosity \(\eta(\dot{\gamma})\)
OSCILLATION: SAOS moduli \(G'(\omega)\), \(G''(\omega)\)
STARTUP: Stress growth \(\sigma^+(t, \dot{\gamma})\)
CREEP: Strain response \(\gamma(t, \sigma_0)\)
RELAXATION: Stress relaxation \(G(t)\) (analytical)
LAOS: Large amplitude oscillatory shear
Material Examples¶
- Dual-Crosslinked Hydrogels:
Fast species: hydrogen bonds (\(\tau_{b,1} \sim 0.01\) s)
Slow species: covalent crosslinks (\(\tau_{b,2} \sim 100\) s)
Example: Alginate-polyacrylamide (Sun et al. 2012)
- Biological Networks:
Species 1: Fibrin (\(\tau_{b,1} \sim 0.1\) s)
Species 2: Collagen (\(\tau_{b,2} \sim 10\) s)
Interpenetrating structure in blood clots
- Supramolecular Networks:
Fast species: H-bonds (\(\tau_{b,1} \sim 0.001\) s)
Medium: Hydrophobic (\(\tau_{b,2} \sim 1\) s)
Slow: Ionic (\(\tau_{b,3} \sim 100\) s)
Key Characteristics¶
Multi-modal relaxation: Discrete peaks at \(\omega_i = 1/\tau_{b,i}\)
Broad relaxation spectrum: From discrete bond types, not distribution
Superposition principle: Total response = sum of Maxwell modes
Physical interpretation: Each mode corresponds to a specific bond type
Network equivalence: Mathematically equivalent to Generalized Maxwell, but with network interpretation
Notation Guide¶
Primary Variables¶
Symbol |
Definition |
|---|---|
\(\mathbf{S}_i\) |
Conformation tensor for species \(i\) (dimensionless, 3x3 symmetric) |
\(S_{xx,i}, S_{yy,i}, S_{zz,i}\) |
Normal components of conformation tensor for species \(i\) |
\(S_{xy,i}\) |
Shear component of conformation tensor for species \(i\) |
\(\boldsymbol{\sigma}\) |
Total Cauchy stress tensor (Pa, 3x3 symmetric) |
\(\boldsymbol{\kappa}\) |
Velocity gradient tensor (1/s, 3x3) |
Parameters and Constants¶
Symbol |
Definition |
|---|---|
\(N\) |
Number of distinct bond species (integer \(\geq 2\)) |
\(G_i\) |
Elastic modulus contribution from species \(i\) (Pa) |
\(\tau_{b,i}\) |
Bond lifetime for species \(i\) (s) |
\(\eta_s\) |
Solvent viscosity (Pa·s) |
\(\mathbf{I}\) |
Identity tensor (3x3) |
\(\mathbf{D}\) |
Rate-of-strain tensor: \(\mathbf{D} = (\boldsymbol{\kappa} + \boldsymbol{\kappa}^T)/2\) |
Derived Quantities¶
Symbol |
Definition |
|---|---|
\(G_{\text{total}}\) |
Total plateau modulus: \(G_{\text{total}} = \sum_{i=1}^{N} G_i\) |
\(\lambda_i\) |
Relaxation time: \(\lambda_i = \tau_{b,i}\) (equivalent for single-mode TNT) |
\(\eta_i\) |
Viscosity contribution: \(\eta_i = G_i \tau_{b,i}\) |
\(\eta_0\) |
Zero-shear viscosity: \(\eta_0 = \sum_{i=1}^{N} G_i \tau_{b,i} + \eta_s\) |
\(\omega_i\) |
Characteristic frequency: \(\omega_i = 1/\tau_{b,i}\) |
Protocol-Specific Variables¶
Symbol |
Definition |
|---|---|
\(\dot{\gamma}\) |
Shear rate (1/s, for flow curve and startup) |
\(\omega\) |
Angular frequency (rad/s, for oscillation) |
\(\gamma_0\) |
Strain amplitude (dimensionless, for LAOS) |
\(\sigma_0\) |
Applied stress (Pa, for creep) |
\(G'(\omega)\) |
Storage modulus (Pa, oscillation) |
\(G''(\omega)\) |
Loss modulus (Pa, oscillation) |
\(G(t)\) |
Relaxation modulus (Pa, relaxation) |
Overview¶
Conceptual Foundation¶
The TNT Multi-Species model extends the single-mode Tanaka-Edwards transient network theory to materials with multiple distinct bond types. Unlike the Generalized Maxwell model (which uses empirical mode decomposition), this model assigns a physical interpretation to each mode: a chemically distinct bond population with its own modulus \(G_i\) and lifetime \(\tau_{b,i}\).
Physical picture:
Each bond type (species) forms an independent transient network
Species do not interconvert or couple during deformation
Each species has its own energy barrier for bond breakage, yielding distinct \(\tau_{b,i}\)
Total stress is the additive superposition of species contributions
Mathematically equivalent to multi-mode Maxwell, but with network interpretation
Relationship to Other Models¶
- Generalized Maxwell:
Identical mathematics for linear response (SAOS, relaxation)
Different interpretation: TNT assigns physical meaning to each mode
Nonlinear regime: TNT includes conformation evolution; GMM is linear only
- Single-Mode Tanaka-Edwards:
Special case: \(N=1\) reduces to base TNT
Extension: Multi-species adds independent bond populations
- Sticky Rouse:
Different physics: Sticky Rouse has distributed lifetimes (Rouse modes)
Multi-species: Discrete lifetimes from distinct bond types
- Loop-Bridge Model:
Coupling: Loop-Bridge has inter-species conversion (loop to bridge)
Multi-species: No coupling, independent evolution
Physical Foundations¶
Multiple Bond Types¶
Real network materials often contain chemically distinct bond types:
- Hydrogen Bonds:
Typical \(E_a \sim 10\) to 30 kJ/mol
Lifetime \(\tau_b \sim 10^{-3}\) to \(10^{-1}\) s at room temperature
Common in protein gels, synthetic polymers with H-bonding groups
- Hydrophobic Interactions:
Typical \(E_a \sim 20\) to 50 kJ/mol
Lifetime \(\tau_b \sim 0.1\) to 10 s
Entropy-driven, temperature-sensitive
- Ionic Bonds:
Typical \(E_a \sim 30\) to 80 kJ/mol
Lifetime \(\tau_b \sim 1\) to \(10^3\) s
Strong dependence on ionic strength
- Covalent Crosslinks:
Typical \(E_a > 150\) kJ/mol
Lifetime \(\tau_b \to \infty\) (permanent on experimental timescales)
Provides long-time elasticity
Each bond type has a different energy landscape, yielding different Arrhenius factor:
Independent Evolution¶
The model assumes no coupling between species:
No conversion: Bonds of type 1 do not convert to type 2
No cooperative breaking: Breaking of one species does not affect others
Independent kinetics: Each species obeys its own relaxation equation
Additive stress: Total stress = sum of species contributions (linear superposition)
This is valid when:
Bond types are chemically distinct (different functional groups)
Timescale separation is sufficient (\(\tau_{b,i}/\tau_{b,j} > 10\))
No synergistic effects (e.g., one bond type does not stabilize another)
Mean-field applies per species (high bond density within each type)
Stress Additivity¶
Total stress is the sum of contributions from each species:
where:
Physical interpretation:
\(G_i\) is the modulus from species \(i\) alone (proportional to number density of type-\(i\) bonds)
\(\mathbf{S}_i - \mathbf{I}\) is the extra stress from deformation of species \(i\) network
No cross-terms between species (independence assumption)
Governing Equations¶
Per-Species Evolution¶
Each species evolves according to the Tanaka-Edwards equation independently:
where:
\(\mathbf{S}_i\): Conformation tensor for species \(i\) (3x3 symmetric)
\(\boldsymbol{\kappa} = \nabla \mathbf{v}\): Velocity gradient tensor
\(\tau_{b,i}\): Bond lifetime for species \(i\)
\(\mathbf{I}\): Identity tensor (equilibrium conformation)
Component form (simple shear \(\dot{\gamma}\)):
Total Stress¶
The total stress tensor is:
For simple shear (measuring \(\sigma_{xy}\)):
State Vector Representation¶
For numerical integration, the state is represented as a 4N-dimensional vector:
This enables efficient vectorization via JAX vmap over species index.
Analytical Solutions: SAOS¶
For small-amplitude oscillatory shear \(\gamma(t) = \gamma_0 \sin(\omega t)\), the complex modulus is:
Storage modulus:
Loss modulus:
Key features:
Each species contributes a Maxwell peak at \(\omega_i = 1/\tau_{b,i}\)
\(G'(\omega)\) transitions from \(G_{\text{total}}\) (high \(\omega\)) to 0 (low \(\omega\)) through plateaus
\(G''(\omega)\) shows \(N\) distinct peaks if \(\tau_{b,i}\) are well-separated
Analytical Solutions: Relaxation¶
For step strain \(\gamma(t) = \gamma_0 H(t)\) (Heaviside function), the relaxation modulus is:
Multi-exponential decay with \(N\) discrete relaxation times.
Analytical Solutions: Flow Curve¶
For steady simple shear at rate \(\dot{\gamma}\), the steady-state shear stress is:
Viscosity:
Limiting behavior:
Zero-shear viscosity: \(\eta_0 = \sum_{i=1}^{N} G_i \tau_{b,i} + \eta_s\)
High-shear viscosity: \(\eta_{\infty} = \eta_s\) (all networks relax)
Shear thinning: Each species contributes thinning at \(\dot{\gamma}_i \sim 1/\tau_{b,i}\)
Parameter Table¶
Comprehensive Parameter List¶
Parameter |
Symbol |
Typical Range |
Units |
Description |
|---|---|---|---|---|
Species moduli |
\(G_i\) |
\(10^2\) to \(10^5\) |
Pa |
Modulus contribution from species \(i\) (\(N\) values) |
Species lifetimes |
\(\tau_{b,i}\) |
\(10^{-3}\) to \(10^3\) |
s |
Bond lifetime for species \(i\) (\(N\) values) |
Solvent viscosity |
\(\eta_s\) |
0.0 to \(10^{-2}\) |
Pa·s |
Background Newtonian viscosity (1 value) |
Number of species |
\(N\) |
2 to 5 |
dimensionless |
Number of bond types (constructor argument) |
Total parameters: \(2N + 1\)
Parameter Interpretation¶
Number of Species (N)¶
Physical meaning:
\(N\) = number of chemically distinct bond types
Each species represents a different molecular interaction or crosslink
Common cases:
- N = 1:
Reduces to single-mode Tanaka-Edwards
Single bond type (homogeneous network)
- N = 2:
Most common for dual-crosslinked materials
Example: Fast physical + slow chemical crosslinks
- N = 3:
Triple network or three interaction types
- N >= 4:
High parameter count (>= 9 parameters)
Risk of overfitting without sufficient data
Species Moduli (G_i)¶
Physical meaning:
\(G_i\) is proportional to the number density of type-\(i\) bonds
Reflects the strength of species \(i\) contribution to total elasticity
Relative contributions:
where \(f_i\) is the fraction of total modulus from species \(i\).
Species Lifetimes (tau_b_i)¶
Physical meaning:
\(\tau_{b,i}\) is the average time before a type-\(i\) bond breaks
Inversely related to bond breakage rate: \(k_{\text{break},i} = 1/\tau_{b,i}\)
Timescale separation:
Distinct peaks in \(G''(\omega)\) require \(\tau_{b,i}/\tau_{b,j} > 10\)
If \(\tau_{b,i}/\tau_{b,j} < 3\), species \(i\) and \(j\) may be indistinguishable
Validity and Assumptions¶
Core Assumptions¶
Independent species: - No conversion between bond types - No cooperative breaking or stabilization - Each species evolves according to its own kinetics
Mean-field per species: - High bond density within each type - No spatial correlations between species - Uniform distribution of each bond type
Gaussian chains: - All species obey Gaussian network statistics - Valid for small to moderate deformations - Breaks down for chain stretching (strain > 100 percent)
Constant breakage rate: - \(1/\tau_{b,i}\) independent of stress (affine network) - No stress-assisted bond breaking (unlike Sticky Rouse)
Affine deformation: - Chains deform with the bulk medium - No chain slippage or retraction
Regimes¶
Frequency Regimes (SAOS)¶
- High frequency (\(\omega \gg 1/\tau_{b,\text{min}}\)):
All species are elastic (no relaxation)
\(G'(\omega) \approx \sum_{i=1}^{N} G_i = G_{\text{total}}\)
\(G''(\omega) \approx \omega \eta_s\) (if \(\eta_s > 0\))
- Intermediate frequency (\(1/\tau_{b,i} < \omega < 1/\tau_{b,i-1}\)):
Slowest \(i\) species have relaxed, faster species still elastic
\(G'(\omega) \approx \sum_{j=i}^{N} G_j\) (partial sum)
\(G''(\omega)\) shows local minimum between peaks
- Low frequency (\(\omega \ll 1/\tau_{b,\text{max}}\)):
All species have relaxed (if all bonds are transient)
\(G'(\omega) \sim \omega^2\), \(G''(\omega) \sim \omega\) (terminal regime)
\(\eta_0 = \sum_{i=1}^{N} G_i \tau_{b,i} + \eta_s\)
What You Can Learn¶
Structural Information¶
- Number of bond types:
\(N\) determined from number of distinct peaks in \(G''(\omega)\)
Requires wide frequency range (3+ decades)
- Bond population fractions:
\(f_i = G_i / G_{\text{total}}\) quantifies relative importance
Dominant species (\(f_i > 0.5\)) controls long-time behavior
- Lifetime hierarchy:
Order of \(\tau_{b,i}\) reveals fastest to slowest bond types
Lifetime ratios \(\tau_{b,i}/\tau_{b,j}\) indicate timescale separation
Experimental Design¶
Essential Measurements¶
- 1. Wide-frequency SAOS (critical):
Range: At least 3 decades to resolve \(N=2\) modes, 4+ decades for \(N=3\)
Example: 0.01 to 100 rad/s for \(\tau_{b,1} = 0.1\) s, \(\tau_{b,2} = 10\) s
Why: Each mode needs approximately 1 decade around \(\omega_i = 1/\tau_{b,i}\) to be resolved
- 2. Stress relaxation (recommended):
Protocol: Step strain \(\gamma_0 = 1\) percent to 10 percent (linear regime)
Duration: \(t_{\max} > 10 \tau_{b,\text{max}}\) to capture slowest decay
Why: Direct measurement of \(G(t) = \sum_i G_i \exp(-t/\tau_{b,i})\)
- 3. Flow curve (optional but valuable):
Range: \(\dot{\gamma}\) from \(0.01/\tau_{b,\text{max}}\) to \(10/\tau_{b,\text{min}}\)
Why: Validates nonlinear predictions, reveals shear thinning transitions
Computational Implementation¶
Efficient Multi-Mode Computation¶
Key strategy: Use JAX vmap to vectorize over species dimension.
State vector structure:
State is a 4N-dimensional flattened array: [S_xx_0, S_yy_0, S_zz_0, S_xy_0, S_xx_1, …, S_xy_N-1]
Vectorized ODE:
Each species evolves independently via the TNT equation. JAX vmap applies the single-species evolution to all species in parallel.
Benefits:
Parallel computation of all species (GPU-friendly)
Code reuse from single-mode TNT
Memory efficient (no loops)
Fitting Guidance¶
Model Selection (Determining N)¶
Strategy:
Start with :math:`N=2` (most common, 5 parameters)
Fit to wide-frequency SAOS data
Increase :math:`N` if: - Residuals show systematic structure (e.g., extra peaks) - BIC or AIC significantly decreases - Visual inspection suggests additional modes
Bayesian Information Criterion (BIC):
where \(n\) = number of data points, \(k = 2N+1\) = number of parameters, RSS = residual sum of squares.
Decision rule:
If delta BIC = BIC(N+1) - BIC(N) < -10: Strong evidence for \(N+1\)
If -10 < delta BIC < -2: Weak evidence for \(N+1\)
If delta BIC > -2: No evidence, keep \(N\)
Practical limit: \(N \leq 5\) (11 parameters) for most datasets.
Primary Data Source¶
SAOS is best for parameter estimation:
Analytical solution (fast, no ODE integration)
Directly reveals \(N\) distinct peaks in \(G''(\omega)\)
Linear regime (simple interpretation)
Recommended workflow:
Fit SAOS first to get initial \(G_i\), \(\tau_{b,i}\), \(\eta_s\)
Validate with relaxation (if available) to confirm \(\tau_{b,i}\)
Test predictions on flow curve, startup (nonlinear validation)
Usage Examples¶
Basic Fitting (N=2)¶
from rheojax.models.tnt import TNTMultiSpecies
from rheojax.core import RheoData
import numpy as np
# Experimental data
omega = np.logspace(-2, 2, 50)
G_star = measure_saos(omega)
# Create model with 2 species (dual-crosslinked)
model = TNTMultiSpecies(n_species=2)
# Fit to SAOS data
rheo_data = RheoData(x=omega, y=G_star, test_mode='oscillation')
result = model.fit(rheo_data)
# Inspect fitted parameters
params = model.get_parameters()
print(f"G_1 = {params['G_1'].value:.1f} Pa")
print(f"tau_b_1 = {params['tau_b_1'].value:.3f} s")
Model Selection (N=2 vs N=3)¶
# Fit with N=2
model_2 = TNTMultiSpecies(n_species=2)
result_2 = model_2.fit(rheo_data)
rss_2 = result_2.residual_sum_of_squares
k_2 = 5
bic_2 = len(omega) * np.log(rss_2 / len(omega)) + k_2 * np.log(len(omega))
# Fit with N=3
model_3 = TNTMultiSpecies(n_species=3)
result_3 = model_3.fit(rheo_data)
rss_3 = result_3.residual_sum_of_squares
k_3 = 7
bic_3 = len(omega) * np.log(rss_3 / len(omega)) + k_3 * np.log(len(omega))
# Compare
if bic_3 - bic_2 < -10:
print("Strong evidence for N=3")
else:
print("N=2 is sufficient")
Permanent + Transient Dual Network¶
The multi-species model naturally accommodates networks with both permanent (chemical) and transient (physical) crosslinks. This is the most common application of the multi-species framework, representing materials such as dual-crosslinked hydrogels, hybrid organogels, and biological tissues with both covalent and non-covalent bonds.
Total Stress Decomposition¶
The total stress separates into a non-relaxing permanent contribution and transient species contributions:
where \(G_{\text{chem}}\) is the modulus of the permanent (chemical) network and \(\mathbf{B}\) is the left Cauchy-Green deformation tensor. The permanent species has \(\tau_{b} \to \infty\) (no breakage), contributing a non-relaxing elastic plateau.
Stress Relaxation With Permanent Bonds¶
Under step strain, the relaxation modulus approaches a non-zero equilibrium:
The stress never fully relaxes to zero. This is the fundamental difference from purely physical (transient) networks: the permanent bonds provide a long-time elastic restoring force, so that:
Mathematically, a “permanent” species simply means \(\tau_{b,i} \gg t_{\text{exp}}\), where \(t_{\text{exp}}\) is the experimental timescale. In practice, any species with \(\tau_{b,i}\) exceeding the longest measurement time by a factor of \(\sim 100\) is effectively permanent.
Creep Saturation¶
Unlike purely transient networks which flow indefinitely under constant stress, dual networks with permanent bonds exhibit creep saturation: the strain reaches a finite asymptote rather than growing without bound.
Strain Saturation¶
Under constant applied stress \(\sigma_0\), the strain saturates at:
No steady-state flow occurs because the permanent network acts as a spring in parallel with the transient species, providing an equilibrium restoring force that eventually balances the applied stress.
Creep Compliance¶
The creep compliance for a dual network takes the form:
where \(\tau_i^*\) are the retardation times (related to but distinct from the relaxation times \(\tau_{b,i}\)).
Physical insight: The strain asymptote directly gives the permanent network modulus:
This provides a model-independent route to measuring the permanent network contribution from a single creep experiment.
“Double-Yielding” in LAOS¶
When bond species have well-separated lifetimes, large amplitude oscillatory shear (LAOS) reveals sequential yielding — a phenomenon where different bond populations break at different strain amplitudes.
Sequential Yielding Mechanism¶
The progression with increasing strain amplitude \(\gamma_0\) is:
- Small \(\gamma_0\) (linear regime):
All species remain elastic. The Lissajous figure is a linear ellipse with stiffness reflecting \(G_{\text{total}} = \sum_i G_i\).
- Intermediate \(\gamma_0\) (first yielding):
Weak bonds (short \(\tau_{b}\)) break and reform within a cycle. The first yielding event occurs when \(\gamma_0 \dot{\gamma}_{\max} \sim 1/\tau_{b,\text{weak}}\). The Lissajous figure begins to distort, showing the onset of nonlinearity.
- Large \(\gamma_0\) (second yielding):
Strong bonds (long \(\tau_{b}\)) also break, leading to a second yielding event. The material becomes fully fluidized, and the Lissajous figure shows a characteristic butterfly or rectangular shape.
LAOS Signatures¶
The Lissajous figure shows two distinct stiffness changes as the strain amplitude increases, corresponding to the progressive loss of each bond population.
This “double-yielding” signature is also visible in the intensity ratio \(I_{3/1}\) (third harmonic normalized by fundamental) plotted against \(\gamma_0\): for \(N=2\) species, \(I_{3/1}(\gamma_0)\) shows two peaks, one per bond type. Each peak corresponds to the onset of nonlinear response from a specific bond population. More generally, \(N\) well-separated species produce \(N\) peaks in \(I_{3/1}(\gamma_0)\).
Progressive Loss Under Flow¶
The flow curve of a multi-species network shows staged shear thinning: each bond species yields at a different critical shear rate, producing a characteristic stepped viscosity profile.
Staged Shear Thinning¶
The critical shear rate for each species is:
The flow curve exhibits distinct regimes as the shear rate increases:
- Low rates (\(\dot{\gamma} \ll 1/\tau_{b,\max}\)):
All bond species are intact. The full network modulus \(G_{\text{total}} = \sum_i G_i\) is active, and the material exhibits Newtonian behavior with zero-shear viscosity \(\eta_0 = \sum_i G_i \tau_{b,i} + \eta_s\).
- Intermediate rates (\(1/\tau_{b,i+1} < \dot{\gamma} < 1/\tau_{b,i}\)):
Species \(i\) (and all weaker species) have yielded. The effective modulus is reduced to \(G_{\text{eff}} = \sum_{j>i} G_j\), and the viscosity contribution from species \(i\) is lost.
- High rates (\(\dot{\gamma} \gg 1/\tau_{b,\min}\)):
All transient species have yielded. Only the solvent viscosity remains: \(\sigma \to \eta_s \cdot \dot{\gamma}\).
Staircase Flow Curve¶
On a log-log plot, the viscosity \(\eta(\dot{\gamma})\) shows a staircase pattern with \(N\) steps, each corresponding to the loss of one bond type. The height of each step is proportional to \(G_i \tau_{b,i}\), and the transition between steps occurs at \(\dot{\gamma} \approx 1/\tau_{b,i}\).
This staircase structure is a direct fingerprint of the discrete multi-species nature and distinguishes it from continuous spectrum models (e.g., KWW stretched exponential) which produce smooth power-law thinning.
Failure Mode: Bond Hierarchy¶
Failure Mode
Mechanism: Under increasing deformation, bond types fail sequentially from weakest (shortest \(\tau_{b}\)) to strongest (longest \(\tau_{b}\)). This progressive failure cascade determines the material’s nonlinear response.
Signature: Multi-step yielding in flow curves and LAOS, visible as multiple inflection points in \(\eta(\dot{\gamma})\) and multiple peaks in \(I_{3/1}(\gamma_0)\).
Physical origin: Each bond species has a characteristic force scale; exceeding it causes that species to dynamically break faster than it can reform. The critical rate for species \(i\) is \(\dot{\gamma}_{c,i} \approx 1/\tau_{b,i}\).
Implication: The material’s response depends on which bonds have “survived” at a given rate — the effective constitutive law changes character as bonds are progressively lost. At low rates the material behaves as a full \(N\)-species network; at high rates only the strongest (or permanent) species remain.
Design insight: By tuning the ratio \(G_{\text{strong}}/G_{\text{weak}}\) and \(\tau_{\text{strong}}/\tau_{\text{weak}}\), one can engineer materials with prescribed yielding sequences. This is important for self-healing materials (where weak bonds sacrifice first to protect the network), drug delivery gels (where sequential release requires staged degradation), and impact-absorbing materials (where energy dissipation is maximized by progressive bond failure).
See Also¶
TNT Shared Reference:
TNT Protocol Equations — Shared Reference — Full protocol equations and numerical methods
TNT Knowledge Extraction Guide — Model identification and fitting guidance
TNT Base Model:
TNT Tanaka-Edwards (Basic Transient Network) — Handbook — Base model (single-mode limit, N=1)
Closely Related TNT Variants:
TNT Sticky Rouse (Multi-Mode Sticker Dynamics) — Handbook — Multi-mode via Rouse dynamics between stickers (spectrum from chain physics rather than discrete species)
TNT Loop-Bridge (Two-Species Kinetics) — Handbook — Two-species with topology coupling (loops ↔ bridges interconversion)
TNT Cates (Living Polymers / Wormlike Micelles) — Handbook — Living polymer limit (scission/recombination as species dynamics)
Complementary Extensions:
TNT Bell (Force-Dependent Breakage) — Handbook — Force-dependent breakage (can be applied per species)
TNT FENE-P (Finite Extensibility) — Handbook — Finite extensibility (can be applied per species)
External Comparisons:
Generalized Maxwell Model (Multi-Mode) — Empirical multi-mode model (no network interpretation)
DMT Thixotropic Models — Scalar structure parameter with thixotropic kinetics
API Reference¶
- class rheojax.models.tnt.TNTMultiSpecies(n_species=2)[source]¶
Bases:
TNTBaseMulti-species Transient Network Theory model.
Implements a network with N independent bond populations, each with its own modulus G_i and lifetime τ_b_i. The total stress is a superposition of N Maxwell modes.
This is equivalent to a generalized Maxwell model where each mode represents a distinct physical crosslink species rather than a mathematical decomposition.
- Parameters:
n_species (
int) – Number of distinct bond species (N ≥ 1)
- parameters¶
Model parameters: [G_0, tau_b_0, G_1, tau_b_1, …, G_{N-1}, tau_b_{N-1}, eta_s]
- Type:
ParameterSet
Notes
- The state vector has 4*N components:
[S_xx_0, S_yy_0, S_zz_0, S_xy_0, …, S_xy_{N-1}]
Each species evolves independently via the upper-convected derivative with constant breakage/creation rates.
See also
TNTSingleModeSingle-mode TNT with variant breakage rates
GeneralizedMaxwellMathematical multi-mode decomposition
- __init__(n_species=2)[source]¶
Initialize multi-species TNT model.
- Parameters:
n_species (
int) – Number of distinct bond species (must be ≥ 1)
- initialize_from_creep(t, strain, sigma_applied=1.0)[source]¶
Initialize parameters from creep data for numerical stability.
For multi-species, sets eta_s to prevent infinite initial shear rate.
- get_equilibrium_conformation_multimode()[source]¶
Return equilibrium conformation for all N modes.
- Returns:
Equilibrium state [1, 1, 1, 0, …, 1, 1, 1, 0] with shape (4N,)
- Return type:
- model_function(X, params, test_mode=None, **kwargs)[source]¶
NumPyro/BayesianMixin model function.
Routes to appropriate prediction based on test_mode. This is the stateless function used for both NLSQ optimization and Bayesian inference.
- Parameters:
X (array-like) – Independent variable
params (array-like) – Parameter values: [G_0, tau_b_0, G_1, tau_b_1, …, G_{N-1}, tau_b_{N-1}, eta_s] Total length: 2*N + 1
test_mode (str, optional) – Override stored test mode
- Returns:
Predicted response
- Return type:
jnp.ndarray
- predict_flow_curve(gamma_dot, return_components=False)[source]¶
Predict steady shear stress and viscosity.
Analytical superposition: σ = Σ G_i·τ_b_i·γ̇ / (1 + (τ_b_i·γ̇)²) + η_s·γ̇
- predict_saos(omega, return_components=True)[source]¶
Predict SAOS storage and loss moduli.
- Analytical superposition:
G’(ω) = Σ G_i·(ωτ_i)² / (1 + (ωτ_i)²) G’’(ω) = Σ G_i·(ωτ_i) / (1 + (ωτ_i)²) + η_s·ω
- predict_normal_stresses(gamma_dot)[source]¶
Predict first and second normal stress differences.
- For multi-mode UCM (conformation tensor):
N₁ = Σ 2·G_i·(τ_b_i·γ̇)² N₂ = 0 (upper-convected derivative)
- simulate_startup(t, gamma_dot, return_full=False)[source]¶
Simulate startup flow at constant shear rate.
- Parameters:
- Returns:
Shear stress σ(t), or dict with ‘S_xx’, ‘S_yy’, ‘S_xy’, ‘S_zz’ (each shape (T, N)) if return_full=True
- Return type:
- simulate_relaxation(t, gamma_dot_preshear)[source]¶
Simulate stress relaxation after cessation of steady shear.
- Analytical multi-mode relaxation:
σ(t) = Σ σ₀_i·exp(-t/τ_b_i)
- simulate_creep(t, sigma_applied, return_rate=False)[source]¶
Simulate creep deformation under constant stress.
- simulate_laos(t, gamma_0, omega, n_cycles=None)[source]¶
Simulate Large-Amplitude Oscillatory Shear (LAOS).
- Parameters:
- Returns:
Dictionary with keys: ‘t’, ‘strain’, ‘stress’, ‘strain_rate’
- Return type:
- get_relaxation_spectrum(t=None, n_points=100)[source]¶
Get relaxation modulus G(t).
For multi-species TNT: G(t) = Σ G_i·exp(-t/τ_b_i)
Constructor Signature:
TNTMultiSpecies(n_species: int = 2)
Parameters:
n_speciesint, default=2Number of distinct bond species. Must be >= 2. Total parameters will be 2N + 1.
References¶
Foundational Theory¶
Tanaka, F., & Edwards, S. F. (1992). Viscoelastic properties of physically crosslinked networks: Transient network theory. Macromolecules, 25(5), 1516-1523. DOI: 10.1021/ma00031a024
Rubinstein, M., & Semenov, A. N. (2001). Dynamics of entangled solutions of associating polymers. Macromolecules, 34(4), 1058-1068. DOI: 10.1021/ma0013049
Dual-Crosslinked Networks¶
Narita, T., Mayumi, K., Ducouret, G., & Hébraud, P. (2013). Viscoelastic properties of poly(vinyl alcohol) hydrogels having permanent and transient cross-links studied by microrheology, classical rheometry, and dynamic light scattering. Macromolecules, 46(10), 4174-4183. DOI: 10.1021/ma400600f
Sun, J.-Y., Zhao, X., Illeperuma, W. R. K., et al. (2012). Highly stretchable and tough hydrogels. Nature, 489(7414), 133-136. DOI: 10.1038/nature11409
Reversible Network Rheology¶
Skrzeszewska, P. J., Sprakel, J., de Wolf, F. A., et al. (2010). Fracture and self-healing in a well-defined self-assembled polymer network. Macromolecules, 43(7), 3542-3548. DOI: 10.1021/ma1000173
Long, R., Mayumi, K., Creton, C., Narita, T., & Hui, C.-Y. (2014). Time dependent behavior of a dual cross-link self-healing gel: Theory and experiments. Macromolecules, 47(20), 7243-7250. DOI: 10.1021/ma501290h