1 |
- function plot_therm(U)
% plot_therm
% Representation des valeurs moyennes dans les elements
% calculee a partir des valeurs nodales du champ
%
% appel plot_therm(Sol) (la fenetre graphique doit etre ouverte avant)
% en entree Sol : vecteur des champs nodaux dimension (nddlt)
%
% H.Oudin
%==========================================================================
global nelt nnode
global Coord Connec
maxt=max(U(:,1)); %temperatures maximale et minimale de la piece
mint=min(U(:,1));
D=(maxt-mint);
axis equal
title(['Echelle de couleur du bleu au rouge avec la valeur max = ',num2str(maxt,'%8.2f')])
colorbar
for iel = 1:nelt %----- visualisation du maillage
Tm=0; %----- calcul de la valeur moyenne
for inod=1:nnode
if Connec(iel,inod) > 0
Tm = Tm+U(Connec(iel,inod),1)/nnode;
end
end
alpha=(maxt-Tm)/D; %----- definition des couleurs
if alpha < 0.25
red=1; blue=0; green=4*alpha;
elseif alpha < 0.5
red=2-4*alpha; blue=0; green=1;
elseif alpha < 0.75
red=0; blue=-2+4*alpha; green=1;
else
red=0; blue=1; green=4-4*alpha;
end
loce=[]; %----- table de localisation pour l'element
for i=1:nnode
if Connec(iel,i) > 0 loce=[loce,Connec(iel,i)]; end
end;
Pos = Coord(loce,:);
X = Pos(:,1);Y = Pos(:,2);
patch(X,Y,[red, green, blue]);
end
return
|