ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation. |
This module contains the derived types for generating allocatable
containers of scalar, vector, matrix, or cube of integer, real, complex, logical, and string values of arbitrary kinds.
More...
Data Types | |
interface | assignment(=) |
Assign the contents of the input source to the output destin . More... | |
type | ccc_pdt |
This is the parameterized derived type for generating a container of a cube component of type complex of arbitrary kind. More... | |
type | ccc_type |
This is the derived type for generating a container of a cube component of type complex of default kind CK.More... | |
type | cci_pdt |
This is the parameterized derived type for generating a container of a cube component of type integer of arbitrary kind. More... | |
type | cci_type |
This is the derived type for generating a container of a cube component of type integer of default kind IK.More... | |
type | ccl_pdt |
This is the parameterized derived type for generating a container of a cube component of type logical of arbitrary kind. More... | |
type | ccl_type |
This is the derived type for generating a container of a cube component of type logical of default kind LK.More... | |
type | ccp_type |
This is the derived type for generating a container of a cube component of type unlimited polymorphic. More... | |
type | ccr_pdt |
This is the parameterized derived type for generating a container of a cube component of type real of arbitrary kind. More... | |
type | ccr_type |
This is the derived type for generating a container of a cube component of type real of default kind RK.More... | |
type | ccs_pdt |
This is the parameterized derived type for generating a container of a cube component of type character of arbitrary kind of allocatable length. More... | |
type | ccs_type |
This is the derived type for generating a container of a cube component of type character of default kind SK of arbitrary length type parameter.More... | |
type | cmc_pdt |
This is the parameterized derived type for generating a container of a matrix component of type complex of arbitrary kind. More... | |
type | cmc_type |
This is the derived type for generating a container of a matrix component of type complex of default kind CK.More... | |
type | cmi_pdt |
This is the parameterized derived type for generating a container of a matrix component of type integer of arbitrary kind. More... | |
type | cmi_type |
This is the derived type for generating a container of a matrix component of type integer of default kind IK.More... | |
type | cml_pdt |
This is the parameterized derived type for generating a container of a matrix component of type logical of arbitrary kind. More... | |
type | cml_type |
This is the derived type for generating a container of a matrix component of type logical of default kind LK.More... | |
type | cmp_type |
This is the derived type for generating a container of a matrix component of type unlimited polymorphic. More... | |
type | cmr_pdt |
This is the parameterized derived type for generating a container of a matrix component of type real of arbitrary kind. More... | |
type | cmr_type |
This is the derived type for generating a container of a matrix component of type real of default kind RK.More... | |
type | cms_pdt |
This is the parameterized derived type for generating a container of a matrix component of type character of arbitrary kind of allocatable length. More... | |
type | cms_type |
This is the derived type for generating a container of a matrix component of type character of default kind SK of arbitrary length type parameter.More... | |
type | csc_pdt |
This is the csc_pdt parameterized type for generating instances of container of scalar of complex objects of kind any supported by the processor (e.g., CK, CK32, CK64, or CK128). More... | |
type | csc_type |
This is the csc_type type for generating instances of container of scalar of logical objects. More... | |
type | csi_pdt |
This is the csi_pdt parameterized type for generating instances of container of scalar of integer objects of kind any supported by the processor (e.g., IK, IK8, IK16, IK32, or IK64). More... | |
type | csi_type |
This is the csi_type type for generating instances of container of scalar of integer objects. More... | |
type | csl_pdt |
This is the csl_pdt parameterized type for generating instances of container of scalar of logical objects of kind any supported by the processor (e.g., LK). More... | |
type | csl_type |
This is the csl_type type for generating instances of container of scalar of logical objects. More... | |
type | csp_type |
This is the csp_type type for generating instances of container of scalar unlimited polymorphic objects. More... | |
type | csr_pdt |
This is the csr_pdt parameterized type for generating instances of container of scalar of real objects of kind any supported by the processor (e.g., RK, RK32, RK64, or RK128). More... | |
type | csr_type |
This is the csr_type type for generating instances of container of scalar of logical objects. More... | |
type | css_pdt |
This is the css_pdt parameterized type for generating instances of container of scalar of string objects of kind any supported by the processor (e.g., SK, SKA, SKD , or SKU). More... | |
type | css_type |
This is the css_type type for generating instances of container of scalar of string objects. More... | |
type | cvc_pdt |
This is the parameterized derived type for generating a container of an allocatable vector component of type complex of arbitrary kind. More... | |
type | cvc_type |
This is the derived type for generating a container of a vector component of type complex of default kind CK.More... | |
type | cvi_pdt |
This is the parameterized derived type for generating a container of a vector component of type integer of arbitrary kind. More... | |
type | cvi_type |
This is the derived type for generating a container of a vector component of type integer of default kind IK.More... | |
type | cvl_pdt |
This is the parameterized derived type for generating a container of an allocatable vector component of type logical of arbitrary kind. More... | |
type | cvl_type |
This is the derived type for generating a container of a vector component of type logical of default kind LK.More... | |
type | cvp_type |
This is the derived type for generating a container of a vector component of type unlimited polymorphic. More... | |
type | cvr_pdt |
This is the parameterized derived type for generating a container of an allocatable vector component of type real of arbitrary kind. More... | |
type | cvr_type |
This is the derived type for generating a container of a vector component of type real of default kind RK.More... | |
type | cvs_pdt |
This is the parameterized derived type for generating a container of a vector component of type character of arbitrary kind of allocatable length. More... | |
type | cvs_type |
This is the derived type for generating a container of a vector component of type character of default kind SK of arbitrary length type parameter.More... | |
interface | operator(/=) |
Generate and return the result of comparing the values of two input containers of scalar values using the /= operator. More... | |
interface | operator(<) |
Generate and return the result of comparing the values of two input containers of scalar values using the < operator. More... | |
interface | operator(<=) |
Generate and return the result of comparing the values of two input containers of scalar values using the <= operator. More... | |
interface | operator(==) |
Generate and return the result of comparing the values of the two input containers of scalar of arbitrary type and kind using the == operator. More... | |
interface | operator(>) |
Generate and return the result of comparing the values of two input containers of scalar values using the > operator. More... | |
interface | operator(>=) |
Generate and return the result of comparing the values of two input containers of scalar values using the >= operator. More... | |
This module contains the derived types for generating allocatable
containers of scalar, vector, matrix, or cube of integer, real, complex, logical, and string values of arbitrary kinds.
This module offer two broad categories of container derived types:
Each of the above categories contains the following subcategories based on their component (val
) rank:
The containers of this module use a concise letter-based naming convention:
container%val
).container%val(:)
).container%val(:,:)
).container%val(:,:,:)
).For example:
character
) derived type (of default kind SK). This container is widely known as varying string or simply string in the Fortran community.character
) derived type (of kind any supported by the processor (e.g., SK, SKA, SKD , or SKU)). This container is widely known as varying string or simply string in the Fortran community.Containers are essential for creating jagged arrays.
While string containers are the most popular container type in almost all languages, other container types and ranks offered by this module find heavy use in Machine Learning and Data Science or even simple computational tasks.
elemental
versions of the generic interfaces of this procedure are known to yield incorrect result if compiled by gfortran version 10-12.elemental
results.elemental
constructors.Examples for the following generic interfaces must be added:
Final Remarks ⛓
If you believe this algorithm or its documentation can be improved, we appreciate your contribution and help to edit this page's documentation and source file on GitHub.
For details on the naming abbreviations, see this page.
For details on the naming conventions, see this page.
This software is distributed under the MIT license with additional terms outlined below.
This software is available to the public under a highly permissive license.
Help us justify its continued development and maintenance by acknowledging its benefit to society, distributing it, and contributing to it.