Doxygen Generated Documentation From Interface Source Code
IO_getScalar.F90 File Reference

Go to the source code of this file.


subroutine IO_getScalarReal (name, value)
subroutine IO_getScalarInt (name, value)
subroutine IO_getScalarStr (name, value)
subroutine IO_getScalarLog (name, value)

Function/Subroutine Documentation

◆ IO_getScalarInt()

subroutine IO_getScalarInt ( character(len=*), intent(in)  name,
integer, intent(inout)  value 

Definition at line 73 of file IO_getScalar.F90.

◆ IO_getScalarLog()

subroutine IO_getScalarLog ( character(len=*), intent(in)  name,
logical, intent(inout)  value 

Definition at line 97 of file IO_getScalar.F90.

◆ IO_getScalarReal()

subroutine IO_getScalarReal ( character(len=*), intent(in)  name,
real, intent(inout)  value 

This function gets a scalar from a linked list implemented under the hood.

In FLASH3 what we mean by scalars are single value variables associated with an entire flash run. These scalars are in contrast to Grid scope variables which need to be stored at each zone of each block in the simulation. Density, pressure and temperature are examples of Grid scope variables while simTime, dt, globalNumBlocks are single quantities associated with the entire run.

Scalars of this type can be integers, reals, strings or logical values. An example of a string scalar might be the FLASH3 run comment, name of the logfile or setup line

name: name of scalar value: scalar value


USE IO_interface, ONLY : IO_getScalar

real :: dt

call IO_getScalar('dt', dt)


Because IO_getScalar is an overloaded function a user calling the routine must USE the interface IO_interface.

(Under the hood IO_getScalar under the hood it calls IO_getScalarReal, IO_getPreviousScalarInt, IO_getScalarStr, or IO_getScalarLog and keeps a separate list for each type.)

Definition at line 60 of file IO_getScalar.F90.

◆ IO_getScalarStr()

subroutine IO_getScalarStr ( character(len=*), intent(in)  name,
character(len=*), intent(in)  value 

Definition at line 86 of file IO_getScalar.F90.