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 :
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
ici je sais pas comment tracer une courbe" eff = f(Rd) " à partir d'un fichier FORTRAN 90 avec gnuplot
y' a t il quelqu'un qui pourrait m'aider ,svp???
Merci d'avance