Xcas
Template:Short description Template:Use dmy dates Template:Use list-defined references Template:Infobox software



Xcas is a user interface to Giac, which is an open source[1] computer algebra system (CAS) for Windows, macOS and Linux among many other platforms. Xcas is written in C++.[2] Giac can be used directly inside software written in C++.
Xcas has compatibility modes with many popular algebra systems like WolframAlpha,[3] Mathematica,[4] Maple,[5] or MuPAD. Users can use Giac/Xcas to develop formal algorithms or use it in other software. Giac is used in SageMath[3] for calculus operations. Among other things, Xcas can solve differential equations (Figure 3) and draw graphs. There is a forum for questions about Xcas.[6]
CmathOOoCAS, an OpenOffice.org plugin which allows formal calculation in Calc spreadsheet and Writer word processing, uses Giac to perform calculations.[7]
Features
Here is a brief overview of what Xcas is able to do:[8][9]
- Xcas has the ability of a scientific calculator that provides show input and writes pretty print
- Xcas also works as a spreadsheet;[10]
- computer algebra;
- 2D geometry in the plane;[11]
- 3D geometry in space;[11]
- spreadsheet;[10]
- statistics;
- regression (exponential, linear, logarithmic, logistic, polynomial, power)
- programming;[12]
- solve equations even with complex roots (Figure 2);
- solving trigonometric equations
- solve differential equations[13][14] (Figure 3);
- draw graphs;
- calculate differential (or derivative) of functions (Figure 2);
- calculate antiderivative of functions (Figure 2);
- calculate area and integral calculus;
- linear algebra[15]
Example Xcas commands:
- produce mixed fractions:
propfrac(42/15)gives 2 + Template:Sfrac - 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 Template:Math - calculate average:
mean([3, 4, 2])is 3 - calculate variance:
variance([3, 4, 2])is Template:Sfrac - calculate standard deviation:
stddev([3, 4, 2])is Template:Sfrac - calculate determinant of a matrix: Template:Code is Template:Val
- 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 Template:Math - 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 definite integral (also called solid of revolution) - finding volume by rotation (around the x-axis):
int(pi*function^2,x,lowerlimit,upperlimit) - calculate definite integral (also called solid of revolution) - finding volume by rotation (around the y-axis) for a decreasing function:
int(2*pi*x*function,x,lowerlimit,upperlimit)
- calculate definite integral (also called solid of revolution) - finding volume by rotation (around the x-axis):
- separation of variables:
split((x+1)*(y-2),[x,y])produces Template:Tmath - desolve differential equation (the derivatives are written as yTemplate:Prime or yTemplate:Pprime):
desolve(differential equation,y)
Supported operating systems
- Microsoft Windows[16]
- Apple macOS[17]
- Linux/Unix[18][19]
- FreeBSD[20]
- Android[21]
- iOS (paid version)
- Online[22]
History
Xcas and Giac are open-source projects developed and written by Template:Ill and Renée De Graeve at the former Joseph Fourier University of Grenoble (now the Grenoble Alpes University),[23] France since 2000.[24] Xcas and Giac are based on experiences gained with Parisse's former project Erable.[25] 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, the mathematical software Xcas was also integrated into GeoGebra's CAS view.[26]
Use in education
Since 2015, Xcas is used in the French education system.[27][28][29][30] Xcas is also[31] used in German[32] universities,[33][34] and in Spain and Mexico.[35] It is also used at the University of North Carolina Wilmington[36] and the University of New Mexico.[37] Xcas is used in particular for learning algebra.[38]
χCAS
There is a port of Giac/Xcas for Casio graphing calculators fx-CG10, fx-CG20, fx-CG50, fx-9750GIII and fx-9860GIII, called χCAS (KhiCAS). These calculators do not have their own computer algebra system. It is also available for TI Nspire CX, CX-II, and Numworks N0110[39]
See also
References
Further reading
- Template:Cite web
- Parisse, Bernard (2007): "Symbolic algebra and Mathematics with Xcas" (list of commands) (PDF). Retrieved 2022-06-08.
- Parisse, B., University of Grenoble (January, 2016) "Giac/Xcas and Pari/GP" (PDF). Retrieved 2022-06-08.
- Template:Cite web
- Verlinden, Olivier (2013): "Symbolic generation of the kinematics of multibody systems in EasyDyn: From MuPAD to Xcas/Giac.". Retrieved 2022-06-08.
- Commandes XCAS (French)
- Les principales fonctions de XCAS en calcul formel pour le lycée(French)
- Barnard Parisse: Mathématiques avec Xcas. (French)
- Les Maths et Mes Tics Template:Webarchive (French)
- Fabian Reimers (editor): "Computeralgebra-Rundbrief Nr. 62: Fachgruppe Computeralgebra" (PDF). (German)
External links
Template:Computer algebra systems
- ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR1 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR2 - ↑ 3.0 3.1 Cite error: Invalid
<ref>tag; no text was provided for refs namedTõnisson 2017 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR3 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR4 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR5 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR6 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR7 - ↑ Read more commands and features here.
- ↑ 10.0 10.1 Cite error: Invalid
<ref>tag; no text was provided for refs namedreference-card - ↑ 11.0 11.1 Cite error: Invalid
<ref>tag; no text was provided for refs namedGandit2009 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR8 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR9 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR10 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR11 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR12 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs named:0 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR13 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR14 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs named:2 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs named:1 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR15 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR16 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedUniversity of Mons - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR17 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR18 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR19 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR20 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR21 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR22 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedModule 2 - Introduction - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedHalkos - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR23 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR24 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR25 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR26 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR27 - ↑ Cite error: Invalid
<ref>tag; no text was provided for refs namedR28 - ↑ Template:Cite web