Bonjour,
Dans une subroutine, je cherche a tester que deux tableaux ont même dimension avant de faire le calcul, normal. Or le code compile avec ifort mais me renvoie une erreur avec g95:
Le test en lui même se présente ainsi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if (.not.((size(ya(1,1,1,:)).eq.o).and.(size(y2a(1,1,1,:).eq.o))& 1 Error: Operands of logical operator '.and.' at (1) are LOGICAL(4)/INTEGER(4)
Pourquoi g95 me met-il une erreur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 INTEGER::L,m,n,o REAL, dimension(:,:,:,:),intent(in)::ya,y2a !size L,m,n,o L=size(x0a);m=size(x1a);n =size(x2a);o=size(x3a) if (.not.((size(ya(1,1,1,:)).eq.o).and.(size(y2a(1,1,1,:).eq.o))& .and.(size(ya(1,1,:,1)).eq.n).and.(size(y2a(1,1,:,1).eq.n))& .and.(size(ya(1,:,1,1)).eq.m).and.(size(y2a(1,:,1,1).eq.m))& .and.(size(ya(:,1,1,1)).eq.L).and.(size(y2a(:,1,1,1).eq.L))))then write(*,*)"splin4 input error: unexpected array dimension" STOP end if
merci beaucoup
Partager