mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-29 15:00:27 +02:00
+ Added many functions
This commit is contained in:
parent
12e8b6ddb6
commit
8932d13ffa
212
docs/math.tex
212
docs/math.tex
@ -37,17 +37,19 @@ The following types are defined in the \file{math} unit:
|
||||
Type
|
||||
Float = Extended;
|
||||
\end{verbatim}
|
||||
|
||||
All calculations are done with the Float type. This allows to
|
||||
recompile the unit with a different float type to obtain a
|
||||
desired precision.
|
||||
\begin{verbatim}
|
||||
Type
|
||||
TPaymentTime = (PTEndOfPeriod,PTStartOfPeriod);
|
||||
\end{verbatim}
|
||||
|
||||
\var{TPaymentTime} is used in the financial calculations.
|
||||
\begin{verbatim}
|
||||
Type
|
||||
EInvalidArgument = Class(EMathError);
|
||||
\end{verbatim}
|
||||
|
||||
The \var{EInvalidArgument} exception is used to report invalid arguments.
|
||||
\section{Functions and Procedures}
|
||||
|
||||
\begin{function}{arccos}
|
||||
@ -57,10 +59,10 @@ Function arccos(x : float) : float;
|
||||
\var{Arccos} returns the inverse cosine of its argument \var{x}. The
|
||||
argument \var{x} should lie between -1 and 1 (borders included).
|
||||
\Errors
|
||||
If the argument \var{x} is not in the allowed range, an \var{EMathError}
|
||||
exception is raised.
|
||||
If the argument \var{x} is not in the allowed range, an
|
||||
\var{EInvalidArgument} exception is raised.
|
||||
\SeeAlso
|
||||
\seef{arcsin}, \seef{arcosh}, \seef{arsinh}, \seef{arctanh}
|
||||
\seef{arsin}, \seef{arcosh}, \seef{arsinh}, \seef{artanh}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{ex1}
|
||||
@ -76,10 +78,10 @@ The argument \var{x} should be larger than 1.
|
||||
The \var{arccosh} variant of this function is supplied for \delphi
|
||||
compatibility.
|
||||
\Errors
|
||||
If the argument \var{x} is not in the allowed range, an \var{EMathError}
|
||||
If the argument \var{x} is not in the allowed range, an \var{EInvalidArgument}
|
||||
exception is raised.
|
||||
\SeeAlso
|
||||
\seef{cosh}, \seef{sinh}, \seef{arcsin}, \seef{arcsinh}, \seef{arctanh},
|
||||
\seef{cosh}, \seef{sinh}, \seef{arsin}, \seef{arsinh}, \seef{artanh},
|
||||
\seef{tanh}
|
||||
\end{function}
|
||||
|
||||
@ -92,10 +94,10 @@ Function arcsin(x : float) : float;
|
||||
\var{Arcsin} returns the inverse sine of its argument \var{x}. The
|
||||
argument \var{x} should lie between -1 and 1.
|
||||
\Errors
|
||||
If the argument \var{x} is not in the allowed range, an \var{EMathError}
|
||||
If the argument \var{x} is not in the allowed range, an \var{EInvalidArgument}
|
||||
exception is raised.
|
||||
\SeeAlso
|
||||
\seef{arccos}, \seef{arccosh}, \seef{arcsinh}, \seef{arctanh}
|
||||
\seef{arcos}, \seef{arcosh}, \seef{arsinh}, \seef{artanh}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{ex2}
|
||||
@ -116,23 +118,10 @@ On Intel systems this function is implemented with the native intel
|
||||
\Errors
|
||||
If \var{x} is zero, an overflow error will occur.
|
||||
\SeeAlso
|
||||
\seef{arccos}, \seef{arccosh}, \seef{arcsinh}, \seef{arctanh}
|
||||
\seef{arcos}, \seef{arcosh}, \seef{arsinh}, \seef{artanh}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
|
||||
\begin{function}{arctanh}
|
||||
\Declaration
|
||||
Function arctanh(x : float) : float;
|
||||
\Description
|
||||
|
||||
\Errors
|
||||
\SeeAlso
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
\FPCexample{ex6}
|
||||
|
||||
\begin{function}{arsinh}
|
||||
\Declaration
|
||||
@ -146,7 +135,7 @@ compatibility.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{arccosh}, \seef{arccos}, \seef{arsin}, \seef{artanh}
|
||||
\seef{arcosh}, \seef{arcos}, \seef{arsin}, \seef{artanh}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{ex4}
|
||||
@ -155,251 +144,315 @@ None.
|
||||
\begin{function}{artanh}
|
||||
\Declaration
|
||||
Function artanh(x : float) : float;
|
||||
Function arctanh(x : float) : float;
|
||||
\Description
|
||||
\var{artanh} returns the inverse hyperbolic tangent of its argument \var{x},
|
||||
where \var{x} should lie in the interval [-1,1], borders included.
|
||||
|
||||
The \var{arctanh} variant of this function is supplied for \delphi compatibility.
|
||||
\Errors
|
||||
In case \var{x} is not in the interval [-1,1], an \var{EInvalidArgument}
|
||||
exception is raised.
|
||||
\SeeAlso
|
||||
\seef{arcosh}, \seef{arcos}, \seef{arsin}, \seef{artanh}
|
||||
\Errors
|
||||
\SeeAlso
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex5}
|
||||
|
||||
|
||||
\begin{function}{ceil}
|
||||
\Declaration
|
||||
Function ceil(x : float) : longint;
|
||||
\Description
|
||||
|
||||
\var{Ceil} returns the lowest integer number greater than or equal to \var{x}.
|
||||
The absolute value of \var{x} should be less than \var{maxint}.
|
||||
\Errors
|
||||
If the asolute value of \var{x} is larger than maxint, an overflow error will
|
||||
occur.
|
||||
\SeeAlso
|
||||
\seef{floor}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
\FPCexample{ex7}
|
||||
|
||||
\begin{function}{cosh}
|
||||
\Declaration
|
||||
Function cosh(x : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Cosh} returns the hyperbolic cosine of it's argument {x}.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{arcosh}, \seef{sinh}, \seef{arsinh}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex8}
|
||||
|
||||
|
||||
\begin{function}{cotan}
|
||||
\Declaration
|
||||
Function cotan(x : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Cotan} returns the cotangent of it's argument \var{x}. \var{x} should
|
||||
be different from zero.
|
||||
\Errors
|
||||
If \var{x} is zero then a overflow error will occur.
|
||||
\SeeAlso
|
||||
\seef{tanh}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex9}
|
||||
|
||||
|
||||
\begin{function}{cycletorad}
|
||||
\Declaration
|
||||
Function cycletorad(cycle : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Cycletorad} transforms it's argument \var{cycle}
|
||||
(an angle expressed in cycles) to radians.
|
||||
(1 cycle is $2 \pi$ radians).
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{degtograd}, \seef{degtorad}, \seef{radtodeg},
|
||||
\seef{radtograd}, \seef{radtocycle}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex10}
|
||||
|
||||
|
||||
\begin{function}{degtograd}
|
||||
\Declaration
|
||||
Function degtograd(deg : float) : float;
|
||||
\Description
|
||||
\var{Degtograd} transforms it's argument \var{deg} (an angle in degrees)
|
||||
to grads.
|
||||
|
||||
(90 degrees is 100 grad.)
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{cycletorad}, \seef{degtorad}, \seef{radtodeg},
|
||||
\seef{radtograd}, \seef{radtocycle}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex11}
|
||||
|
||||
|
||||
\begin{function}{degtorad}
|
||||
\Declaration
|
||||
Function degtorad(deg : float) : float;
|
||||
\Description
|
||||
\var{Degtorad} converts it's argument \var{deg} (an angle in degrees) to
|
||||
radians.
|
||||
|
||||
(pi radians is 180 degrees)
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{cycletorad}, \seef{degtograd}, \seef{radtodeg},
|
||||
\seef{radtograd}, \seef{radtocycle}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex12}
|
||||
|
||||
|
||||
\begin{function}{floor}
|
||||
\Declaration
|
||||
Function floor(x : float) : longint;
|
||||
\Description
|
||||
|
||||
\var{Floor} returns the largest integer smaller than or equal to \var{x}.
|
||||
The absolute value of \var{x} should be less than \var{maxint}.
|
||||
\Errors
|
||||
If \var{x} is larger than \var{maxint}, an overflow will occur.
|
||||
\SeeAlso
|
||||
\seef{ceil}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex13}
|
||||
|
||||
|
||||
\begin{procedure}{frexp}
|
||||
\Declaration
|
||||
Procedure frexp(x : float;var mantissa,exponent : float);
|
||||
\Description
|
||||
|
||||
\var{Frexp} returns the mantissa and exponent of it's argument
|
||||
\var{x} in \var{mantissa} and \var{exponent}.
|
||||
\Errors
|
||||
None
|
||||
\SeeAlso
|
||||
\end{procedure}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex14}
|
||||
|
||||
|
||||
\begin{function}{gradtodeg}
|
||||
\Declaration
|
||||
Function gradtodeg(grad : float) : float;
|
||||
\Description
|
||||
\var{Gradtodeg} converts its argument \var{grad} (an angle in grads)
|
||||
to degrees.
|
||||
|
||||
(100 grad is 90 degrees)
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{cycletorad}, \seef{degtograd}, \seef{radtodeg},
|
||||
\seef{radtograd}, \seef{radtocycle}, \seef{gradtorad}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex15}
|
||||
|
||||
|
||||
\begin{function}{gradtorad}
|
||||
\Declaration
|
||||
Function gradtorad(grad : float) : float;
|
||||
\Description
|
||||
\var{Gradtorad} converts its argument \var{grad} (an angle in grads)
|
||||
to radians.
|
||||
|
||||
(200 grad is pi degrees).
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{cycletorad}, \seef{degtograd}, \seef{radtodeg},
|
||||
\seef{radtograd}, \seef{radtocycle}, \seef{gradtodeg}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex16}
|
||||
|
||||
|
||||
\begin{function}{hypot}
|
||||
\Declaration
|
||||
Function hypot(x,y : float) : float;
|
||||
\Description
|
||||
\var{Hypot} returns the hypotenuse of the triangle where the sides
|
||||
adjacent to the square angle have lengths \var{x} and \var{y}.
|
||||
|
||||
The function uses Pythagoras' rule for this.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex17}
|
||||
|
||||
|
||||
\begin{function}{intpower}
|
||||
\Declaration
|
||||
Function intpower(base : float;exponent : longint) : float;
|
||||
\Description
|
||||
|
||||
\var{Intpower} returns \var{base} to the power \var{exponent},
|
||||
where exponent is an integer value.
|
||||
\Errors
|
||||
If \var{base} is zero and the exponent is negative, then an
|
||||
overflow error will occur.
|
||||
\SeeAlso
|
||||
\seef{power}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex18}
|
||||
|
||||
|
||||
\begin{function}{ldexp}
|
||||
\Declaration
|
||||
Function ldexp(x : float;p : longint) : float;
|
||||
\Description
|
||||
|
||||
\var{Ldexp} returns $2^p x$.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{lnxp1}, \seef{log10},\seef{log2},\seef{logn}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex19}
|
||||
|
||||
|
||||
\begin{function}{lnxpi}
|
||||
\begin{function}{lnxp1}
|
||||
\Declaration
|
||||
Function lnxpi(x : float) : float;
|
||||
Function lnxp1(x : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Lnxp1} returns the natural logarithm of \var{1+X}. The result
|
||||
is more precise for small values of \var{x}. \var{x} should be larger
|
||||
than -1.
|
||||
\Errors
|
||||
If $x\leq -1$ then an \var{EInvalidArgument} exception will be raised.
|
||||
\SeeAlso
|
||||
\seef{ldexp}, \seef{log10},\seef{log2},\seef{logn}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
\FPCexample{ex20}
|
||||
|
||||
\begin{function}{log10}
|
||||
\Declaration
|
||||
Function log10(x : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Log10} returns the 10-base logarithm of \var{X}.
|
||||
\Errors
|
||||
If \var{x} is less than or equal to 0 an 'invalid fpu operation' error
|
||||
will occur.
|
||||
\SeeAlso
|
||||
\seef{ldexp}, \seef{lnxp1},\seef{log2},\seef{logn}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex21}
|
||||
|
||||
|
||||
\begin{function}{log2}
|
||||
\Declaration
|
||||
Function log2(x : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Log2} returns the 2-base logarithm of \var{X}.
|
||||
\Errors
|
||||
If \var{x} is less than or equal to 0 an 'invalid fpu operation' error
|
||||
will occur.
|
||||
\SeeAlso
|
||||
\seef{ldexp}, \seef{lnxp1},\seef{log10},\seef{logn}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex22}
|
||||
|
||||
|
||||
\begin{function}{logn}
|
||||
\Declaration
|
||||
Function logn(n,x : float) : float;
|
||||
\Description
|
||||
|
||||
\var{Logn} returns the n-base logarithm of \var{X}.
|
||||
\Errors
|
||||
If \var{x} is less than or equal to 0 an 'invalid fpu operation' error
|
||||
will occur.
|
||||
\SeeAlso
|
||||
\seef{ldexp}, \seef{lnxp1},\seef{log10},\seef{log2}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
\FPCexample{ex23}
|
||||
|
||||
|
||||
var m1,m2,m3,m4,skew,kurtosis : float);
|
||||
\begin{function}{max}
|
||||
\Declaration
|
||||
Function max(Int1,Int2:Cardinal):Cardinal;
|
||||
\Description
|
||||
|
||||
\Errors
|
||||
\SeeAlso
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
|
||||
\begin{function}{max}
|
||||
\Declaration
|
||||
Function max(Int1,Int2:Integer):Integer;
|
||||
\Description
|
||||
|
||||
\var{Max} returns the the maximum of \var{Int1} and \var{Int2}.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{min}, \seef{maxIntValue}, \seef{\maxvalue}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
\FPCexample{ex24}
|
||||
|
||||
\begin{function}{maxIntValue}
|
||||
\Declaration
|
||||
Function maxIntValue(const Data: array of Integer): Integer;
|
||||
function MaxIntValue(const Data: array of Integer): Integer;
|
||||
\Description
|
||||
|
||||
\var{MaxIntValue} returns the biggest integer out of the \var{Data}
|
||||
array.
|
||||
\Errors
|
||||
None.
|
||||
\SeeAlso
|
||||
\seef{maxvalue}, \seef{minvalue}, \seef{minIntValue}
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
@ -716,5 +769,4 @@ Function variance(const data : array of float) : float;
|
||||
\SeeAlso
|
||||
\end{function}
|
||||
|
||||
\FPCexample{}
|
||||
|
||||
\FPCexample{}
|
Loading…
Reference in New Issue
Block a user