hi all,
i'm trying to use the CCTK_LOOP3_INT macro in a Fortran 90 code. following the
example in
Carpet/TestLoopControl, i've done:
#include "cctk.h"
#include "cctk_Arguments.h"
#include "cctk_Parameters.h"
#include "cctk_Functions.h"
#include "loopcontrol.h"
subroutine myroutine( CCTK_ARGUMENTS )
use loopcontrol
implicit none
DECLARE_CCTK_ARGUMENTS
DECLARE_CCTK_PARAMETERS
DECLARE_CCTK_FUNCTIONS
CCTK_LOOP3_INT_DECLARE(int3)
(...)
CCTK_LOOP3_INT(int3, i, j, k)
(...)
CCTK_ENDLOOP3_INT(int3)
end subroutine myroutine
this seems to work fine. however, if i add the OpenMP statements to the loop in
the "usual" way:
!$OMP PARALLEL DO COLLAPSE(3) &
!$OMP PRIVATE(i,j,k, (...))
CCTK_LOOP3_INT(int3, i, j, k)
(...)
CCTK_ENDLOOP3_INT(int3)
!$OMP END PARALLEL DO
the code fails to compile with a bunch of errors:
Error: Unexpected !$OMP SINGLE statement at (1)
Error: Unexpected assignment statement at (1)
Error: Unexpected !$OMP END SINGLE statement at (1)
(...)
i've searched around but could not find such an example in the ET thorns. is
this possible to do?
can someone point me in the right direction?
thanks,
Miguel
_______________________________________________
Users mailing list
[email protected]
http://lists.einsteintoolkit.org/mailman/listinfo/users