53 character(len=6),
public,
parameter ::
io_stdout =
"STDOUT" 59 logical,
public ::
io_l = .false.
73 integer,
private,
parameter :: io_minfid = 10
74 integer,
private,
parameter :: io_maxfid = 99
75 integer,
private,
parameter :: io_rgnoffset = 0
87 namelist / param_io / &
95 character(len=H_MID),
intent(in) :: MODELNAME
96 logical,
intent(in) :: call_from_launcher
97 character(len=H_LONG),
intent(in),
optional :: fname_in
99 character(len=H_LONG) :: fname
103 if ( call_from_launcher )
then 104 if (
present(fname_in) )
then 107 write(*,*)
' xxx Not imported name of config file! STOP.' 119 h_libname =
'SCALE Library ver. '//trim(libversion)
126 write(*,*)
' xxx Not appropriate names in namelist PARAM_IO . Check!' 140 integer,
intent(in) :: myrank
141 logical,
intent(in) :: is_master
143 character(len=H_LONG) :: fname
148 if ( is_master )
then 170 file = trim(fname), &
171 form =
'formatted', &
173 if ( ierr /= 0 )
then 174 write(*,*)
'xxx File open error! :', trim(fname)
184 write(
io_fid_log,*)
' .+++++++++++++++++++++++ ' 185 write(
io_fid_log,*)
' +++++++++++++++++++++++++ ' 186 write(
io_fid_log,*)
' +++++++++++++++++++++++++++ ' 187 write(
io_fid_log,*)
' =++++++=x######+++++++++++++; ' 188 write(
io_fid_log,*)
' .++++++X####XX####++++++++++++ ' 189 write(
io_fid_log,*)
' =+xxx=, ++++ +++++=##+ .###++++++++++- ' 190 write(
io_fid_log,*)
' ,xxxxxxxxxx- +++++.+++++=## .##++++++++++ ' 191 write(
io_fid_log,*)
' xxxxxxxxxxxxx -+++x#;+++++#+ ##+++++++++. ' 192 write(
io_fid_log,*)
' xxxxxxxx##xxxx, ++++# +++++XX #+++++++++- ' 193 write(
io_fid_log,*)
' xxxxxxx####+xx+x ++++#.++++++# #+++++++++ ' 194 write(
io_fid_log,*)
' +xxxxxX#X #Xx#= =+++#x=++++=#. x=++++++++ ' 195 write(
io_fid_log,*)
' xxxxxx#, x### .++++#,+++++#= x++++++++ ' 196 write(
io_fid_log,*)
' xxxxxx#. ++++# +++++x# #++++++++ ' 197 write(
io_fid_log,*)
' xxxxxx+ ++++#-+++++=# #++++++++ ' 198 write(
io_fid_log,*)
',xxxxxX -+++XX-+++++#, +++++++++ ' 199 write(
io_fid_log,*)
'=xxxxxX .++++#.+++++#x -++++++++ ' 200 write(
io_fid_log,*)
'+xxxxx= ++++#.++++++# ++++++++# ' 201 write(
io_fid_log,*)
'xxxxxx; ++++#+=++++=# ++++++++# ' 202 write(
io_fid_log,*)
'xxxxxxx ,+++x#,+++++#- ;++++++++- ' 203 write(
io_fid_log,*)
'#xxxxxx +++=# +++++xX ++++++++# ' 204 write(
io_fid_log,*)
'xxxxxxxx ++++#-+++++=# +++++++++X ' 205 write(
io_fid_log,*)
'-+xxxxxx+ ++++X#-++++=#. -++; =++++++++# ' 206 write(
io_fid_log,*)
' #xxxxxxxx. .+++++# +++++#x =++++- +++++++++XX ' 207 write(
io_fid_log,*)
' #xxxxxxxxxx=--=++++++#.++++++# ++++++ -+++++++++x# ' 208 write(
io_fid_log,*)
' #+xxxxxxxxxx+++++++#x=++++=# ++++++;=+++++++++++x# ' 209 write(
io_fid_log,*)
' =#+xxxxxxxx+++++++##,+++++#= =++++++++++++++++++##. ' 210 write(
io_fid_log,*)
' X#xxxxxxxx++++++## +++++x# ;x++++++++++++++++##. ' 211 write(
io_fid_log,*)
' x##+xxxx+++++x## +++++=# ##++++++++++++x##X ' 212 write(
io_fid_log,*)
' ,###Xx+++x###x -++++=#, .####x+++++X####. ' 213 write(
io_fid_log,*)
' -########+ -#####x .X#########+. ' 216 write(
io_fid_log,*)
' .X####### +###- =###+ ###x x######## ' 217 write(
io_fid_log,*)
' .######### ######X ####### #### .#########x ' 218 write(
io_fid_log,*)
' ####+++++= X#######. -#######x .###; ####x+++++. ' 219 write(
io_fid_log,*)
' ### ###= #### #### x### #### -###. ' 220 write(
io_fid_log,*)
' .### #### ###+ X### ###X =###. #### ' 221 write(
io_fid_log,*)
' ###- ;###, .###+ -### #### x##########+ ' 222 write(
io_fid_log,*)
' +####x #### #### #### #### ###########. ' 223 write(
io_fid_log,*)
' x######. =### ###, .###- ###+ x###-------- ' 224 write(
io_fid_log,*)
' =##### X### -### #### ,### #### ' 225 write(
io_fid_log,*)
' .###=x###; .###+ ###X ###X ####. ' 226 write(
io_fid_log,*)
' ###########; ###########+ ########### ########### ,##########. ' 227 write(
io_fid_log,*)
'-########### ,##########, #########X ########## +######### ' 228 write(
io_fid_log,*)
',,,,,,,,,,. ,,,,,,,,, .,,,,,,,. .,,,,,,,, ,,,,,,,, ' 230 write(
io_fid_log,*)
' SCALE : Scalable Computing by Advanced Library and Environment ' 235 write(
io_fid_log,*)
'++++++ Module[STDIO] / Categ[IO] / Origin[SCALElib]' 243 if( is_master )
write(*,*)
'*** Log report is suppressed.' 259 do fid = io_minfid, io_maxfid
260 inquire(fid,opened=i_opened)
261 if ( .NOT. i_opened )
return 275 character(len=*),
intent(out) :: outstr
276 character(len=*),
intent(in) :: instr
277 character(len=*),
intent(in) :: ext
278 integer,
intent(in) :: rank
280 character(len=H_SHORT) :: srank
283 write(srank,
'(I6.6)') rank + io_rgnoffset
285 outstr = trim(instr)//
'.'//trim(ext)//trim(srank)
296 logical,
intent(in) :: is_master
297 character(len=H_LONG) :: fname
300 if ( command_argument_count() < 1 )
then 301 if(is_master)
write(*,*)
'xxx Program needs config file from argument! STOP.' 304 call get_command_argument(1,fname)
318 character(len=*),
intent(in) :: fname
319 logical,
intent(in) :: is_master
328 file = trim(fname), &
329 form =
'formatted', &
333 if ( ierr /= 0 )
then 334 if(is_master)
write(*,*)
'xxx Failed to open config file! STOP.' 335 if(is_master)
write(*,*)
'xxx filename : ', trim(fname)
logical, public io_l
output log or not? (this process)
integer, parameter, public h_long
Character length (short=256)
integer, parameter, public io_fid_stdout
character(len=h_long) function, public io_arg_getfname(is_master)
get config filename from argument
character(len=h_mid), public h_modelname
name and version of the model
subroutine, public io_log_setup(myrank, is_master)
Setup LOG.
character(len=6), parameter, public io_stdout
logical, public io_log_suppress
suppress all of log output?
character(len=h_mid), public h_source
for file header
integer function, public io_get_available_fid()
search & get available file ID
subroutine, public io_make_idstr(outstr, instr, ext, rank)
generate process specific filename
subroutine, public io_setup(MODELNAME, call_from_launcher, fname_in)
Setup.
logical, public io_log_allnode
output log for each node?
integer, parameter, public h_short
Character length (short=16)
character(len=h_mid), public h_institute
for file header
logical, public io_lnml
output log or not? (for namelist, this process)
integer, public io_fid_conf
Config file ID.
character(len=h_mid), public h_libname
name and version of the library
integer, parameter, public h_mid
Character length (short=64)
integer, public io_fid_log
Log file ID.
character(len=h_long), public io_log_basename
basename of logfile
logical, public io_log_nml_suppress
suppress all of log output?
integer function, public io_cnf_open(fname, is_master)
open config file