52#include "implicit_f.inc"
67 CHARACTER FILNAM*2148,CHRUN*4,ROOT_SUB*80
72 INTEGER ISTAT,,IPID_RET,IERROR,WAIT,IPID_L,STAT,DOM_SWITCH
74#if defined(COMP_ARMFLANG) || defined() || defined(COMP_AOCC)
77#if defined(COMP_NVFORTRAN)
78 INTEGER,
EXTERNAL :: GETPID
81 INTEGER :: LEN_TMP_NAME
82 CHARACTER(len=4096) :: TMP_NAME
89 rootnam0 = rootnam(1:rootlen)
90 ALLOCATE (
isubdom(8,nsubdom),stat=stat)
97#if CPP_mach == CPP_p4win64 || CPP_mach == CPP_p4win32
102#elif CPP_mach == CPP_linux964 || CPP_mach == CPP_sun25 || CPP_mach == CPP_pwr4
105 IF (ipid==0)
CALL omp_set_num_threads(nthread_r2r)
111#if defined(COMP_GFORTRAN) || defined(COMP_ARMFLANG)|| defined(COMP_LLVM) || defined(COMP_AOCC) || defined(COMP_NVFORTRAN)
115 CALL pxffork(ipid,ierror)
116 CALL pxfgetpid(ipid_ret,ierror)
119 IF (ipid==0)
CALL omp_set_num_threads(nthread_r2r)
132#if CPP_mach == CPP_p4win64 || CPP_mach == CPP_p4win32
137#elif CPP_mach == CPP_linux964 || CPP_mach == CPP_sun25 || CPP_mach == CPP_pwr4
143#if defined(COMP_GFORTRAN) || defined(COMP_ARMFLANG) || defined(COMP_LLVM) || defined(COMP_AOCC) || defined(COMP_NVFORTRAN)
146 CALL pxfwaitpid(ipid,istat,0,ipid_ret,ierror)
155 IF (flg_swale<1)
THEN
156 flg_swale = flg_swale + 1
159#if CPP_mach == CPP_p4win64 || CPP_mach == CPP_p4win32
169 ELSEIF (kdom<nsubdom)
THEN
172 IF (flg_swale==1)
THEN
182 IF (flg_swale==1)
THEN
189 WRITE(istdo,
'(A)')
'-----------------------------------'
190 WRITE(istdo,
'(A)')
' .. TREATMENT OF THE FULL DOMAIN'
191 WRITE(istdo,
'(A)')
'-----------------------------------'
192 WRITE(istdo,
'(A)')
''
195 rootlen = len_trim(rootnam)
197 filnam =rootnam(1:rootlen)//
'_'//chrun//
'.out'
201 OPEN(unit=iout,file=tmp_name(1:len_tmp_name),
202 . access=
'SEQUENTIAL',
203 . form=
'FORMATTED',status=
'UNKNOWN')
207 OPEN (unit=res_mes,status=
'SCRATCH',form=
'FORMATTED')
209 WRITE(istdo,
'(A)')
''
210 WRITE(istdo,
'(A)')
'-----------------------------------'
211 WRITE(istdo,
'(A)')
' .. TREATMENT OF SUBDOMAIN '
212 . //rootnam(1:rootlen)
213 WRITE(istdo,
'(A)')
'-----------------------------------'
214 WRITE(istdo,
'(A)')
''
267#include "implicit_f.inc"
271#include "scr15_c.inc"
272#include "execinp.inc"
282 INTEGER PROCESS_ERROR,STATUS,LEN,I
283 INTEGER SIZEOFSTARTUPINFO,SIZESECURITYATTRIBUTES
284 CHARACTER*2048 COMMAND,LAUNCH
285 type(t_startupinfo) si
286 type(t_process_information) tpi
289 success = setenvqq(
"R2R_ENV_IPID=5")
290 IF (flg_swale>0) success = setenvqq(
"R2R_ENV_SWALE=5")
292 CALL get_command(command,len,status)
295 IF (len_trim(input)==0)
THEN
304 CALL rad2rad_createprocess(command,len,id,process_error)
307 IF (process_error==1)
THEN
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)