The latest shareware version of PCalc (Version 0.99) is now available for download.
The following some features of PCalc.
PCalc has property numerical - universal mathematics. The numbers in PCalc can be one of the following types: real, complex, matrix, string;
Complex: 3.2-9.38i or 9.38j;
Matrix: [2.19,3.2-9.38i; 6.5,6i; 7.83,0.89] or vector [1.23,6.55i, 7i + 4.23];
UNKNOWN: type unknown;
Variable - It can carry in itself number.
The function and operators - is possible to use in compound expression:
The let value to variable has a kind:
Value of reals values may be:
+-1.#INF - mathematical definition of infinity. When used in a numerical expression numbers more than 1e307 or divide by zero.
+-1.#IND - forbidden mathematical operation;
Mathematical functions and system constants
Remark: most function have universal parameter value (i.e. available all type of number), if not, we informing whose parameter have specify type, size or other class part.
sin(Y) - sine of Y. Y is angle and all type of number available for this parameter. If Y is matrix: return value - matrix of Y size:
cos(Y) - cosine of Y;
tan(Y) - tangent of Y;
cot(Y) - cotangent of Y;
sec(Y) - secant of Y;
csc(Y) - cosecant of Y;
asin(Y) - the angle(in radians) whose sine is Y. Type of Y value - real, complex, matrix;
acos(Y) - the angle(in radians) whose cosine is Y. Type of Y value - real, complex, matrix;
atan(Y) - the angle(in radians) whose tangent is Y. Type of Y value - real, complex, matrix;
asinh(Y) - inverse hyperbolic sine. Type of Y value - real, complex, matrix;
acosh(Y) - inverse hyperbolic cosine. Type of Y value - real, complex, matrix;
atanh(Y) - inverse hyperbolic tangent. Type of Y value - real, complex, matrix;
sinh(Y) - hyperbolic sine of Y;
cosh(Y) - hyperbolic cosine of Y;
tanh(Y) - hyperbolic tangent of Y;
coth(Y) - hyperbolic cotangent of Y;
sech(Y) - hyperbolic secant of Y.
csch(Y) - hyperbolic cosecant of Y.
abs(Y) - absolute mean of Y;
exp(Y) - exponential: e raised to the power Y;
log(Y) - common logarithm (base 10) of Y;
ln(Y) - natural logarithm (base e) of Y. Returns principal value (imaginary part between pi and -pi for complex Y);
sqrt(Y) - square root of number Y;
ceil(Y) - smallest integer greater than or equal to Y. All number type of Y is available. If Y is complex then ceil take real and imag part of number like simply real value;
floor(Y) - greatest integer less than or equal to Y. All number type of Y is available;
round(Y) - the round number;
if(C, Y1, Y2) - Either Y1 or Y2 depending on the value of C. If C is true(non-zero), the function returns Y1. If C is false(zero), it returns Y2;
max(Y1,Y2,..,YN) - largest element in parameters. If Y is complex, this compare with abs means. If Y is matrix, this compare with largest element of matrix;
min (Y1,Y2,..,YN) - smallest element in parameters. If Y is complex, this compare with abs means. If Y is matrix, this compare with smallest element of matrix;
real (Y) - a real part of complex number Y (real, matrix support too);
imag (Y) - a imaginary part of complex number Y;
arg(Y) - angle(in radians) from the real axis to the complex number (or matrix of complex numbers) Y;
polar(A,B) - set a complex number with polar form. A - is absolute complex mean, B - is angle in radians. A and B may be a matrix in following rules: 1) A-matrix and B-real, 2) A-real and B-matrix, 3) A and B matrix with equally sizes. The complex number (of A, B or matrix elements) is forbidden;
angle(X,Y) - angle(in radians) between the x-axis and the point (x, y);
det(Y) - determinant of a matrix Y;
trans(Y) - the transpose are matrix. This returns the NxM matrix formed by interchanging rows and columns of an MxN matrix;
inv(Y) - this returns the inverse of a matrix. If Y does not have an inverse, you'll see an appropriate error message;
solve(a, b) - the solution to the linear system of equation A*x=B;
cumprod(Y) - function of cumulative multiplication. If Y is vector, the function cumprod (Y) returns a vector of Y size, where the meaning of n element it are first of n elements multiplication of a vector Y. If Y is matrix, cumprod (Y) returns a matrix, the meanings of which elements for everyone a vector-table are calculated on that to a principle;
cumsum(Y) - function of cumulative addition;
ones(Y) - create of matrixes with elements meaning is 1.0;
mtxcat(Y,X) - A matrix formed by putting the two argument matrices side by side for x axis. Matrices may be different sizes. Try and see it yourself;
mtycat(Y,X) - A matrix formed by putting the two argument matrices side by side for y axis. Matrices may be different sizes;
backord(Y) - the input array, Y, formed so as to put all rows in contrary order;
fvector(B,S,C) - return vector, formed in following order: B - it first element of vector, S - step for next others elements, C - size of vector (must be real and absolute);
sorts(Y) - the input array, Y, sorted so as to put all rows in ascending order;
sortb(Y) - sorting according decrease (real, complex, matrix, string);
size(Y) - size of number (real, complex, matrix, string);
poly(Y,X) - Accounts the following expression: a0+a1*x+ a2*x^2+...+an*x^n, if Y is vector - [a0,a1,a2,...,an] and X it var x;
PI = 3.141592653589793;
EXP = 2.718281828459045;
'+', '-' - in PCalc not the operator, this mean the sign of number;
The following operators is available:
'X..Y' - operator created iteration vector(is analog of function fvector(X,1,Y));
'^' - operator power in a degree;
'~' - operator root a degree(X~n);
'|', '&', '==', '!=', '>', '=', '
CSC PCalc keywords:
This program is no longer available for download from our website. Please contact the author of CSC PCalc at firstname.lastname@example.org for any additional information.