Xcas
Computer algebra system
From Wikipedia, the free encyclopedia
Xcas is a user interface to Giac, which is an open source[2] computer algebra system (CAS) for Windows, macOS and Linux among many other platforms. Giac can be used directly inside software written in C++; Xcas itself is written in C++.[3]
| Xcas | |
|---|---|
Xcas 1.5 running on Windows 10 | |
| Developer | Bernard Parisse |
| Initial release | 2000 |
| Stable release | |
| Written in | C++ |
| Operating system | Windows, macOS, Linux, FreeBSD, Android, iOS |
| Type | Computer algebra system (CAS) |
| License | GNU GPL |
| Website | xcas |
| Repository | |
Xcas has compatibility modes with many popular algebra systems like WolframAlpha,[4] Mathematica,[5] Maple,[6] or MuPAD. Users can use Giac/Xcas to develop formal algorithms or use it in other software. Giac is used in SageMath[4] for calculus operations. Among other things, Xcas can solve differential equations (Figure 3) and draw graphs.
Features
Features that Xcas supports include:[7][8]
- showing input and writes pretty print
- spreadsheet calculations[9]
- computer algebra
- 2D and 3D geometry[10]
- statistics
- regression analysis
- programming[11]
- solving equations, including those with complex roots (Figure 2)
- solving trigonometric equations
- solving differential equations[12][13] (Figure 3)
- drawing graphs
- calculating differentials (or derivatives) of functions (Figure 2)
- calculating antiderivatives of functions (Figure 2)
- integral calculus, including calculating area
- linear algebra[14]
Example Xcas commands:
- produce mixed fractions:
propfrac(42/15)gives 2 + 4/5 - calculate square root:
sqrt(4)= 2 - draw a vertical line in coordinate system:
line(x=1)draws the vertical line in the output window - draw graph:
plot(function)(for example,plot(3 * x^2 - 5)produces a plot of y = 3x2 − 5 - calculate average:
mean([3, 4, 2])is 3 - calculate variance:
variance([3, 4, 2])is 2/3 - calculate standard deviation:
stddev([3, 4, 2])is √6/3 - calculate determinant of a matrix:
det([[1,2], [3,4]])is −2 - calculate local extrema of a function:
extrema(-2*cos(x)-cos(x)^2,x)is [0, π] - calculate cross product of two vectors:
cross([1, 2, 3], [4, 3, 2])is [-5, 10, -5] - calculate permutations:
nPr() - calculate combinations:
nCr() - solve equation:
solve(equation,x) - factoring polynomials:
factor(polynomial,x)orcfactor(polynomial,x) - differentiation of function:
diff(function,x) - calculate indefinite integrals/antiderivatives:
int(function,x) - calculate definite integrals/area under the curve of a function:
int(function,x,lowerlimit,upperlimit)- calculate volume of a solid of revolution, revolved around the x-axis:
int(pi*function^2,x,lowerlimit,upperlimit) - finding volume of a solid of revolution (around the y-axis) for a decreasing function:
int(2*pi*x*function,x,lowerlimit,upperlimit)
- calculate volume of a solid of revolution, revolved around the x-axis:
- separation of variables:
split((x+1)*(y-2),[x,y])produces - solve differential equation (derivatives are written as y′ or y″):
desolve(differential equation,y)
Supported operating systems
History
Xcas and Giac are open-source projects developed and written by Bernard Parisse and Renée De Graeve at the former Joseph Fourier University of Grenoble (now the Grenoble Alpes University),[22] France since 2000.[23] Xcas and Giac are based on experiences gained with Parisse's former project Erable.[24] Pocket CAS and CAS Calc P11 utilize Giac.
The system was also chosen by Hewlett-Packard as the CAS for their HP Prime calculator, which utilizes the Giac/Xcas 1.5.0 engine under a dual-license scheme. In 2013, Xcas was also integrated into GeoGebra's CAS view.[25]
Use in education
Since 2015, Xcas is used in the French education system.[26][27][28][29] Xcas is also[30] used in German[31] universities,[32][33] and in Spain and Mexico.[34] It is also used at the University of North Carolina Wilmington[35] and the University of New Mexico.[36] Xcas is used in particular for learning algebra.[37]
χCAS
χCAS (also known as KhiCAS) is a port of Giac/Xcas for certain graphing calculator models that is installed or "sideloaded" as a 3rd party application. (This is as opposed to an officially distributed or supported component of the calculators' OS, as is the case for some HP calculators' Χcas integration.)
Casio graphing calculators were the first to support χCAS ("KhiCAS"), as a 3rd party CAS engine on the fx-CG Prizm series, including the fx-CG50 and its successor fx-CG100. Outside of the Prizm series, select models in the Casio 9860 series are supported as well, including the fx-9750GIII and fx-9860GIII. None of these models have their own computer algebra system.
χCAS is also available for the TI Nspire CX, CX-II, and Numworks N0110.[38]
In 2024, a special cut-down version was released for the TI-84+ CE and some variants from Texas Instruments.[39] Other models that χCAS supports bear 32-bit systems, standing in contrast to the TI-84+ CE's much older 8-bit Zilog Z80-based CPU. These comparatively limited hardware resources necessitated the removal of some features to make the port possible.[40] While Casio and NumWorks graphing calculators are not uncommon in France, from where χCAS author Bernard Parisse hails, TI-84+ CE support makes χCAS much more relevant in the United States, where Texas Instruments holds a monopoly[41] on graphing calculators used in education.