Bonjour,
J'essayais déjà écrire un programme en Fortran qui calcul l'efficacité de détection pour une source disque (étendue) à une certaine distance du détecteur que je vais supposer un disque.
Voici le code :
ici je sais pas comment tracer une courbe" eff = f(Rd) " à partir d'un fichier FORTRAN 90 avec gnuplot
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 program sourcedisk integer i,N real phi1,r1,theta2,phi2,l,count,eff,Rs,Rd,D real, parameter :: pi = 3.141592653589793 N=10000000 D=2 Rs=0.21 print*,'donner la valeur de Rd' read*, Rd count=0 do i=1,N phi1 = 2*pi*rand() r1=Rs*rand() theta2=pi*rand() phi2=2*pi*rand() l=(r1*cos(phi1)+tan(theta2)*cos(phi2)*D)**2+(r1*sin(phi1)+tan(theta2)*sin(phi2)*D)**2 if (l.le. Rd**2)then count=count+1 end if end do eff=count/N print*,eff end
y' a t il quelqu'un qui pourrait m'aider ,svp???
Merci d'avance
Partager