Bonjour,

J'ai écrit ce code en m'inspirant du code suivant https://www.mathworks.com/help/relea...are-plate.html

Sauf que le problème que j'ai et dès que je mets la valeur au carré, cela me fais une boucle infini

Voici mon programme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
close all
clear all
 
N=3; %Nombre de composants de l'équation d'élasticité
model = createpde(N); %Création du modèle 3D
 
importGeometry(model,'plaque.stl');%Importation de la plaque fais sur solidworks
 
figure
hc = pdegplot(model,'FaceLabels','on'); %identification du nombre de face
hc(1).FaceAlpha = 0.1;   %Niveau de transparence du graphe
title('Plate with Face Labels') %titre
 
E = 200e9; % Module de Young en Pascals de l'acier
nu = 0.3; % coefficient de poison
rho = 8000; % Densité du matériau kg/m^3
 
c = elasticityC3D(E,nu); % mettre coeff + module dans la boite outil
a = 0;
 
specifyCoefficients(model,'m',rho,'d',0,'c',c,'a',a,'f',0);
applyBoundaryCondition(model,'mixed','Face',1:4,'u',0,'EquationIndex',3);
 
hmax = 12; %Pour 12 noeud de maillage
generateMesh(model,'Hmax',hmax,'GeometricOrder','quadratic');% création du maillage à 12 noeud pour une meilleure precision
figure
pdeplot3D(model); %vue 3D du maillage
title('Maille de la plaque');
 
refFreqHz = [0 0 0 45.897 109.44 109.44 167.89 193.59 206.19 206.19]; % Valeur de référence publié
%freqHz = [8.87E-06 1.06E-5 1.22E-5 44.871 109.74 109.77 168.59 193.74 207.51 207.52];
 
maxFreq = (1.1*refFreqHz(end)*2*pi);%Calcul de la pulsation
r = [-.1 maxFreq];
result = solvepdeeig(model,r);%permet de calculer toutes les solutions
eVec = result.Eigenvectors;
eVal = result.Eigenvalues;
numEig = size(eVal,1);
 
freqHz = eVal(1:numEig)/(2*pi);
fprintf('Frequency(Reference 1),Hz  Frequency(solvepdeeig),Hz\n');
numToPrint = min(length(freqHz),length(refFreqHz));
 
for i=1:numToPrint
  fprintf('%10.5g              %10.5g\n', ...
  refFreqHz(i),freqHz(i));
end
 
h = figure;
h.Position = [100,100,900,600];
for i = 1:numToPrint
    subplot(4,2,i);
    pdeplot3D(model,'ColorMapData',eVec(:,3,i));
    axis equal
    title(sprintf(['Mode=%d, z-displacement\n', ...
    'Frequency(Hz): Ref=%g FEM=%g'], ...
    i,refFreqHz(i),freqHz(i)));
end
Les deux premières figures s'affiche correctement et c'est après que ça beug.

Merci d'avance pour votre réponse.
Cordialement