Bonjour,
Je travail actuellement en double boucle for pour l’évolution du signal dans l'espace 2D,et vu que les calculs dans matlab sont à base des matrices, je voudrais remplacer mes deux boucles for (espace)
en meshgrid
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 %--- for i=1:Ymax for j=1:Xmax ........... ......... end end ----%
Avez vous une idée ?
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 X0=15; Y0=30; sigma=2.5; c=3e8; A0=5; t0=30e-9; Xmax=50; Ymax=50; tinc=0.5e-9; kmax=length(0:tinc:tmax); S_recep(1:kmax)=0; k=0; for t=0:tinc:tmax; k=k+1; for i=1:Ymax for j=1:Xmax r=sqrt((i-X0)^2+(j-Y0)^2); %Coefficient d'attenuation emetteur-->reflecteur Ad=1/r; Sr(i,j)= A0*Ad*exp(-(r-c*(t-t0))^2/(2*sigma)^2); end end figure(1) caxis auto subplot(2,2,2) surf(Sr); view(2) colormap % caxis auto end
Merci
Partager