gibuu is hosted by Hepforge, IPPP Durham
GiBUU

TABLE OF CONTENTS


/output [ Modules ]

[ Top ] [ Modules ]

NAME

module output

PURPOSE

Includes basic tools for output.


output/line [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

present a string of length 79 with '*' (not 80 because of f90-internal line breaking!!!)

SOURCE

  character(79), parameter, public :: line='*****************************************************************'

output/header [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

Format of the BUU-Header in the output

USAGE

write(*,header) 'Hallo'

SOURCE

  character(100), parameter, public :: header='(79("#"),/,79("#"),/,10("#")," ",A,/,79("#"),/,79("#"),/)'

output/chapter [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

Format of the output announcing the start of some chapter of the code.

USAGE

write(*,chapter) 'Hallo'

SOURCE

  character(100), parameter, public :: chapter='(79("#"),/,5("#")," ",A,/,79("#"),/)'

output/subchapter [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

Format of the output announcing the start of some subchapter of the code.

USAGE

write(*,subchapter) 'Hallo'

SOURCE

  character(100), parameter, public :: subchapter='(79("-"),/,5("-")," ",A,/,79("-"),/)'

output/paragraph [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

Format of the output announcing the start of some paragraph of the code.

USAGE

write(*,paragraph) 'Hallo'

SOURCE

  character(100), parameter, public :: paragraph='(5("~")," ",A," ",5("~"))'

output/DoPrLevelDefault [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

Default values for DoPrLevel

SOURCE

  logical, dimension(-10:5), public, parameter :: DoPrLevelDefault = &
       (/ (.FALSE.,iDoPrLevelDefault=-10,-1),(.TRUE.,iDoPrLevelDefault=0,5)/)

output/DoPrLevel [ Global module-variables ]

[ Top ] [ output ] [ Global module-variables ]

PURPOSE

Flags, whether message at (error)level n should be printed or not. The (error) levels are:

  • Level 5 (TERMINAL) -- A terminal error is not an informational error because corrective action within the program is generally not reasonable. In normal usage, execution should be terminated immediately when an error of this class occurs.
  • Level 4 (FATAL) -- A fatal error indicates the existence of a condition that may be serious. In most cases, user or calling routine must take corrective action to recover.
  • Level 3 (WARNING) -- A warning indicates the existence of a condition that may require corrective action by user or calling routine
  • Level 2 (ALERT) -- Indicates that the user should be adviced about events occuring in the code.
  • Level 1 (NOTE) -- Is issued to indicate the possibility of a trivial error or simply to provide information about the computations.
  • Level 0 (BASIC) -- Some basic messages

The levels -10 up to -1 are left for the programmer for individual purposes. One can switch on/off writing of message independant of the error classification. They are used for...:

  • -1: switching on/off the messages: "WARNING: PYEVNT-Loop -> failure", "DoColl_nuN: itry= ..."
  • -2: ...(not used)
  • etc

SOURCE

  logical, dimension(-10:5), public :: DoPrLevel = DoPrLevelDefault

output/WriteParticle [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine WriteParticle(iFile,iEnsemble,iPart, Part) subroutine WriteParticle(iFile,iEnsemble, Part)

PURPOSE

Write the stored information about a particle to a file/stdout.

INPUTS

  • integer :: iFile -- number of file (6=stdout)
  • integer :: iEnsemble -- number of Ensemble (maybe arbitrary)
  • integer :: iPart -- number of Particle (maybe arbitrary)
  • type(particle) :: Part -- Particle to print

or:

  • integer :: iFile -- number of file (6=stdout)
  • integer :: iEnsemble -- number of Ensemble
  • type(particle),dimension(:) :: Part -- Particles to print

NOTES

  • This is the format prefered by KG ;)
  • If the particles are given in an array, all non-zero entries, including a header and a summary line, are written
  • At the moment, the following items are not written: velocity, offshellParameter, coulombPotential, perturbative


output/notInRelease [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine notInRelease(feature)

PURPOSE

Prints a message which states the given "feature" is not included in the present released code version and stops the code.

INPUTS

  • character(*) :: feature


output/DoPr [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function DoPr(iLevel)

PURPOSE

Return the Flag, whether a message of the given Error-Level (cf. DoPrLevel) should be written or not

INPUTS

  • integer :: iLevel -- Print-Level

OUTPUT

  • logical :: DoPr

NOTES

checks, whether the given iLevel is a valid array-index are omitted (compile your code with the approbiate flags to ensure array-bound checks)


output/intToChar [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function intToChar(nr)

PURPOSE

Convert an integer into a character string of length 3.

INPUTS

  • integer :: nr -- number to convert (0..999)

OUTPUT

  • character(3)


output/intToChar1 [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function intToChar1(nr)

PURPOSE

Convert an integer into a character string of length 1.

INPUTS

  • integer :: nr -- number to convert (0..9)

OUTPUT

  • character(1)


output/intToChar2 [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function intToChar2(nr)

PURPOSE

Convert an integer into a character string of length 2.

INPUTS

  • integer :: nr -- number to convert (0..99)

OUTPUT

  • character(2)


output/intToChar4 [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function intToChar4(nr)

PURPOSE

Convert an integer into a character string of length 4.

INPUTS

  • integer :: nr -- number to convert (0..9999)

OUTPUT

  • character(3)


output/intToChar_pm [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function intToChar_pm(nr)

PURPOSE

Convert an integer into a signed character string of length 2.

INPUTS

  • integer :: nr -- number to convert (-9..9)

OUTPUT

  • character(3)


output/realToChar [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function realToChar(nr)

PURPOSE

Convert a real number into a character string of length 3.

INPUTS

  • real :: nr -- number to convert (0..999)

OUTPUT

  • character(3)


output/realToChar4 [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

function realToChar4(nr)

PURPOSE

Convert a real number into a character string of length 4.

INPUTS

  • real :: nr -- number to convert (0..9999)

OUTPUT

  • character(4)


output/Write_ReadingInput [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine Write_ReadingInput(Text,Code,ios)

PURPOSE

Write a Message about starting/finishing "reading" something. If parameter "ios" is given, this is interpreted as the IOSTAT value of the reading of the namelist (here parameter "Code" is ignored).

For gfortran and nvfortran, it also gives the last line of the input, if ios>0, i.e. in the case of an error.

INPUTS

  • character(*) :: Text -- Name of file/Jobcard/...
  • integer :: Code -- 0: start reading, !=0 : reading finished
  • integer,optional :: ios -- error code of reading (i.e. IOSTAT value)


output/Write_InitStatus [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine Write_InitStatus(Text,Code)

PURPOSE

Write a Message about starting/finishing "initializing" something

INPUTS

  • character(*) :: Text -- Name of file/Jobcard/...
  • integer :: Code -- 0 : start initialization, <>0 : finished initialization


output/WriteParticle_debug [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine WriteParticle_debug (Part, med)

PURPOSE

Write the stored information about a particle to a file/stdout.

INPUTS

  • type(particle) :: Part --- Particle to print
  • type(medium), optional :: med --- medium information (optional)
  • real,dimension(0:3), optional :: densBar --- baryon density vector


output/writeFileDocu [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine writeFileDocu(filename,docu)

PURPOSE

Writes the information of a given filename and its documenation to a central file.

INPUTS

  • character(*) :: filename
  • character(*) :: docu -- Documentation of the output file "filename"


output/WriteParticleVector [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine WriteParticleVector(filename,pv)

PURPOSE

Write a particle-vector (e.g. PertParticles) to files

Opens 7 files and writes the information of the particles to these files. Only for the file "...ALL.dat" the subroutine WriteParticle is used; all other information is written in an own format.

INPUTS

  • character(*) :: filename -- base name of files (some extensions are added)
  • type(particle),dimension(:,:) :: pv -- particle vector


output/setPrintParticleVectorsFormat [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine setPrintParticleVectorsFormat(f)

PURPOSE

set the format for printParticleVector


output/timeMeasurement [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine timeMeasurement(ForceReset)

PURPOSE

Use this as an stopwatch.

If you do not use the optional parameter "ForceReset", the default behaviour is like this:

  • the first call sets the stopwatch to zero
  • all following (second, third, ...) calls just print the time

only by calling this routine and setting the optional parameter ForceReset=.true. can rewind the stopwatch to zero

INPUTS

  • logical,optional :: ForceReset -- see above
  • integer,optional :: iFile -- File to print the message

OUTPUT

on stdout


output/PrintTime [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine PrintTime

PURPOSE

print out date and time information


output/WriteParticleCollisionList [ Subroutines ]

[ Top ] [ output ] [ Subroutines ]

NAME

subroutine WriteParticleCollisionList(iFile, iEns, Part)

PURPOSE

Write the stored information about a particle to a file/stdout.

INPUTS

  • integer :: iFile -- number of file (6=stdout)
  • integer :: iEns -- number of ensemble
  • type(particle),dimension(:) :: Part -- Particles to print

NOTES

This is the special format for the CollisionList