***InCLosure Help File***

InCLosure: A Language and Environment for Reliable Scientific Computing.
InCLosure version 2.0
http://scholar.cu.edu.eg/henddawood/software/InCLosure
Copyright (c) 2018 by Hend Dawood.
All rights reserved.

=========================================

Evaluation of multivariate real functions
-----------------------------------------
EvalReal <ex string> <optional args>

;; Basic Real Evaluation Function ;;
;; Evaluates multivariate real symbolic expressions ;;
;; Enter lowercase variable symbols for real evaluation ;;
;; Enter logarithms as logbase(number) e.g. log10(x), log2(e) ;;

;; Parameters:
	;	ex (string): the function expression,
	;	args: list of string parameters of the form "x=a", "y=b" , ...
	;		where a, b, are the points to evaluate x, y, ... at,      
	;		the last integer parameter in the list is the precision of the result (optional and default is 20) ;;
	
Examples:
EvalReal "2*x+y" "x=1" "y=2" 30 (where the last number is the precision of the result)
EvalReal "2*x+3" "x=1" (precision is defaulted to 20)

Real Automatic Differentiation
------------------------------
ADReal <f string> <val string> <optional (pr 20)>

;; Basic Real AD Function ;;

;; Parameters:	f (string): the function expression,
			;	val (string): the point to evaluate at on the form "var=a" (where the real variable is in lower case),
			;	pr (integer): the precision (optional 20) ;;

Examples:
ADReal "2*x^3" "x=-2" 30 (where the last number is the precision)
ADReal "sin(x^3)" "x=2" (precision is defaulted to 20)

Evaluation of multivariate interval functions
---------------------------------------------
EvalIntMulti <ex string> <optional args>

;; Basic Interval Evaluation Function ;;
;; Evaluates multivariate interval symbolic expressions ;;
;; Enter uppercase variable symbols for interval evaluation ;;
;; Enter logarithms as logbase(interval) e.g. log10(X) ;;

;; Parameters:	ex (string): the function expression,
			;	args: a list of string parameters of the form "X=A", "Y=B" , ...
			;		where A, B, are the intervals to evaluate X, Y, ... at,     
			;		the last integer parameter in the list is the precision of the result (optional and default is 20) ;;

Examples:
EvalIntMulti "2*X+Y" "X=[-1,1]" "Y=[0,2]" 30 (where the last number is the precision)
EvalIntMulti "cos(X*Y)" "X=[-1,1]" "Y=[0,2]" (precision is defaulted to 20)

Subdivision Evaluation of Unary Interval Functions
--------------------------------------------------
EvalInt <ex string> <var-value string> <n integer> <optional (pr 20)>

;; Subdivision technique for evaluating interval expressions ;;
;; Enter logarithms as logbase(interval) e.g. log10(X) ;;

;; Parameters:	ex (string): the interval expression,
			;	var-value (string): the "variable=value" form,
			;	n (integer): number of subintervals,  
			;	pr (integer): precision of the result (optional and default is 20) ;;
			
Examples:
EvalInt "2*X" "X=[-1,1]" 10 30 (where the last two numbers are number of subdivisions and the precision respectively)
EvalInt "X^2-X-1" "X=[-1,1]" 10 (precision is defaulted to 20)

Interval Automatic Differentiation
----------------------------------
ADInt <ex string> <var-value string> <n integer> <optional (pr 20)>

;; Subdivision technique for IAD ;;

;; Parameters:	ex (string): the interval function,
			;	var-value (string): the "variable=value" form,
			;	n (integer): number of subintervals, 
			;	pr (integer): precision of the result (optional and default is 20) ;;
			
Examples:
ADInt "X^3" "X=[-1,1]" 10 30 (where the last two numbers are number of subdivisions and the precision respectively)
ADInt "sin(X^3)" "X=[-1,1]" 10 (precision is defaulted to 20)

Evaluation of an Entire File of InCL Commands
---------------------------------------------
InCLEval <filename string>

;; Evaluates a file of InCL commands ;;
;; Returns a new file (filename-InCLOut.txt) of InCL evaluations in the same path as the input file ;;
;; The default path of IO files is "C:\InCLData\IO" ;;

;; Parameters:	filename (string): the name of the input file ;;

Example:
InCLEval "InCLInput.txt"

Changing the Default Path for Input and Output Files
----------------------------------------------------
setInCLPath <newPath string>

;; Changes the default path of IO files from "C:\InCLData\IO" to newPath ;;
;; Affects the location of InCLEval input and output files ;;

;; Parameters:	newPath (string): the new path of InCL input and output files ;;

Example:
setInCLPath "newPath"
