ALIAS offers various procedures to determine bounds for the value of definite integrals with one or more variables. Some of them involve the use of the derivatives and you should be careful when the interval evaluation of these derivative cannot be performed. For example when considering you should not 0 in the integration domain. In that case you should integrate around 0 by using the Integrate problem while using another procedure for the remaining part of the domain.
int Integrate( INTERVAL_VECTOR (* TheIntervalFunction) (int,int,INTERVAL_VECTOR &), INTERVAL & TheDomain, int Iteration, double Accuracy, INTERVAL & Result)The simplest integration procedure of ALIAS that should be used only for the simplest function.
If the function is at least twice differentiable it is possible to use:
int IntegrateTrapeze( INTERVAL_VECTOR (* TheIntervalFunction) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR (* SecondDerivative) (int,int,INTERVAL_VECTOR &), INTERVAL & TheDomain, int Iteration, double Accuracy, INTERVAL & Result) int IntegrateRectangle( INTERVAL_VECTOR (* TheIntervalFunction) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR (* SecondDerivative) (int,int,INTERVAL_VECTOR &), INTERVAL & TheDomain, int Iteration, double Accuracy, INTERVAL & Result)The procedure SecondDerivative in MakeF format allows to interval evaluate the second derivative of the function.
Alternatively it is possible to use:
int IntegrateTaylor( INTERVAL_VECTOR (* CoeffTaylor) (int,int,INTERVAL_VECTOR &), int Order, INTERVAL & TheDomain, int Iteration, double Accuracy, INTERVAL & Result)The procedure CoeffTaylor, in MakeF format, should provide the interval evaluation of the Taylor coefficients of the function up to the order Order+1 (i.e. Order+2) coefficients).
int IntegrateMultiRectangle( INTERVAL_VECTOR (* Function) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR (* Second_Derivative) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR & TheDomain, int Iteration, double Accuracy, INTERVAL & Result) int IntegrateMultiRectangle( INTERVAL_VECTOR (* Function) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR (* Second_Derivative) (int,int,INTERVAL_VECTOR &), INTERVAL_MATRIX (* Gradient)(int, int,INTERVAL_VECTOR &), INTERVAL_VECTOR & TheDomain, int Iteration, double Accuracy, INTERVAL & Result)In the second form Gradient is a procedure in MakeJ format that allows to compute the derivatives of the second derivatives of the function. ALIAS offer also procedure based on Taylor expansion of the function.
int IntegrateMultiTaylor( INTERVAL_VECTOR (* CoeffInt) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR (* RestTaylor) (int,int,INTERVAL_VECTOR &), INTEGER_MATRIX &APOWERINT, INTEGER_MATRIX &APOWERREM, int nbrem, int Order, INTERVAL_VECTOR & TheDomain, int Iteration, double Accuracy, INTERVAL & Result) int IntegrateMultiTaylor( INTERVAL_VECTOR (* CoeffInt) (int,int,INTERVAL_VECTOR &), INTERVAL_VECTOR (* RestTaylor) (int,int,INTERVAL_VECTOR &), INTEGER_MATRIX &APOWERINT, int Order, INTERVAL_VECTOR & TheDomain, int Iteration, double Accuracy, INTERVAL & Result)The Taylor expansion of the function may be written as:
jean-pierre merlet