The Open FUSION Toolkit 1.0.0-beta5
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
Data Types | Functions/Subroutines | Variables
oft_local Module Reference

Detailed Description

Machine and compiler specific settings.

Machine and compiler specific settings and global constants.

Author
Chris Hansen
Date
June 2010

Data Types

interface  get_inverse_map
 Generate inverse of sparse indexing. More...
 
type  oft_1d_comp
 One dimensional complex set. More...
 
interface  oft_1d_func
 Generic interface for 1D function. More...
 
type  oft_1d_int
 One dimensional integer set. More...
 
type  oft_1d_real
 One dimensional real set. More...
 
interface  oft_2d_func
 Generic interface for 2D function. More...
 
interface  oft_simple_hash
 Simple in-memory hashing function for dataset checksumming. More...
 
interface  oft_sleep
 Interface to C sleep function. More...
 
type  oft_timer
 Simple timer class. More...
 

Functions/Subroutines

pure real(r8) function, dimension(3) cross_product (a, b)
 Compute the cross product of two 3 dimensional vectors.
 
subroutine get_inverse_map_i4 (map, n1, imap, n2)
 integer(i4) implementation of oft_local::get_inverse_map
 
subroutine get_inverse_map_i8 (map, n1, imap, n2)
 integer(i8) implementation of oft_local::get_inverse_map
 
pure real(r8) function magnitude (a)
 Compute the 2-norm of an array.
 
integer(i8) function oft_time_diff (timein)
 Get elapsed time since a given integer time.
 
integer(i8) function oft_time_i8 ()
 Get current system time in integer counts.
 
real(r8) function, private oft_timer_elapsed (self)
 Set elapsed time since last tick/tock.
 
integer(i8) function, private oft_timer_intelapsed (self)
 Get elapsed time since last tick/tock in integer counts.
 
subroutine, private oft_timer_start (self)
 Start or reset timer.
 
logical function, private oft_timer_timeout (self, timeout)
 Check if time since last tick/tock exceeds a limit.
 
integer(i4) function skip_comment_lines (io_unit)
 Skip comment lines in open file.
 
pure character(len=13) function time_to_string (a)
 Compute the 2-norm of an array.
 
subroutine xml_get_element (parent, name, element, error_flag, index)
 Get child element within a given XML node.
 

Variables

integer, parameter c4 =r4
 Single precision complex spec (4 Bytes)
 
integer, parameter c8 =r8
 Double precision complex spec (8 Bytes)
 
integer, parameter i4 =SELECTED_INT_KIND(9)
 4-Byte integer spec
 
integer, parameter i8 =SELECTED_INT_KIND(18)
 8-Byte integer spec
 
integer, parameter petsc_addr =i4
 
real(r8), parameter pi =3.141592653589793238462643_r8
 \( \pi \)
 
integer, parameter r10 =SELECTED_REAL_KIND(18, 4900)
 Extended precision float spec (10 or 16 Bytes depending on platform)
 
integer, parameter r4 =SELECTED_REAL_KIND(6, 37)
 Single precision float spec (4 Bytes)
 
integer, parameter r8 =SELECTED_REAL_KIND(13, 307)
 Double precision float spec (8 Bytes)
 

Function/Subroutine Documentation

◆ cross_product()

pure real(r8) function, dimension(3) cross_product ( real(r8), dimension(3), intent(in)  a,
real(r8), dimension(3), intent(in)  b 
)

Compute the cross product of two 3 dimensional vectors.

Returns
\( a \times b \) [3]
Parameters
[in]aVector 1 [3]
[in]bVector 2 [3]

◆ get_inverse_map_i4()

subroutine get_inverse_map_i4 ( integer(i4), dimension(n1), intent(inout)  map,
integer(i4), intent(in)  n1,
integer(i4), dimension(n2), intent(inout)  imap,
integer(i4), intent(in)  n2 
)

integer(i4) implementation of oft_local::get_inverse_map

Parameters
[in,out]mapForward map [n1]
[in,out]imapInverse map [n2]
[in]n1Length of forward map
[in]n2Length of inverse map (n2<=MAX(map))

◆ get_inverse_map_i8()

subroutine get_inverse_map_i8 ( integer(i8), dimension(n1), intent(inout)  map,
integer(i4), intent(in)  n1,
integer(i4), dimension(n2), intent(inout)  imap,
integer(i8), intent(in)  n2 
)

integer(i8) implementation of oft_local::get_inverse_map

Parameters
[in,out]mapForward map [n1]
[in,out]imapInverse map [n2]
[in]n1Length of forward map
[in]n2Length of inverse map (n2<=MAX(map))

◆ magnitude()

pure real(r8) function magnitude ( real(r8), dimension(:), intent(in)  a)

Compute the 2-norm of an array.

Returns
\( \sum_i a^2_i \)
Parameters
[in]aArray

◆ oft_time_diff()

integer(i8) function oft_time_diff ( integer(i8), intent(in)  timein)

Get elapsed time since a given integer time.

Parameters
[in,out]selfCalling timer class
Returns
Number of integer counts since last tick/tock
Parameters
[in]timeinPrevious time in integer counts

◆ oft_time_i8()

integer(i8) function oft_time_i8

Get current system time in integer counts.

Returns
System time in integer counts

◆ oft_timer_elapsed()

real(r8) function, private oft_timer_elapsed ( class(oft_timer), intent(inout)  self)
private

Set elapsed time since last tick/tock.

Parameters
[in,out]selfCalling timer class

◆ oft_timer_intelapsed()

integer(i8) function, private oft_timer_intelapsed ( class(oft_timer), intent(inout)  self)
private

Get elapsed time since last tick/tock in integer counts.

Parameters
[in,out]selfCalling timer class
Returns
Number of integer counts since last tick/tock

◆ oft_timer_start()

subroutine, private oft_timer_start ( class(oft_timer), intent(inout)  self)
private

Start or reset timer.

Parameters
[in,out]selfCalling timer class

◆ oft_timer_timeout()

logical function, private oft_timer_timeout ( class(oft_timer), intent(inout)  self,
real(r8), intent(in)  timeout 
)
private

Check if time since last tick/tock exceeds a limit.

Parameters
[in,out]selfCalling timer class
[in]timeoutLength of timeout (seconds)

◆ skip_comment_lines()

integer(i4) function skip_comment_lines ( integer(i4), intent(in)  io_unit)

Skip comment lines in open file.

Returns
IOSTAT from last read or -1 if io_unit is not open
Parameters
[in]io_unitI/O unit to advance

◆ time_to_string()

pure character(len=13) function time_to_string ( real(r8), intent(in)  a)

Compute the 2-norm of an array.

Returns
\( \sum_i a^2_i \)
Parameters
[in]aArray

◆ xml_get_element()

subroutine xml_get_element ( type(fox_node), intent(in), pointer  parent,
character(len=*), intent(in)  name,
type(fox_node), intent(out), pointer  element,
integer(i4), intent(out)  error_flag,
integer(i4), intent(out), optional  index 
)

Get child element within a given XML node.

Variable Documentation

◆ c4

integer, parameter c4 =r4

Single precision complex spec (4 Bytes)

◆ c8

integer, parameter c8 =r8

Double precision complex spec (8 Bytes)

◆ i4

integer, parameter i4 =SELECTED_INT_KIND(9)

4-Byte integer spec

◆ i8

integer, parameter i8 =SELECTED_INT_KIND(18)

8-Byte integer spec

◆ petsc_addr

integer, parameter petsc_addr =i4

◆ pi

real(r8), parameter pi =3.141592653589793238462643_r8

\( \pi \)

◆ r10

integer, parameter r10 =SELECTED_REAL_KIND(18, 4900)

Extended precision float spec (10 or 16 Bytes depending on platform)

◆ r4

integer, parameter r4 =SELECTED_REAL_KIND(6, 37)

Single precision float spec (4 Bytes)

◆ r8

integer, parameter r8 =SELECTED_REAL_KIND(13, 307)

Double precision float spec (8 Bytes)