Le calcul est coupé en deux selon que T <2000 K ou T> 2000 K. Pour la partie >2000 K, la résistivité du tungstène est linéaire en $T$ selon l'étude de Cezairliyan de 1971 et on peut utiliser la loi suivante :
$$
\rho(T) = -14.08 + 0.03515 \times T \quad (10^{-8}\,\Omega\cdot\text{m})
$$
En dessous de 2000 K, la fonction interpole la résistivité à partir d'une table qui est raccordée à 2000 K sur la loi linéaire. Nota : si la température baisse fortement, la résistivité du tungstène n'est plus linéaire en $T$.
En pratique, c'est uniquement la plage > 2000 K qui nous intéresse pour les lampes QTH. Le rapport de résistivité vaut :
$$
W_R(T) = W(T) \times \beta(T) = \frac{\rho(T)}{\rho(293)} \times \beta(T)
$$
avec $\beta(T)$ l'influence de la dilatation thermique.
Code : Tout sélectionner
// =======================================================
// RAPPORT DE RÉSISTANCE W(T) = ρ(T) / ρ(293K) x beta(T)
// =======================================================
function W = rapport_W_tungstene(T_K)
//
// Pour un fil cylindrique de tungstène avec dilatation isotrope, Le rapport de
// RÉSISTANCE du tungstène se déduit du rapport de résistivité W(T) = ρ(T) / ρ(293K)
// par la formule :
// W_R(T) = W(T) / (1 + α_L×(T-293)), où α_L=4.5×10⁻⁶ K⁻¹.
// Cette correction de dilatation est <1.5% à 3200K.
//
// Sources :
// T ≥ 2000 K : Cezairliyan & McClure (1971, NBS), ±1 %
// T < 2000 K : table de résistivité du tungstène (données NBS / CRC,
// normalisées à ρ(293K) = 5.45×10⁻⁸ Ω.m de Cezairliyan)
// Table basse température (T < 2000 K)
// Source : NBS/CRC, normalisé sur ρ(293K)=5.45×10⁻⁸ Ω.m
T_bas = [ 293, 400, 500, 600, 700, 800, 900, 1000, ...
1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000];
rho_bas = [5.45, 7.73, 10.10, 12.57, 15.10, 17.70, 20.35, 23.02, ...
25.73, 28.44, 31.15, 33.88, 36.62, 39.35, 42.08, 44.82, 47.58, 56.22];
// NB : la valeur à 2000K est la valeur de raccordement Cezairliyan.
n = length(T_K);
W = zeros(n, 1);
alpha_L = 4.5e-6; // coeff. de dilatation linéaire du W (K⁻¹)
for k = 1:n
T = max(min(T_K(k), 3600), 293);
if T >= 2000 then
// Formule linéaire Cezairliyan (NBS 1971), ±1 %
// ρ(T) = -14.08 + 0.03515×T (unités : 10⁻⁸ Ω.m)
rho_T = -14.08 + 0.03515 * T;
else
// Interpolation linéaire dans la table basse température
i1 = find(T_bas <= T, -1);
if i1 >= length(T_bas) then i1 = length(T_bas)-1; end
i2 = i1 + 1;
f = (T - T_bas(i1)) / (T_bas(i2) - T_bas(i1));
rho_T = (1-f)*rho_bas(i1) + f*rho_bas(i2);
end
// Rapport de RÉSISTIVITÉ ρ(T)/ρ(293K)
W_rho = rho_T / 5.45;
// Correction de dilatation thermique pour le rapport de RÉSISTANCE
// R(T)/R(T0) = [ρ(T)/ρ(T0)] / (1 + α_L×(T-293))
W(k) = W_rho / (1 + alpha_L * (T - 293));
end
endfunction