123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720 |
- %
- % $Id$
- % This file is part of the FPC documentation.
- % Copyright (C) 2000 by Florian Klaempfl
- %
- % The FPC documentation is free text; you can redistribute it and/or
- % modify it under the terms of the GNU Library General Public License as
- % published by the Free Software Foundation; either version 2 of the
- % License, or (at your option) any later version.
- %
- % The FPC Documentation is distributed in the hope that it will be useful,
- % but WITHOUT ANY WARRANTY; without even the implied warranty of
- % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- % Library General Public License for more details.
- %
- % You should have received a copy of the GNU Library General Public
- % License along with the FPC documentation; see the file COPYING.LIB. If not,
- % write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- % Boston, MA 02111-1307, USA.
- %
- \chapter{The MATH unit}
- \FPCexampledir{mathex}
- This chapter describes the \file{math} unit. The \var{math} unit
- was initially written by Florian Klaempfl. It provides mathematical
- functions which aren't covered by the system unit.
- This chapter starts out with a definition of all types and constants
- that are defined, followed by a complete explanation of each function.
- {\em Remark} This unit is compiled in Object Pascal mode so all
- \var{integers} are 32 bit.
- \section{Constants and types}
- The following types are defined in the \file{math} unit:
- \begin{verbatim}
- Type
- Float = Extended;
- \end{verbatim}
- \begin{verbatim}
- Type
- TPaymentTime = (PTEndOfPeriod,PTStartOfPeriod);
- \end{verbatim}
- \begin{verbatim}
- Type
- EInvalidArgument = Class(EMathError);
- \end{verbatim}
- \section{Functions and Procedures}
- \begin{function}{arccos}
- \Declaration
- Function arccos(x : float) : float;
- \Description
- \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.
- \SeeAlso
- \seef{arcsin}, \seef{arcosh}, \seef{arsinh}, \seef{arctanh}
- \end{function}
- \FPCexample{ex1}
- \begin{function}{arcosh}
- \Declaration
- Function arcosh(x : float) : float;
- Function arccosh(x : float) : float;
- \Description
- \var{Arcosh} returns the inverse hyperbolic cosine of its argument \var{x}.
- 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}
- exception is raised.
- \SeeAlso
- \seef{cosh}, \seef{sinh}, \seef{arcsin}, \seef{arcsinh}, \seef{arctanh},
- \seef{tanh}
- \end{function}
- \FPCexample{ex3}
- \begin{function}{arcsin}
- \Declaration
- Function arcsin(x : float) : float;
- \Description
- \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}
- exception is raised.
- \SeeAlso
- \seef{arccos}, \seef{arccosh}, \seef{arcsinh}, \seef{arctanh}
- \end{function}
- \FPCexample{ex2}
- \begin{function}{arctan2}
- \Declaration
- Function arctan2(x,y : float) : float;
- \Description
- \var{arctan2} calculates \var{arctan(y/x), and returns an angle in the
- correct quadrant. The returned angle will be in the range $-\pi$ to
- $\pi$ radians.
- The values of \var{x} and \var{y} must be between -2\^{}64 and 2\^{}64,
- moreover \var{x} should be different from zero.
- On Intel systems this function is implemented with the native intel
- \var{fpatan} instruction.
- \Errors
- If \var{x} is zero, an overflow error will occur.
- \SeeAlso
- \seef{arccos}, \seef{arccosh}, \seef{arcsinh}, \seef{arctanh}
- \end{function}
- \FPCexample{}
- \begin{function}{arctanh}
- \Declaration
- Function arctanh(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{arsinh}
- \Declaration
- Function arsinh(x : float) : float;
- Function arcsinh(x : float) : float;
- \Description
- \var{arsinh} returns the inverse hyperbolic sine of its argument \var{x}.
- The \var{arscsinh} variant of this function is supplied for \delphi
- compatibility.
- \Errors
- None.
- \SeeAlso
- \seef{arccosh}, \seef{arccos}, \seef{arsin}, \seef{artanh}
- \end{function}
- \FPCexample{ex4}
- \begin{function}{artanh}
- \Declaration
- Function artanh(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{ceil}
- \Declaration
- Function ceil(x : float) : longint;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{cosh}
- \Declaration
- Function cosh(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{cotan}
- \Declaration
- Function cotan(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{cycletorad}
- \Declaration
- Function cycletorad(cycle : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{degtograd}
- \Declaration
- Function degtograd(deg : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{degtorad}
- \Declaration
- Function degtorad(deg : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{floor}
- \Declaration
- Function floor(x : float) : longint;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{procedure}{frexp}
- \Declaration
- Procedure frexp(x : float;var mantissa,exponent : float);
- \Description
- \Errors
- \SeeAlso
- \end{procedure}
- \FPCexample{}
- \begin{function}{gradtodeg}
- \Declaration
- Function gradtodeg(grad : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{gradtorad}
- \Declaration
- Function gradtorad(grad : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{hypot}
- \Declaration
- Function hypot(x,y : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{intpower}
- \Declaration
- Function intpower(base : float;exponent : longint) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{ldexp}
- \Declaration
- Function ldexp(x : float;p : longint) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{lnxpi}
- \Declaration
- Function lnxpi(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{log10}
- \Declaration
- Function log10(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{log2}
- \Declaration
- Function log2(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{logn}
- \Declaration
- Function logn(n,x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- 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
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{maxIntValue}
- \Declaration
- Function maxIntValue(const Data: array of Integer): Integer;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{maxvalue}
- \Declaration
- Function maxvalue(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{mean}
- \Declaration
- Function mean(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- var mean,stddev : float);
- \begin{procedure}{meanandstddev}
- \Declaration
- Procedure meanandstddev(const data : array of float;
- \Description
- \Errors
- \SeeAlso
- \end{procedure}
- \FPCexample{}
- \begin{function}{min}
- \Declaration
- Function min(Int1,Int2:Cardinal):Cardinal;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{min}
- \Declaration
- Function min(Int1,Int2:Integer):Integer;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{minIntValue}
- \Declaration
- Function minIntValue(const Data: array of Integer): Integer;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{minvalue}
- \Declaration
- Function minvalue(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{procedure}{momentskewkurtosis}
- \Declaration
- Procedure momentskewkurtosis(const data : array of float;
- \Description
- \Errors
- \SeeAlso
- \end{procedure}
- \FPCexample{}
- \begin{function}{norm}
- \Declaration
- Function norm(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{popnstddev}
- \Declaration
- Function popnstddev(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{popnvariance}
- \Declaration
- Function popnvariance(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{power}
- \Declaration
- Function power(base,exponent : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{radtocycle}
- \Declaration
- Function radtocycle(rad : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{radtodeg}
- \Declaration
- Function radtodeg(rad : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{radtograd}
- \Declaration
- Function radtograd(rad : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{randg}
- \Declaration
- Function randg(mean,stddev : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{procedure}{sincos}
- \Declaration
- Procedure sincos(theta : float;var sinus,cosinus : float);
- \Description
- \Errors
- \SeeAlso
- \end{procedure}
- \FPCexample{}
- \begin{function}{sinh}
- \Declaration
- Function sinh(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{stddev}
- \Declaration
- Function stddev(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{sum}
- \Declaration
- Function sum(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- var sum,sumofsquares : float);
- \begin{function}{sumofsquares}
- \Declaration
- Function sumofsquares(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{procedure}{sumsandsquares}
- \Declaration
- Procedure sumsandsquares(const data : array of float;
- \Description
- \Errors
- \SeeAlso
- \end{procedure}
- \FPCexample{}
- \begin{function}{tan}
- \Declaration
- Function tan(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{tanh}
- \Declaration
- Function tanh(x : float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{totalvariance}
- \Declaration
- Function totalvariance(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
- \begin{function}{variance}
- \Declaration
- Function variance(const data : array of float) : float;
- \Description
- \Errors
- \SeeAlso
- \end{function}
- \FPCexample{}
|