The Open FUSION Toolkit 1.0.0-beta6
Modeling tools for plasma and fusion research and engineering
Loading...
Searching...
No Matches
oft_base.F90 File Reference
#include "local.h"
#include "git_info.h"

Data Types

interface  oft_abort_callback
 Prototype for abort callback to override usual abort process. More...
type  oft_env_type
 Dummy shadow type for Fox XML node. More...
interface  oft_mpi_max
 Perform a MAX reduction over all processors. More...
interface  oft_mpi_sum
 Perform a SUM/AND reduction over all processors. More...
interface  oft_random_number
 Need docs. More...
interface  oft_set_signal_handlers
 Interface for setting UNIX signal handlers in "oft_local.c". More...

Modules

module  oft_base
 Base environment functions and aliases for Open FUSION Toolkit.

Functions/Subroutines

pure subroutine find_orient_listn (oflag, list, n)
 Apply an orientation transform to a n-value array.
real(r8) function linterp (x, y, n, xx, extrap)
 Perform linear 1-D interpolation of function F(x).
subroutine linterp_facs (x, n, xx, inds, facs, extrap)
 Compute coefficients for linear 1-D interpolation of function F(x).
subroutine oft_abort (error_str, sname, fname)
 Graceful abort for Open FUSION Toolkit.
pure logical function oft_debug_print (level)
 Output control for debug messages.
subroutine oft_decrease_indent
 Decrease length of global indent string by 2.
subroutine oft_finalize ()
 Finalize Open FUSION Toolkit environment.
subroutine oft_increase_indent
 Increase length of global indent string by 2.
subroutine oft_init (nthreads)
 Initializes Open FUSION Toolkit run environment.
logical function oft_mpi_and (a)
 logical scalar implementation of global AND (SUM) reduction
subroutine oft_mpi_barrier (ierr)
 Wrapper for MPI_BARRIER with MPI_COMM_WORLD to enable communication profiling.
logical function oft_mpi_check_reqs (n, req)
 Helper to check all requests from completion.
integer(i4) function, private oft_mpi_maxi (a)
 integer(i4) scalar implementation of global MAX reduction
integer(i8) function, dimension(n) oft_mpi_maxi8a (a, n)
 integer(i8) array implementation of element-wise global MAX reduction
integer(i4) function, dimension(n), private oft_mpi_maxia (a, n)
 integer(i4) array implementation of element-wise global MAX reduction
real(i8) function, private oft_mpi_maxr (a)
 real(r8) scalar implementation of global MAX reduction
real(r8) function, dimension(n), private oft_mpi_maxra (a, n)
 real(r8) array implementation of element-wise global MAX reduction
complex(r8) function, private oft_mpi_sumc (a)
 complex(c8) scalar implementation of global SUM reduction
complex(c8) function, dimension(n), private oft_mpi_sumca (a, n)
 complex(c8) array implementation of element-wise global SUM reduction
integer(i4) function, private oft_mpi_sumi4 (a)
 integer(i4) scalar implementation of global SUM reduction
integer(i4) function, dimension(n), private oft_mpi_sumi4a (a, n)
 integer(i4) array implementation of element-wise global SUM reduction
integer(i8) function, private oft_mpi_sumi8 (a)
 integer(i8) scalar implementation of global SUM reduction
integer(i8) function, dimension(n), private oft_mpi_sumi8a (a, n)
 integer(i8) array implementation of element-wise global SUM reduction
real(r8) function, private oft_mpi_sumr (a)
 real(r8) scalar implementation of global SUM reduction
real(r8) function, dimension(n), private oft_mpi_sumra (a, n)
 real(r8) array implementation of element-wise global SUM reduction
subroutine oft_mpi_waitall (n, req, ierr)
 Wrapper for MPI_WAITALL to enable communication profiling.
subroutine oft_mpi_waitany (n, req, j, ierr)
 Wrapper for MPI_WAITANY to enable communication profiling.
pure logical function oft_pm_print ()
 Output control for performance messages.
subroutine oft_prof_print
 Print some basic profiling information.
subroutine oft_prof_reset
 Reset all profiling counters.
subroutine oft_profile_start ()
 Activate profiling.
subroutine oft_random_number_c8 (array, n)
 Complex implementation of toolkit random_number function.
subroutine, private oft_random_number_r8 (array, n)
 Real implementation of toolkit random_number function.
subroutine oft_stack_print ()
 Print the current contents of the stack.
subroutine oft_stack_reset
 Reset the stack.
pure subroutine oft_thread_slice (tid, nthreads, length, i1, i2)
 Get thread ownership range for even spacing.
subroutine oft_warn (error_str)
 Graceful warning printing for Open FUSION Toolkit.
pure subroutine orient_list2 (oflag, list)
 Apply an orientation transform to a 2 value array.
pure subroutine orient_listn (oflag, list, n)
 Apply an orientation transform to a n-value array.
pure subroutine orient_listn_inv (oflag, list, n)
 Apply an orientation transform to a n-value array.

Variables

integer(i8), dimension(4) comm_times = 0
 Times for blocking communications.
procedure(oft_abort_callback), pointer oft_abort_cb
 Abort callback for graceful abort in Python interface.
type(oft_env_typeoft_env
 Global container for environment information.
character(len=:), allocatable oft_indent
 Indentation string for status messages.
integer(i4oft_mpi_c4 =MPI_COMPLEX8
 MPI_COMPLEX8 alias.
integer(i4oft_mpi_c8 =MPI_COMPLEX16
 MPI_COMPLEX16 alias.
integer(i4oft_mpi_char =MPI_CHARACTER
 MPI_CHAR alias.
integer(i4oft_mpi_i4 =MPI_INTEGER4
 MPI_INT4 alias.
integer(i4oft_mpi_i8 =MPI_INTEGER8
 MPI_INT8 alias.
integer(i4oft_mpi_logical =MPI_LOGICAL
 MPI_LOGICAL alias.
integer(i4oft_mpi_r4 =MPI_REAL8
 MPI_REAL4 alias.
integer(i4oft_mpi_r8 =MPI_REAL8
 MPI_REAL8 alias.
logical, private oft_prof_enabled = .FALSE.
 Enable profiling?
logical oft_stack_disabled = .FALSE.
 Disable debug/profiling stack.
integer(i4), dimension(24), parameter oft_test_seed = [430470439, -303393496, -476850581, -964913795, 995391627, 84909391, -586395292, -2070086573, -1010035798, 1012650827, 325297911, 701378007, 392909068, 379156631, 484729024, -292308758, -1669043581, 142231192, 708877466, -1255634259, 593274827, -561530186, -934579426, 900810854]
integer(i4oft_tid = 0
 ID of current thread.
real(r8), private start_time
 Time that run began.
logical use_petsc = .FALSE.
 Use PETSc as linear algebra backend.