Modules

ModuleSource FileDescription
stdlib_ansi stdlib_ansi.f90

Terminal color and style escape sequences

   stdlib_ansi_operator stdlib_ansi_operator.f90

Implementation of the conversion to enumerator and identifier types to strings

   stdlib_ansi_to_string stdlib_ansi_to_string.f90

Implementation of the conversion to enumerator and identifier types to strings

stdlib_array stdlib_array.f90

Module for index manipulation and general array handling

Read more…
stdlib_ascii stdlib_ascii.fypp

The stdlib_ascii module provides procedures for handling and manipulating intrinsic character variables and constants.

Read more…
stdlib_bitsets stdlib_bitsets.fypp

Implements zero based bitsets of size up to huge(0_int32). The current code uses 64 bit integers to store the bits and uses all 64 bits. The code assumes two's complement integers, and treats negative integers as having the sign bit set. (Specification)

Read more…
   stdlib_bitsets_64 stdlib_bitsets_64.fypp
   stdlib_bitsets_large stdlib_bitsets_large.fypp
stdlib_error stdlib_error.f90

Provides support for catching and handling errors (Specification)

   f08estop f08estop.f90
   f18estop f18estop.f90
stdlib_hash_32bit stdlib_hash_32bit.fypp
   stdlib_hash_32bit_fnv stdlib_hash_32bit_fnv.fypp

An implementation of the FNV hashes 1 and 1a of Glenn Fowler, Landon Curt Noll, and Kiem-Phong-Vo, https://en.wikipedia.org/wiki/Fowler–Noll–Vo_hash_function

   stdlib_hash_32bit_nm stdlib_hash_32bit_nm.fypp
   stdlib_hash_32bit_water stdlib_hash_32bit_water.fypp
stdlib_hash_64bit stdlib_hash_64bit.fypp
   stdlib_hash_64bit_fnv stdlib_hash_64bit_fnv.fypp
   stdlib_hash_64bit_pengy stdlib_hash_64bit_pengy.fypp
   stdlib_hash_64bit_spookyv2 stdlib_hash_64bit_spookyv2.fypp
stdlib_hashmap_wrappers stdlib_hashmap_wrappers.f90

Public procedures Public types Public integers

stdlib_hashmaps stdlib_hashmaps.f90

Public data_types Values that parameterize David Chase's empirical SLOT expansion code API for the chaining_hashmap_type

Read more…
   stdlib_hashmap_chaining stdlib_hashmap_chaining.f90

Implements a simple separate chaining hash map.

   stdlib_hashmap_open stdlib_hashmap_open.f90
stdlib_io stdlib_io.fypp

Provides a support for file handling (Specification)

stdlib_io_npy stdlib_io_npy.fypp

Description of the npy format taken from https://numpy.org/doc/stable/reference/generated/numpy.lib.format.html

Read more…
   stdlib_io_npy_load stdlib_io_npy_load.fypp

Implementation of loading npy files into multidimensional arrays

   stdlib_io_npy_save stdlib_io_npy_save.fypp

Implementation of saving multidimensional arrays to npy files

stdlib_kinds stdlib_kinds.fypp

The specification of this module is available here.

stdlib_linalg stdlib_linalg.fypp

Provides a support for various linear algebra procedures (Specification)

   stdlib_linalg_cross_product stdlib_linalg_cross_product.fypp
   stdlib_linalg_determinant stdlib_linalg_determinant.fypp

Determinant of a rectangular matrix

   stdlib_linalg_diag stdlib_linalg_diag.fypp
   stdlib_linalg_kronecker stdlib_linalg_kronecker.fypp
   stdlib_linalg_outer_product stdlib_linalg_outer_product.fypp
stdlib_linalg_blas stdlib_linalg_blas.fypp
stdlib_linalg_blas_aux stdlib_linalg_blas_aux.fypp
stdlib_linalg_blas_c stdlib_linalg_blas_c.fypp
stdlib_linalg_blas_d stdlib_linalg_blas_d.fypp
stdlib_linalg_blas_s stdlib_linalg_blas_s.fypp
stdlib_linalg_blas_z stdlib_linalg_blas_z.fypp
stdlib_linalg_constants stdlib_linalg_constants.fypp
stdlib_linalg_state stdlib_linalg_state.fypp

Provides a state/error handling derived type for advanced error handling of BLAS/LAPACK based linear algebra procedures. All procedures are pure. (Specification) Version: experimental

Read more…
stdlib_logger stdlib_logger.f90

This module defines a derived type, procedures, a variable, and constants to be used for logging information and reporting errors in Fortran applications. (Specification)

Read more…
stdlib_math stdlib_math.fypp
   stdlib_math_all_close stdlib_math_all_close.fypp
   stdlib_math_arange stdlib_math_arange.fypp
   stdlib_math_diff stdlib_math_diff.fypp

Inspired by original code (MIT license) written in 2016 by Keurfon Luu (keurfonluu@outlook.com) https://github.com/keurfonluu/Forlab

   stdlib_math_is_close stdlib_math_is_close.fypp
   stdlib_math_linspace stdlib_math_linspace.fypp
   stdlib_math_logspace stdlib_math_logspace.fypp
   stdlib_math_meshgrid stdlib_math_meshgrid.fypp
stdlib_optval stdlib_optval.fypp

Provides a generic function optval, which can be used to conveniently implement fallback values for optional arguments to subprograms (Specification)

Read more…
stdlib_quadrature stdlib_quadrature.fypp

(Specification)

   stdlib_quadrature_gauss stdlib_quadrature_gauss.f90
   stdlib_quadrature_simps stdlib_quadrature_simps.fypp
   stdlib_quadrature_trapz stdlib_quadrature_trapz.fypp
stdlib_random stdlib_random.fypp
stdlib_selection stdlib_selection.fypp

Quickly find the k-th smallest value of an array, or the index of the k-th smallest value. (Specification)

stdlib_sorting stdlib_sorting.fypp

This module implements overloaded sorting subroutines named ORD_SORT, SORT_INDEX, and SORT, that each can be used to sort four kinds of INTEGER arrays, three kinds of REAL arrays, character(len=*) arrays, and arrays of type(string_type). (Specification)

Read more…
   stdlib_sorting_ord_sort stdlib_sorting_ord_sort.fypp
   stdlib_sorting_radix_sort stdlib_sorting_radix_sort.f90
   stdlib_sorting_sort stdlib_sorting_sort.fypp

This submodule implements the overloaded sorting subroutine SORT that can be used to sort four kinds of INTEGER arrays and three kinds of REAL arrays. Sorting is in order of increasing value, with the worst case run time performance of O(N Ln(N)).

Read more…
   stdlib_sorting_sort_index stdlib_sorting_sort_index.fypp
stdlib_specialfunctions stdlib_specialfunctions.f90
   stdlib_specialfunctions_legendre stdlib_specialfunctions_legendre.f90
stdlib_specialfunctions_gamma stdlib_specialfunctions_gamma.fypp
stdlib_stats stdlib_stats.fypp

Provides support for various statistical methods. This includes currently descriptive statistics (Specification)

   stdlib_stats_cov stdlib_stats_cov.fypp
   stdlib_stats_mean stdlib_stats_mean.fypp
   stdlib_stats_median stdlib_stats_median.fypp
   stdlib_stats_moment stdlib_stats_moment.fypp
   stdlib_stats_moment_all stdlib_stats_moment_all.fypp
   stdlib_stats_moment_mask stdlib_stats_moment_mask.fypp
   stdlib_stats_moment_scalar stdlib_stats_moment_scalar.fypp
   stdlib_stats_var stdlib_stats_var.fypp
   stdlib_stats_corr stdlib_stats_corr.fypp
stdlib_stats_distribution_exponential stdlib_stats_distribution_exponential.fypp
stdlib_stats_distribution_normal stdlib_stats_distribution_normal.fypp
stdlib_stats_distribution_uniform stdlib_stats_distribution_uniform.fypp
stdlib_str2num stdlib_str2num.fypp

The stdlib_str2num module provides procedures and interfaces for conversion of characters to numerical types. Currently supported: integer and real. (Specification)

Read more…
stdlib_string_type stdlib_string_type.fypp

Implementation of a string type to hold an arbitrary sequence of characters.

Read more…
   stdlib_string_type_constructor stdlib_string_type_constructor.fypp
stdlib_stringlist_type stdlib_stringlist_type.f90
stdlib_strings stdlib_strings.fypp

This module implements basic string handling routines.

Read more…
   stdlib_strings_to_string stdlib_strings_to_string.fypp
stdlib_version stdlib_version.fypp

Version information on stdlib