Programme en fortran qui calcule l'efficacité de détection
inesnoussa
-
Yoda -
Yoda -
Je veux écrire un programme en fortran qui calcul l'efficacité de détection pour une source ponctuelle et un disque à une certaine distance du détecteur que je vais supposer un disque. Le détecteur disque est supposé parfait: c.a.d absorbe tout photon qui tombe sur lui. Donc ici je travaille dans 3D et j'utilise ux, uy et uz pour diriger le photon aléatoirement en utilisant le système de coordonnées sphériques
a) efficacité en fonction du rayon du détecteur
b) efficacité en fonction de la distance source détecteur
c)efficacité en fonction du rayon de la source
Voici le code que j'essaie l'ecrire pour une source ponctuelle;
program sourceponc
integer i,N
real x,y,z,eff,count,Dds,rd,ux,uy,uz,t
count=0
do i=1,N
theta = acos(1-2*rand())
phi = 2*pi*rand()
ux=cos(theta)sin(phi)
uy=sin(theta)sin(phi)
uz=cos(theta)
t=Dds/uz
x=ux*t
y=uy*t
if(sqrt(x**2+y**2+z**2).le.1)then
count=count+1
endif
end do
eff=count/N
print*,eff
end
Lorsque je le compile et l'exécute , voici qu'est ce qu'elle affiche dans le terminal :
sourceponc.f90:12:
ux=cos(theta)sin(phi)
1
Error: Unclassifiable statement at (1)
sourceponc.f90:13:
uy=sin(theta)sin(phi)
1
Error: Unclassifiable statement at (1)
y a t'il quelqu'un qui pourrait m'aider ? merci d'avance
a) efficacité en fonction du rayon du détecteur
b) efficacité en fonction de la distance source détecteur
c)efficacité en fonction du rayon de la source
Voici le code que j'essaie l'ecrire pour une source ponctuelle;
program sourceponc
integer i,N
real x,y,z,eff,count,Dds,rd,ux,uy,uz,t
count=0
do i=1,N
theta = acos(1-2*rand())
phi = 2*pi*rand()
ux=cos(theta)sin(phi)
uy=sin(theta)sin(phi)
uz=cos(theta)
t=Dds/uz
x=ux*t
y=uy*t
if(sqrt(x**2+y**2+z**2).le.1)then
count=count+1
endif
end do
eff=count/N
print*,eff
end
Lorsque je le compile et l'exécute , voici qu'est ce qu'elle affiche dans le terminal :
sourceponc.f90:12:
ux=cos(theta)sin(phi)
1
Error: Unclassifiable statement at (1)
sourceponc.f90:13:
uy=sin(theta)sin(phi)
1
Error: Unclassifiable statement at (1)
y a t'il quelqu'un qui pourrait m'aider ? merci d'avance
A voir également:
- Programme en fortran qui calcule l'efficacité de détection
- Programme demarrage windows - Guide
- Detection materiel pc - Guide
- Mettre en veille un programme - Guide
- Touslesdrivers detection - Télécharger - Pilotes & Matériel
- Message programmé iphone - Guide