Bonjour,
bon, je programme en fortran, et j'utilise aussi g95 comme compilateur.

Voici mon problème : il y a un bug, et je ne le comprends pas, malgré ce que je viens de lire sur ce forum.

Module :
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
module euler12
	contains
		subroutine eul(f,m,xi,x0)!fonction à résoudre,parametre m,tableau de données de points généré,condition initiale
		implicit none
		real::f
		real,intent(in)::x0
		integer,intent(in)::m
		real,dimension(:),intent(out)::xi
		integer::i,j,k,l,n
		real,dimension(:),allocatable::tn
		allocate (tn(0:n))
		tn=(/(8.*i/real(n),i=0,n)/)
		xi(0)=x0
		do i=0,n-1
			xi(i+1)=xi(i)+f(xi(i),tn(i))/real(n)
		enddo
		deallocate (tn)
		end subroutine eul
end module
Et voici le programme appelant :
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
program Edo1
use euler12
implicit none
integer, parameter::m=5
real,dimension(0:2**m)::res=0.
real::t
t=fxt(1.,1.)
call eul(fxt,m,res,1.)
print*,res
 
contains
function xt(t)
real,intent(in)::t
real::xt
xt=exp(cos(t)-1)
end function
 
function fxt(x,t)
real,intent(in)::x,t
real::fxt
fxt=-x*sin(t)
end function
 
end program
Et voici le magnifique message d'erreur qui m'embête :
g95 Edo1.f90 -o Edo1
./cciF2odJ.o:Edo1.f90:(.text+0x5b): undefined reference to `_euler12_MP_eul'
>Exit code: 1
J'ai pourtant compilé correctement le module avant de lancer le programme. Maintenant je ne vois pas pourquoi ça plante.
Merci d'avance de vos réponses.
Peace Oph