ParaMonte Fortran 2.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
pm_mathSubAdd Module Reference

This module contains procedures and generic interfaces for evaluating the mathematical operator \(\mp\) acting on integer, complex, or real values.
More...

Data Types

interface  operator(.subadd.)
  Generate and return the result of applying the mathematical unary or binary operator \(\mp\) to the input argument(s). More...
 

Variables

character(*, SK), parameter MODULE_NAME = "@pm_mathSubAdd"
 

Detailed Description

This module contains procedures and generic interfaces for evaluating the mathematical operator \(\mp\) acting on integer, complex, or real values.

The plus–minus sign, ±, is a mathematical symbol with multiple meanings.

  1. In mathematics, it generally indicates a choice of exactly two possible values, one of which is obtained through addition and the other through subtraction.
  2. In experimental sciences, the sign commonly indicates the confidence interval or uncertainty bounding a range of possible errors in a measurement, often the standard deviation or standard error.
    The sign may also represent an inclusive range of values that a reading might have.
  3. In medicine, it means with or without.
  4. In engineering, the sign indicates the tolerance, which is the range of values that are considered to be acceptable, safe, or which comply with some standard or with a contract.
  5. In botany, it is used in morphological descriptions to notate more or less.
  6. In chemistry, the sign is used to indicate a racemic mixture.
  7. In electronics, this sign may indicate a dual voltage power supply, such as ±5 volts means +5 volts and -5 volts, when used with audio circuits and operational amplifiers.

Given two input arguments ref and val, the procedures of this module return an array of size 2 whose elements are [ref - val, ref + val].
If ref is missing, then an appropriate default value is used.

Note
The procedures of this module offer a handy and flexible way of membership checks via operator(.inrange.).
The operator \(\pm\) performs the opposite operation of \(\mp\), that is, \(\pm = -\mp\).
See also
operator(.divmul.)
operator(.subadd.)
operator(.allin.)
operator(.anyin.)
operator(.inrange.)
operator(.anyinrange.)
operator(.allinrange.)
operator(.in.)
getMinMax
setMinMax
Test:
test_pm_mathSubAdd


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.

  1. If you use any parts or concepts from this library to any extent, please acknowledge the usage by citing the relevant publications of the ParaMonte library.
  2. If you regenerate any parts/ideas from this library in a programming environment other than those currently supported by this ParaMonte library (i.e., other than C, C++, Fortran, MATLAB, Python, R), please also ask the end users to cite this original ParaMonte library.

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.

Author:
Amir Shahmoradi, April 23, 2017, 1:36 AM, Institute for Computational Engineering and Sciences (ICES), University of Texas at Austin

Variable Documentation

◆ MODULE_NAME

character(*, SK), parameter pm_mathSubAdd::MODULE_NAME = "@pm_mathSubAdd"

Definition at line 73 of file pm_mathSubAdd.F90.