χ\chiCAS(io)

内容

请向卡西欧请求为FXCG50的继任者保留第三方插件: 美国联系表单全球链接
卡西欧将在2024年在法国推出一款新的彩色计算器Graph Math+,其国际版(FXCG100)预计将在2025年作为FXCG50的继任者发布。目前的操作系统(版本1)不支持插件,因此KhiCAS和其他插件现在在Graph Math+上不可用,因此可能在FXCG100上也不可用。卡西欧宣布他们的操作系统版本2将在2025年发布,但没有明确其对第三方插件的立场。也许最终决定尚未做出,争取在版本2中加入插件还不算太晚。如果您希望在您的卡西欧计算器上使用KhiCAS和其他插件,请联系卡西欧(见上面的链接)并告诉他们您的意见。现在就行动!如果足够多的人现在采取行动,我们可能会胜出,因为我们人多:自2024年1月以来,这份文件已被超过13,000人阅读,我预计今年将被超过20,000人阅读。
B. Parisse, 2024年7月3日。

内容

摘要:

本文档解释了如何在一些卡西欧计算器(CG10、CG20、CG50 和 Fx-9750GIII、Fx-9860GIII)上高效运行 χ\chiCAS。χ\chiCAS 是 Giac/Xcas 计算机代数系统(CAS)在这些计算器上的移植。

本文档是交互式的,您可以通过点击确认按钮或按 Enter 键来修改和运行命令。

1  介绍与安装

χ\chiCAS 是 Giac/Xcas 计算机代数系统 (CAS) 的一个移植版本,适用于以下 Casio 计算器:CG10、CG20、CG50 和 Fx-9750GIII、Fx-9860GIII。请注意:

  • 在某些国家,考试期间不允许使用CAS,用户有责任在使用前检查相关规则
χ\chi
CAS 在考试中。作者不对误用负责。
χ\chi
考试条件下的CAS。
  • χ\chi

CAS与考试模式不兼容

在允许使用CAS计算器的国家,没有理由禁止χ\chiCAS。如果许多教师向卡西欧发送邮件请求χ\chiCAS兼容性,我们就增加了卡西欧签署插件并使其与考试模式兼容的机会。

CG50 有两个版本,一个是与 CG10 和 CG20 相同的轻量版(在一个文件中),另一个是更完整的版本,分为两个文件。更完整的版本包含更多的 Xcas 命令(如几何命令)、一个 3D 渲染引擎、一些额外的应用程序(如正式电子表格或财务应用程序)以及一个 MicroPython 1.12 的移植版,模块数量比 Casio 移植的 MicroPython 1.09 更多,参见第 11 节。

要安装或更新 χ\chiCAS,请在您的计算机上操作

连接计算器的USB电缆,按F1进行USB密钥连接,然后将文件khicas50.g3akhicas50.ac2khicasen.g3akhicasen.g1a复制到计算器USB-“密钥”上,然后从计算机上断开计算器密钥,等待几秒钟。

如果您想永久删除 χ\chiCAS:从主卡西欧菜单(MENU)中,选择内存应用程序,然后按 F2(存储),选择 khicas50.g3akhicas50.ac2khicasen.g3akhicasen.g1a(光标键然后按 F1),然后按 F6 删除所选文件。

如果您只是想暂时禁用 χ\chiCAS,例如在考试中不允许使用 CAS,请将计算器连接到 PC,然后将 g3ag1a 文件重命名为其他扩展名。然后在考试结束后,将计算器连接到 PC,再次将其重命名为 g3ag1a 扩展名。

注意:一些用户报告在 OS 3.80.0(fx-CG50 上为 03.80.0202,fx-CG50AU 上为 03.80.1202,Graph 90+E 上为 03.80.2202)上使用插件时发生崩溃。如果您遇到崩溃,首先请升级到 OS 3.80.1 WindowsMac。如果仍然无法正常工作,您始终可以降级到 版本 3.70。由于通常的降级过程不被允许,您需要执行以下操作(感谢 critor,TI-Planet):

  1. 按住重启按钮和键 F2、4 和 AC
  2. 在保持 F2、4 和 AC 按下的同时释放重启按钮
  3. 释放键 F2 和 4
  4. 等待一秒
  5. 释放 AC 键
  6. 按下键 9,等待一秒,释放键 9
  7. 按住键 *
  8. 计算器应该在 "OS ERROR" 屏幕上启动,释放 * 键
  9. 运行 3.70 安装软件

如果您在模拟器上测试, (PC, Mac),从计算器的主菜单 (MENU) 中,进入内存,然后按 F3 (导入/导出),接着按 F1 (导入文件),选择文件 khicasen.g3a (或 khicasen.g1a),按 F1 保存到计算器根目录,如果您升级,请按 F1 确认。

请耐心等待,转移将需要几分钟。一旦转移完成,您应该在主菜单中看到 Xcas 的图标(CG10/20/50 上的雪花)。

如果您想运行 CG50 的完整版本,请用这两个文件替换上面的文件 khicas50.882emucas50.g3a

请注意,χ\chiCAS与某些国家通过USB密钥分发的卡西欧模拟器不兼容,您必须运行模拟器。安装后,可以通过以下命令在Linux下使用wine运行Windows版本的模拟器
wine "C:\Program Files (x86)\CASIO\fx-CG Manager PLUS Subscription for fx-CG50series\fx-CG_Manager_PLUS_Subscription_for_fx-CG50series.exe" /n"fx-CG Manager PLUS Subscription for fx-CG50series" &

2  第一步

从主菜单(MENU)中,将光标移动到 Xcas 图标上并按下 EXE。这将打开“shell”(或历史记录),您可以在其中编写大多数 Xcas 命令。

如果您正在运行 2 个文件版本并看到消息 “无法加载 RAM 部分”,请升级您的计算器操作系统(版本 3.30 或更高)。

例如,输入 1/2+1/6 然后按 EXE,你应该会看到结果 2/3 显示在下面。

提示:如果您在计算器键盘上找不到字符,请按 Shift + INS。

您可以通过按上箭头和下箭头键(一次或多次)以及 EXE 来从命令历史中复制一个级别。然后您可以修改命令并使用 EXE 运行它。例如,上箭头两次,EXE,将 1/6 替换为 1/3 然后按 EXE。

最后的结果存储在 ans() 中,按下 Ans 计算器键(shift (-))以获取它。如果您想稍后重用结果,建议将结果存储在变量中。有两种方法可以将值存储在变量中。

  • 右存储使用 =>,通过 →\rightarrow 键,例如 2=>A 将 2 存储在变量 A 中。现在,每次在计算中写 A 时,它将被替换为 2。
  • 左存储使用 :=(shift →\rightarrow),例如 A:=2 的效果与 2=>A 相同。

最受欢迎的 Xcas 命令可以通过 F1 (代数) 和 F2 (微积分) 获得,也可以通过各种快捷方式 (参见 9),或者通过 cmds (F4) 或 shift CATALOG 获取,在那里它们会用一个示例简要解释。按 F4 (cmds),选择一个子菜单,例如 Algebra,按 EXE,将选择移动到一个命令,例如 factor。现在 F6 将显示一个带有示例的简短帮助。按 F2 将示例复制到命令行。您可以直接运行它 (EXE),或者如果您想要因式分解另一个多项式,可以修改后再运行 (EXE)。

当一个命令返回一个表达式时,它以二维模式显示。如果表达式大于显示屏,可以使用方向键移动。按 shift-F3 或 ALPHA-F3 来修改字体大小。输入 EXIT 返回到命令行。二维视图实际上是一个二维编辑器,稍后会进行解释。

现在,尝试输入命令 plot(sin(x))。提示:输入 F4(命令),然后选择 Graphs

当一个命令返回一个图形时,它将显示在一个二维框架中。您可以使用 +- 修改显示区域(放大或缩小,(-) 沿 OyOy 进行部分缩小),光标键,/(框架的正交化),*(自动缩放),VAR 或 OPTN 是一个开关,用于显示或隐藏轴。输入 F1(菜单)以修改图形窗口设置 Xmin, Xmax, Ymin, Ymax。输入 EXIT 返回到 shell。

KhiCAS 文件菜单 (F6) 有一个项目 清除,将会清除显示。这不会清除变量,要实现这一点,请输入 VARS,选择最后一个项目 (重启) 并确认 EXE。

按 MENU 退出 χ\chiCAS。如果您启动另一个应用程序,变量和历史记录将被保存,如果您返回 χ\chiCAS,它们将被恢复。第一次保存有时较慢(10 到 20 秒),下次保存将更快。

3  常见的CAS命令

从 F4 命令目录中,选择 代数,或按 F1。

  • factor : 因式分解。快捷键 =>* (→\rightarrow 键然后 *),例如
    x^4-1=>*
    . 运行 cfactor 在 C\C 上进行因式分解。
  • partfrac : 展开多项式或对分数进行部分分式展开。快捷键 =>+ (→\rightarrow 然后 + 键),例如
    (x+1)^4=>+ 或 1/(x^4-1)=>+
    .
  • simplify : 尝试简化一个表达式。快捷键 =>/ (→\rightarrow 键然后 /),例如
    sin(3x)/sin(x)=>/
  • ratnormal : 重写为不可约分的分数。

从 F4 命令目录中,选择 Calculus,或输入 F2

  • diff : 导数。快捷方式 ' 表示相对于 xx 的导数,例如
    diff(sin(x),x) 和 sin(x)
    是等价的。对于 nn 阶导数,添加 nn,例如 3 阶导数
    diff(sin(x^2),x,3)
    .
  • integrate : 不定积分(1 或 2 或 4 个参数),例如
    integrate(sin(x)) 或 integrate(1/(t^4-1),t)
    对于 ∫1t 4−1dt\int \frac{1}{t^4-1} \ dt 定义的 4 个参数的积分,例如 integrate(sin(x)^4,x,0,pi)
    计算 ∫ 0 πsin(x) 4dx\int _0^\pi \sin(x)^4 \ dx。对于近似计算,输入一个边界作为近似数,例如
    integrate(sin(x)^4,x,0.0,pi)
  • limit : 表达式的极限。示例
    limit((cos(x)-1)/x^2,x=0)
  • tabvar : 表达式的变体表。例如
    tabvar(x^3-7x+5)
    可以通过图形检查 plot(x^3-7x+5,x,-4,4)
  • taylorseries : 泰勒展开或渐近级数展开,例如 taylor(sin(x),x=0,5)
如果您不想要余项,请添加 `polynomial`。
  • sum : 离散求和,例如
    sum(k^2,k,1,n)
    计算 ∑ k ext{=1}^n k^2,
    sum(k^2,k,1,n)=>*
    计算总和并重写为因式分解形式。

从 F4 命令目录中,选择 Solve

  • solve 精确地求解一个方程。将要解的变量作为第二个参数,除非它是 x,例如
    solve(t^2-1=0,t) .

如果精确求解失败,请运行 fsolve 进行近似求解,可以使用从猜测开始的迭代方法

fsolve(cos(x)=x,x=0.0) , 或通过二分法 fsolve(cos(x)=x,x=0..1) .
对于复杂解,请运行 `csolve`.
可以通过对变量的假设来限制解,例如 assume(m>1) 然后 solve(m^2-4=0,m)  
.
  • solve 也可以解决(简单的)多项式系统,将方程列表作为第一个参数,将变量列表作为第二个参数,例如圆和直线的交点:
    solve([x^2+y^2+2y=3,x+y=1],[x,y])
  • 运行 linsolve 来求解线性系统。将方程列表作为第一个参数,变量列表作为第二个参数,例如:
    linsolve( [x+2y=3,x-y=7], [x,y])
  • 运行 desolve 来精确求解微分方程。例如,要解 y′=2y,输入 desolve(y'=2y)。另一个带有初始条件的例子:
`desolve([y'=2y,y(0)=1],x,y)`
运行 `odesolve` 进行近似求解或 `plotode` 进行近似解的图形表示。  
  • rsolve 解决一些递归关系 u n+1=f(u n,...)u_{n+1}=f(u_n,...),例如解决算术几何递归 u n+1=2u n+3,u 0=1u_{n+1}=2u_n+3, u_0=1,输入:
    rsolve(u(n+1)=2*u(n)+3,u(n),u(0)=1)

在需要时,整数运算和多项式运算之间的区别通过整数命令前缀 i 来表示。例如,ifactor 用于整数因式分解,而 factor 用于多项式因式分解(或 cfactor 用于 C\C 上的多项式因式分解)。一些命令适用于整数和多项式,例如 gcdlcm

从 F4 目录中,选择 算术,密码学。快捷键 shift S↔\leftrightarrowD

  • iquo(a,b)irem(a,b) 是两个整数的欧几里得除法的商和余数。iquo(23,13),irem(23,13)
  • isprime(n) 检查 nn 是否为素数。这是一个针对大值 nn 的概率性测试。
    isprime(2^64+1)
  • ifactor(n) 对一个整数进行因式分解(不能太大,因为使用的算法是试除法和 Pollard-ρ\rho,内存中没有空间用于二次筛法),例如
    ifactor(2^64+1)
快捷方式 →\rightarrow 然后 \* (`=>*`)
  • gcd(a,b)lcm(a,b) 两个整数或多项式的 GCD 和 LCM。gcd(25,15),lcm(25,15) gcd(x^3-1,x^2-1),lcm(x^3-1,x^2-1)
  • iegcd(a,b) 返回 3 个整数 u,v,du,v,d,使得 au+bv=d,其中 d 是 aa 和 bb 的 GCD,|u|<|b|,|u|<|b|,且 |v|<|a|,|v|<|a|。 u,v,d:=iegcd(23,13); 23u+13v
  • ichinrem([a,m],[b,n]) 返回(如果可能的话)cc,使得 c=a(modm)c=a \pmod m 和 c=b(modn)c=b \pmod n(如果 mm 和 nn 互质,cc 存在)。
    c,n:=ichinrem([1,23],[2,13]); irem(c,23); irem(c,13)
  • powmod(a,n,m) 返回 a n(modm)a^n \pmod m 通过快速模幂算法计算 powmod(7,22,23)
  • asc 将字符串转换为 ASCII 代码列表,char 将列表转换回字符串。这些命令可以用来轻松编写带有字符串消息的加密算法。

从 F4 目录中选择 多项式。默认变量是 xx,否则您可以将其指定为最后一个可选参数。例如 degree(x^2*y)degree(x^2*y,x) 返回 2,degree(x^2*y,y) 返回 1。

  • coeff(P,n) 在 PP 中 x nx^n 的系数,lcoeff(P) PP 的首项系数,例如
    P:=x^3+3x; coeff(P,1); lcoeff(P)
  • degre(P) 多项式 PP 的度 degree(x^3)
  • quo(P,Q)rem(P,Q)P 除以 Q 的欧几里得除法的商和余数
    P:=x^3+7x-5; Q:=x^2+x; quo(P,Q); rem(P,Q)
  • proot(P) : PP 的近似根(所有根,实根和复根)
    proot(x^5+x+1) 图形表示point(proot(x^5+x+1))
  • interp(X,Y) : 对于两个相同大小的列表,返回插值多项式 PP,使得 P(X i)=Y i。 X,Y:=[0,1,2,3],[1,-3,-2,0]; P:=interp(X,Y)=>+ 图形表示散点图(X,Y); plot(P,x,-1,4)
  • resultant(P,Q) : 多项式 PP 和 QQ 的结果 P:=x^3+7x-5; Q:=x^2+x; resultant(P,Q)
  • hermite(x,n) : nn-阶 Hermite 多项式 (在 R\R 上对密度 e −x 2dxe^{-x^2}dx 正交)
  • laguerre(x,n,a) : nn-阶 Laguerre 多项式
  • legendre(x,n) : nn-阶 Legendre 多项式 (在 [−1,1] 上对密度 dxdx 正交)
  • tchebyshev1(n)tchebyshev2(n) Tchebyshev 多项式的第一类和第二类定义为: T n(cos(x)) =cos(nx),U n(cos(x))sin(x)=sin((n+1)x)T_n(\cos(x))=\cos(nx), \quad U_n(\cos(x))\sin(x)=\sin((n+1)x)

Xcas 不区分向量和列表。例如,

v:=[1,2]; w:=[3,4]

onload
定义了 2 个向量 vv 和 ww,然后 dot 将计算 vv 和 ww 的标量积: dot(v,w)

矩阵是相同大小的列表的列表。您可以使用矩阵编辑器(shift-MATR EXE 或 F6 0)逐个输入矩阵元素。输入一个新变量名以创建一个新矩阵,或输入一个现有变量的名称以编辑一个矩阵。可以使用 , 键插入一行或一列,DEL 键可以删除所选的行或列(如果您想退回一步,请按 UNDO)。对于小矩阵,直接在命令行中输入它们也是方便的,例如定义 A=(1 2 3 4)A=\left(\begin{array}{cc} 1 & 2 \ 3 & 4 \end{array}\right) 类型

A:=[[1,2],[3,4]]

onload 或 [[1,2],[3,4]]=>A
建议将矩阵存储在变量中!

如果一个矩阵是通过公式定义的,那么最好使用 matrix 命令 (shift-MATR EXE AC),例如:
matrix(2,2,(j,k)->1/(j+k+1))
返回的矩阵中,系数行 jj 和列 kk 是 \frac{1}{j+k+1} (注意,索引从 0 开始)。

运行 idn(n) 获取阶数为 nn 的单位矩阵,运行 ranm(n,m,law,[parameter]) 获取一个维度为 n,mn,m 的随机系数矩阵。例如
U:=ranm(4,4,uniformd,0,1) N:=ranm(4,4,normald,0,1)

对于矩阵的基本算术运算,请使用键盘运算符(+ - *,逆)。否则,请打开目录并选择 Matrices

  • eigenvals(A) eigenvects(A)
    矩阵AA的特征值和特征向量。
  • P,D:=jordan(A)
    找到矩阵AA的Jordan标准形,返回矩阵PP和DD,使得P −1AP=DP^{-1}AP=D,其中DD为上三角矩阵(如果AA是可对角化的,则为对角矩阵)
  • Ak:=matpow(A,k)
    计算矩阵AA的kk次方,其中kk为符号。
  • rref: 行简化为阶梯形
  • lu: 矩阵AA的LU分解,返回一个置换PP和两个矩阵LL(下三角)和UU(上三角),使得PA=LU。P,L,U:=lu(A)的结果可以作为参数传递给命令linsolve(P,L,U,v)
    通过解决两个三角系统来解决系统Ax=bAx=b(在O(n^2)而不是O(n^3)的时间复杂度下)。
  • qr 矩阵AA的QR分解,QQ是正交的,RR是上三角的,A=QR。
  • svd(A) 矩阵AA的奇异值分解返回UU正交,SS为奇异值向量,QQ正交,使得A=U*diag(S)*tran(Q)
    SS中最大和最小奇异值的比率是矩阵AA相对于欧几里得范数的条件数。

4 概率与统计

从 F4 目录中,选择 Probabilities 然后 rand()
(real in [0,1)[0,1)) 或 n:=6:; randint(n)
(integer between 1 and nn)。其他以 rand 为前缀的命令可用,后面跟着法律的名称,例如 randbinomial(n,p) 根据参数 n,p 的二项分布返回一个随机整数。对于随机向量或矩阵,运行 ranvranm(来自 Alglin, Matrice 子菜单),例如对于一个根据正态分布(均值 0,标准差 1)生成的 10 个随机实数的向量,输入 ranv(10,normald,0,1)

从 F4 目录中,选择 Probabilities (8)。在那里你会找到一些分布法则:binomialnormaldexponentialduniformd。其他分布必须手动输入:chisquaredgeometricmultinomialstudentdfisherdpoisson

要获取累积分布函数,请输入法律名称,然后加上 _cdf 后缀(快捷方式:在最后的目录中选择 cdf 并按 F1)。逆累积分布函数遵循相同的原则,使用 _icdf 后缀(快捷方式:在目录中选择 cdf 并按 F2)。

示例:找到均值为5000、标准差为200的正态分布的中心区间II,使得在II之外的概率为5% M:=5000; S:=200; normald extunderscore icdf(M,S,0.025);normald extunderscore icdf(M,S,0.975)

统计函数将列表作为参数,例如

l:=[9,11,6,13,17,10]

onload
从 F4 目录中选择 统计:

  • mean(l)
     : 一组数据的算术平均数
  • stddev(l)  : 一组数据的标准差。
stddevp(l)  
从样本 `l` 获取总体标准差的无偏估计  
  • median(l)
    , quartile1(l)
    , quartile3(l)
    分别返回列表的中位数、第一四分位数和第三四分位数。

对于具有频率的一维统计,将 l 替换为两个相同长度的列表,第一个列表为系列的值,第二个列表为频率。对于图形表示,打开目录,选择 Graphic 并选择 histogrambarplot

从 F4 目录中选择 统计:

  • correlation(X,Y): 两个相同长度的列表 XX 和 YY 的相关性。
  • covariance(X,Y):: 两个相同长度的列表 XX 和 YY 的协方差。
  • 回归计算: 运行后缀为 _regression(X,Y) 的命令,例如 linear_regression(X,Y) 返回线性回归线 y=mx+p 的系数 m,pm,p。
  • linear_regression_plot(X,Y) 和所有后缀为 _regression_plot 的命令将显示回归的线(或曲线)。这些命令还将打印 R 2R^2 系数,提供关于调整质量的信息(R 2R^2 接近 1 是好的)。

5  图形

从 F4 目录中选择 Graphics(或输入绘图快捷键 F3),然后选择一个图形命令。如果您想在同一图形上显示多条曲线,请输入多个命令,使用 ; 作为分隔符。

  • plot(f(x),x=a..b) 绘制表达式 f(x)f(x) 对于 x∈[a,b]x\in [a,b]。离散化选项:xstep=,例如 plot(x^2,x=-4..4,xstep=1)
    默认每个图有 384 次评估(每个水平像素一个)。
  • plotseq(f(x),x=[u0,a,b]) webplot 用于递归序列 u n+1=f(u n)u_{n+1}=f(u_n) 的首项 u 0u_0,例如如果 u n+1=2+u n,u 0=6u_{n+1}=\sqrt{2+u_n}, u_0=6,绘制在 [0,7][0,7] 上 plotseq(sqrt(2+x),x=[6,0,7])
  • plotparam([x(t),y(t)],t=tm..tM) 参数图 (x(t),y(t))(x(t),y(t)) 对于 t∈[t m,t M]t\in [t_m,t_M]。离散化选项: tstep=。示例 plotparam([sin(2t),cos(3t)],t,0,2*pi)
  • plotpolar(r(θ),θ=a..b) r(θ) 的极坐标图,θ∈[a,b],例如 plotpolar(sin(3θ),θ,0,2pi)
  • plotlist(l): 绘制一个列表 l,即绘制一个具有顶点 (i,l i)(i,l_i) 的多边形线(索引 ii 从 0 开始)。
    plotlist([X1,Y1],[X2,Y2],...) 具有坐标点 (X i,Y i)(X_i,Y_i) 的多边形线
  • scatterplot(X,Y)polygonscatterplot(X,Y) 对于两个相同大小的列表 X,Y,绘制点或具有顶点 (X i,Y i)(X_i,Y_i) 的多边形线
  • histogram(l,class_min,class_size) 绘制数据 l 的直方图,类别大小为 class_size,第一类从 class_min 开始。示例:检查随机生成器的质量
    l:=ranv(500,normald,0,1); histogram(l,-4,0.25); plot(normald(x),x,-4,4)
  • plotcontour(f(x,y),[x=xmin..xmax,y=ymin..ymax],[l0,l1,...]) 绘制隐式曲线 f(x,y) =l 0,f(x,y) =l 1,...f(x,y)=l _0, f(x,y)=l _1,....
  • plotfield(f(t,y),[t=tmin..tmax,y=ymin..ymax]) 绘制微分方程 y′ =f(t,y)y'=f(t,y) 的切线场。添加可选的最后一个参数 ,plotode=[t0,y0] 以同时绘制初始条件 y(t 0) =y 0y(t _0)=y _0 的解。示例 y′ =sin(ty)y'=\sin(ty) 对于 t∈[-3,3]t \in [-3,3] 和 y∈[-2,2]y \in [-2,2]
    plotfield(sin(t*y),[t=-3..3,y=-3..3],plotode=[0,1])
    注意: plotode 可以在 plotfield 之外使用。
  • 对于同时绘图,写命令用 ; 分隔。

如果一个命令返回一个曲线的弧,FXCG50的插件默认在两个部分中激活追踪模式,或在单色模型的插件中激活。在此模式下,按左键或右键将移动指针在活动曲线的弧上,并显示指针坐标(以及参数曲线的参数值)和切向量(速度)。如果有多个曲线,按上或下键可以更改活动曲线。按F2获取活动曲线的信息,然后按EXE查看值的表格。

从 F1 菜单中,如果您选择曲线研究项目(快捷键 x,θ,tx,\theta,t 键),您可以添加一个指向曲率中心的法向量 (F4),和/或切线圆及曲率半径。在曲线研究菜单中,您还可以将指针移动到一个位置,或到一个显著点:根、水平或垂直切线、拐点、与另一条曲线弧的交点(仅限于单色 Casio 上函数图形的交点)。您还可以计算指针和标记之间的弧长或曲线下的面积。

当曲线处于活动状态时,变量 X0,X1,X2,Y0,Y1,Y2 被设置为位置、速度和加速度的表达式。当你搜索根、水平切线、拐点、弧长或曲线下的面积时,变量被设置为最后的值。

要显示选项,请按 OPTN 键:

  • display=color 颜色选项:选择一种颜色然后按 F2,例如 plot(sin(x),display=red)
  • display=line_width_2display=line_width_8: 更改段的宽度(包括用于绘制曲线的多边形线内部)。同时显示选项应使用 + 添加。例如 display=red+line_width_2
  • 边缘与坐标轴平行的圆和矩形可以使用 display=filled 填充(此属性可能会添加到其他属性中)
  • 如果您想定义显示窗口(覆盖自动缩放计算),选择 gl_x 或/和 gl_y 并添加一个 xx 或 yy 区间,例如 gl_x=-2..2;gl_y=-1..4;plot(exp(x))
    注意 gl_ 命令必须在绘图命令之前。
  • 如果您想移除坐标轴,选择 axes 并按 F2 (axes=0)。与 gl_ 命令一样,axes=0 必须在绘图命令之前。当图形屏幕显示时,可以通过按 SIN 交互式地移除坐标轴。

6  程序

您可以使用类似 Xcas 的语法(英语或法语)或使用类似 Python 的语法进行编程。

示例 : 由代数表达式定义的函数 nom_fonction(parametres):=expression 例如在大小为 NN 的样本中频率 pp 的简单置信区间
F(P,N):= [P-1/sqrt(N),P+1/sqrt(N)]

测试

F(0.4,30)

第二个例子 : 更精确的置信区间对于样本大小 NN 中的频率 pp :
f(P,N):= [P-1.96sqrt(P(1-P)/N),P+1.96sqrt(P(1-P)/N)]
为了避免重复计算相同的量,可以插入一个局部变量。命令行不太适合编写这些类型的函数。对于非代数函数,最好运行程序编辑器。按 F6,选择脚本编辑器,如果编辑器不为空则清空编辑器 (F6 清空) 并在测试 (F1)、循环 (F2) 的帮助下输入以下程序,使用 Xcas 语法:function f(P,N) local D; D:=1.96sqrt(P(1-P)/N); return [P-D,P+D]; ffunction;

或在 Python 语法中:

def f(P,N): D=1.96sqrt(P(1-P)/N) return [P-D,P+D] 输入 EXE 检查语法。一旦程序正确,保存它 (F6 2),然后输入 EXIT。现在你可以像这样从命令行调用你的程序

f(0.5,30)

第三个例子 : 一个循环打印从 1 到 nn 的整数平方,使用 Python 语法。检查 F6 或 shift-SETUP 菜单中是否启用了 Python 语法,如果没有勾选,请勾选。打开 F6 脚本编辑器,如果有旧的脚本源,请清除它 (F6 清除)。从 F2 选择 f(x):= (或从 F4,程序,函数定义),你应该得到 def f(x):。将 x 替换为 n (按 F5 锁定键盘为小写字母),移动到行末并按 shift-EXE 输入换行。输入 Shift-PRGM 然后 3 for,接着 F5 J 空格 alpha,然后 Shift-PRGM 然后 6 in range(a,b)。输入 1,n+1) 然后 F1 (:)。输入 shift-EXE 插入换行,然后 Alpha SPACE,F4 (Cmds),EXE (1 All),P,R 用光标选择 print 然后输入 EXE,输入 j,j^2) 然后 EXE。

def f(n): for j in range(1,n+1): print(j,j^2)

在 Xcas 中 ^ 表示幂,** 也可以像在 Python 中一样使用。

现在,输入 EXE(或 F6,选择 1. 检查语法)。如果语法正确,您将在状态行中看到 成功。否则,将显示第一个错误行号和标记,光标将定位在检测到错误的行上。请注意,错误可能在此行之前,但仅在稍后被检测到。还要注意,如果您使用 Python 语法兼容性,编程结构会被翻译成 Xcas,错误在翻译后显示,因此您可能会看到像 end 这样的标记错误,这是翻译器添加的。

如果程序是正确的,您可以通过 F6 菜单(保存或另存为)来保存它。您可以通过按 EXIT 从命令行运行它,例如 f(10) 应该显示从 1 到 10 的所有平方。

海龟是学习编程的好方法。海龟是一个小机器人,你可以移动它,它握着一支笔来标记它的路径。按 F6,脚本编辑器,然后按 F6 清除。按 shift-QUIT 选择 efface,这意味着清除屏幕。你可以使用 shift-QUIT 访问海龟命令(将光标移动到一个命令上并按 F6 获取帮助)。例如,尝试 avance(向前)。检查语法(EXE)将显示海龟窗口的移动。你可以在脚本中输入多个移动,并将它们组织在测试、循环和函数中。例如:

function square(n) repete(4,avance n,tourne_gauche); ffunction:;

清除; 从 n = 1 到 10 进行 平方(10*n); 结束;

另一个非代数函数的例子:计算两个整数的最大公约数的欧几里得算法。按 shift-EXE 插入换行。! 在子菜单 Programmation_cmds 中(11,快捷键 X,θ,TX,\theta,T)或在测试 F1 菜单中。Xcas 语法

function pgcd(a,b) while b!=0 do a,b:=b,irem(a,b); od; return a; ffunction

Python 语法

def pgcd(a,b): while b!=0: a,b=b,a % b return a

检查 pgcd(12345,3425)

如果您的程序有运行时错误,或者您想逐步查看它的运行,可以对其运行 debug,例如
debug(pgcd(12345,3425))

与计算器制造商(包括卡西欧)对 Micro-Python 的改编不同,Xcas 中的 Python 语法是完全集成的。因此,您可以在程序中使用所有 Xcas 命令和数据类型。这大致相当于导入 Python 模块 mathcmathrandomscipynumpyturtlegiacpy。还有一小组像素化图形命令集(set_pixel(x,y,c)set_pixel() 用于同步显示、clearscreen()draw_line(x1,y1,x2,y2,c)draw_polygon([[x1,y1],[x2,y2],...],c)draw_rectangle(x,y,w,h,c)draw_circle(x,y,r,c),颜色+宽度+填充的 c 参数是可选的,draw_arc(x,y,rx,ry,t1,t2,c) 绘制椭圆弧)。您还可以在一定程度上用 χ\chiCAS 的图形命令替代 matplotlibpointlinesegmentcirclebarplothistogram 和所有 ...plot... 命令)。此外,您可以自然地访问像有理数或表达式这样的数据类型,并且可以对它们运行 CAS 命令。计算器上可用命令的完整列表在附录中给出。有关未列入目录类别的命令的文档,请参阅 Xcas 文档。

7  2D 编辑器。

如果计算返回一个表达式,它将在二维表达式编辑器中显示。如果所选级别是一个表达式,或者如果命令行为空或包含一个语法正确的表达式时,按 F3 也会发生这种情况。

一旦 2d 编辑器打开,表达式将以全屏显示,所有或部分表达式被选中。可以对选定内容执行命令(通过菜单或键盘),或在 1d 模式下编辑选定内容。这是一种高效的重写表达式或编辑它们的方法。

示例 1 : 输入 \lim_{x \rightarrow 0} \frac{\sin(x)}{x} 从空命令行中,输入 F3 (查看),你应该看到 0 被选中。输入 x 然后按 EXE,这将用选中的 x 替换 0。输入 SIN,现在 sin(x)\sin(x) 应该被选中。输入除法键(在 - 上方),你应该看到 \frac{\sin(x)}{0},0 被选中,输入 x 然后按 EXE,你现在应该看到 \frac{\sin(x)}{x},x(在分数下方)被选中。输入上箭头键,现在 \frac{\sin(x)}{x} 应该被选中。现在输入 F2 4(用于极限)。表达式准备好评估,输入 EXE 将其复制到命令行,然后再次按 EXE 进行评估。对于 +∞ 的相同极限,在用 EXE 离开 2d 编辑器之前,使用右箭头键移动选择,然后输入 F1 8 (oo) EXE。

示例 2 : ∫ 0 +∞1x 4+1dx\int _0^{+\infty} \frac{1}{x^4+1} \ dx 从一个空命令行,输入 F3 (查看),然后 F2 3 (积分),你应该看到: ∫ 0 10dx\int _0^1 0 \ dx 选择 xx。我们必须修改 1 (上限) 和 0 (被积函数)。按左箭头键,这将选择被积函数 0,输入 1/(x^4+1) EXE,然后左箭头键 F1 8 EXE。再次输入 EXE 以复制到命令行,EXE 再次运行计算,结果将在 2d 编辑器中显示,EXE 将离开 2d 编辑器,积分及其值将保存在历史记录中。

示例 3 : 计算并简化 ∫1x 4+1dx\int \frac{1}{x^4+1} \ dx 从空命令行输入 F3 (查看),然后输入 F2 3 (积分),你应该看到 ∫ 0 10dx\int _0^1 0 \ dx 将选择移动到下限 0 (右箭头键),输入 DEL,你应该看到 ∫0dx\int 0 \ dx 被选中。使用下箭头键,选择 0,输入 1/(x^4+1) EXE,EXE 复制到命令行,EXE 运行计算,结果现在显示在 2d 编辑器中。使用箭头键,选择其中一个反正切,输入 F1 EXE (简化),这将进行部分简化,对第二个反正切做同样的操作。

为了更完整的简化,我们将收集对数。第一步是交换主和中的两个项,以便将对数分组。使用箭头键选择一个对数,然后输入

  • CG10,20,50 : 左移或右移箭头键
  • fx-9860GIII: F5 左或右箭头键,然后按 ALPHA

这将用右侧或左侧的兄弟节点交换选择。现在按 ALPHA 右箭头或左箭头键来扩展选择,添加右侧或左侧的兄弟节点。一旦选择了两个对数项,按 F1 2 EXE(因子),将选择减少到分子,输入 F4 EXE(全部),输入字母 l, n, c,这将移动到目录中以找到第一个以 lnc 开头的命令,选择 lncollect,然后按 EXE 和 F6(评估)。

8  管理会话

使用上下光标键,您可以在历史记录中移动,当前级别以反色显示。

您可以使用 ALPHA-up 和 ALPHA-down 在另一个位置移动一个级别。您可以使用 DEL 键删除一个级别(该级别会被复制到剪贴板)。

您可以使用 F3 或 ALPHA-F3 修改现有级别。使用 F3 时,如果级别是一个表达式,将调用 2D 编辑器;使用 ALPHA-F3 时,级别将在文本(程序)编辑器中编辑。如果您想取消修改,请输入 EXIT;如果您确认修改,请输入 EXE。如果您确认修改,当前级别下方的命令行将自动重新评估。这样,如果您修改了例如 A:=1 的级别,所有依赖于 A 值的下级别将保持最新。如果您想多次这样做,最好使用 F6 参数向导引入一个参数。然后在 assume(...)parameter 级别上按 + 或 - 将修改参数的值(按 * 或 / 以更快移动)。

按 V A R S 查看哪些变量被赋值。选择一个变量名,按 E X E 将其复制到命令行,D E L 将输入删除该变量的命令(确认按 E X E)。restart 将一次性清除所有变量(按 AC/ON 清除历史记录并开始一个全新的会话)。assume 是一个对变量进行假设的命令,例如 assume(x>5)> 可以从 shift-PRGM 菜单访问)。

在计算器上,返回历史记录(如果您在编程编辑器或二维表达式编辑器中,请输入 EXIT)。在 F6 菜单中,您可以在计算器闪存中保存/恢复会话。文件具有 xw 扩展名。它们可以复制到您的计算机(连接计算器,选择 F1 USB 密钥),然后可以使用 Xcas 或 Xcas for Firefox 打开。在 Xcas 中,选择文件菜单,然后打开文件,然后选择所有类型的文件并打开会话文件。从 Xcas for Firefox,按下加载按钮。

相反,您可以从 Xcas 保存一个会话(选择 文件,导出到 Khicas)或从 Firefox 的 Xcas 保存(选择 会话名称右侧的导出)。

9  键盘快捷键。

这些快捷键在 shell 和文本编程编辑器中有效。默认配置如下:

  • shift INS: ASCII字符表
  • F1-F6, shift-F1到shift-F6, alpha-F1到alpha-F6: 请参见屏幕底部的图例
  • OPTN: 颜色选项的快速菜单
  • shift-OPTN: 编程命令
  • VARS: 变量列表
  • shift-PRGM: 编程的快速菜单
  • MENU: 返回主Casio菜单
  • shift-SETUP: 设置
  • EXIT: 从shell切换到编辑器
  • shift-EXIT: 显示logo海龟屏幕
  • ALPHA-EXIT: 如果alpha未锁定,显示最后的2D或3D图形
  • shift angle: 几何的快速菜单
  • fraction: % 在shell中,编辑器中的缩进,强制在电子表格中重新评估表格
  • shift-fraction: shell中多项式算术的快速菜单,编辑器中的补全
  • touche S↔\leftrightarrowD: 额外应用程序(电子表格,财务,...)。在电子表格中,显示表格图形。
  • shift ,: ;
  • shift →\rightarrow: :=: 取决于活动解释器Xcas或Python
  • AC/ON: 取消选择或取消搜索/替换
  • shift CAPTURE: 保存会话或文件
  • shift CLIP: 开始选择或将选择复制到剪贴板
  • shift PASTE: 粘贴剪贴板
  • shift CATALOG: 所有Xcas命令的列表
  • shift FORMAT: 编程命令
  • shift 6: 快速菜单包含 <>_!comb, rand, binomial, normald
  • shift List: 快速列表菜单
  • shift Mat: 快速矩阵菜单
  • shift 3: 快速线性代数菜单
  • shift EXE: 编辑器中的下一行

您可以通过编辑文件 FMENU.py 来修改快速菜单快捷方式。删除 Memory Casio 应用中的文件以重置为默认配置。

  • F1 到 F3 : 取决于模式 (Python/Xcas) 和 shift/alpha 状态,见标签
  • F4: 命令目录。
  • F5: 大写到小写切换。如果 alpha 模式未激活,则将键盘锁定为小写字母。
  • F6: 文件菜单
  • 从 shell 向下光标或从程序编辑器 (G 键) 的 shift 分数键:完成/在线帮助
  • (-) 在文本编辑器中:返回 _ 字符。
  • shift PRGM: 编程命令或字符
  • OPTN: 所有选项
  • shift-QUIT: 海龟命令
  • shift-List: 创建或编辑列表,列表命令
  • shift-Mat: 创建或编辑矩阵,矩阵命令
  • S↔\leftrightarrowD 键: 实数命令
  • 黄色 shift 的 S↔\leftrightarrowD 键: 整数命令
  • 角度键: 复数命令
  • 黄色 shift 的分数: 绘图命令
  • 分数键: 特殊字符/历史中的概率,文本编辑器中的缩进
  • 红色 r 键: abs
  • 红色 θ\theta 键: arg

在编程编辑器

  • shift-cursor 键:移动到行或文件的开始/结束
  • shift CLIP:开始选择。将光标移动到选择的末尾,输入 DEL 删除选择(它将被复制到剪贴板)或再次 shift-CLIP 将选择复制到剪贴板而不删除。输入 AC/ON 取消选择。
  • EXE:如果当前有搜索/替换活动(F6 6),查找下一个单词出现。否则解析/执行。
  • shift EXE:添加换行符。
  • DEL:删除选择或上一个字符(如果没有活动选择)
  • shift PASTE:复制剪贴板
  • Shift-INS(touche DEL):删除当前行并复制到剪贴板
  • AC/ON:取消选择或取消搜索/替换或检查语法(如 F6 1)
  • EXIT:离开文本编辑器回到命令行。再次输入 EXIT 返回文本编辑器。

10  备注

关于颜色模型,您必须先按下 MENU,然后再使用 shift ON 关闭计算器。当您再次按下 ON 时,按 MENU 返回到 KhiCAS。

如果您将颜色模型作为USB磁盘连接到您的PC,您必须在按下F1后按下一个键,否则将不会发生任何事情。

如果KhiCAS正在进行长时间的计算,您应该可以通过按下AC/ON来中断它。如果无法中断,您可能需要按下重置按钮。

如果KhiCAS崩溃,您将看到一条消息 SYSTEM ERROR 等等.. 尝试按下菜单键并打开其他任何应用程序。如果您运气好,这将保存您的会话,您可以返回并重新打开KhiCAS,而无需重新初始化计算器。

可用于计算的内存约为500K,使用CG50上的彩色g3a插件时,单色g1a插件时为58K。在CG50上,建议定期通过按VAR键检查剩余的可用内存。如果少于100K,请按MENU,打开其他任何应用程序,再次按MENU并重新打开KhiCAS,带着您的会话和新的未碎片化内存。

11  CG50的更完整版本

一个文件中的轻量版并不是 Xcas 的完整版本,因为 Casio 插件的最大大小太小(2 Mo)。更完整的 χ\chiCAS 版本针对 FXCG50 分发为 2 个文件(其中一个是从 FXCG50 的一个当前未被 Casio 使用的 RAM 区域运行的)。

这个更完整的版本有更多的 Xcas 命令(如几何命令)、一个 3D 渲染引擎、一些额外的应用程序(如正式的电子表格或财务应用程序)以及一个带有比卡西欧 MicroPython 1.09 更多模块的 MicroPython 1.12 的移植版。

请参见第 1 节以进行安装。

您可以通过输入 shift SETUP 来选择 shell 解释器。shell 的菜单背景颜色反映了活动解释器(黄色=MicroPython,品红色或青色表示 Xcas 原生或 Xcas Python 兼容)。

可用模块:turtle(更完整的版本,带填充对象),graphic(比casioplot更完整),matplotl,arit(整数算术),linalg/numpy(线性代数,矩阵),ulab(scipy兼容性),cas(来自Python的CAS)。

可以绘制 2 个变量的函数或参数图、圆锥、固体、平面等... 例如输入 F4 * 5 F2 EXE 来绘制一个立方体,或输入 shift F4 1 来选择绘图命令,然后输入 x^2-y^2

对于从 ℂ\mathbb{C} 到 ℂ\mathbb{C} 的函数图像,使用 plot 命令,参数为一个包含两个变量(实部和虚部)的复值表达式,例如 plot((x+i*y)^2-9)。对于直接依赖于复变量的表达式(不需要实部/虚部),可以使用 plot3d 命令,例如 plot3d(x^2-9)plot(x^2-9) 命令将无法使用,因为它已用于从 ℝ\mathbb{R} 到 ℝ\mathbb{R} 的图形)。模长沿 OzOz 轴表示,幅角使用彩虹色表示:从 −π-\pi 的蓝色品红到 0 的绿色(经过黄色橙色),再从 0 到 π\pi 通过青色。

如果您需要精确的选项,请运行 plotfunc 命令,例如
plotfunc((x+i*y)^3-1,[x=-2..2,y=-2..2],nstep=500)
将从以原点为中心、大小为 4 的复平面中的一个正方形绘制 z→z 3−1z \rightarrow z^3-1,使用 500 个小矩形进行离散化。

请注意,计算器上的3D渲染引擎速度较慢,因此默认情况下绘图精度设置为中等值(这主要影响带角度的物体,如多面体)。您可以通过F2(更快,精度较低)或F3(更慢,精度更高)来修改渲染精度。提示:您可以通过运行Ptune3插件来提高CPU速度。

如果你只想要一次更高精度的渲染,输入 ^ 并耐心等待。如果你想中断这个渲染,按 DEL。使用光标键来改变视角,按 5 重置为默认视角,按 -+ 进行缩放。当按住光标键时,精度较低,释放键时最后的位置将以默认精度重新绘制。按 F4 显示/隐藏第二个隐藏对象,按 F5 显示/隐藏中间点,按 F6 显示/隐藏多面体边缘。

几何应用程序允许您在二维平面或三维空间中构建图形。可以移动图形的一个点,并观察构造如何演变,展示一些属性(动态几何)。纯几何构造可以与函数图形和其他解析构造混合。该应用程序有两个视图:图形视图,其中图形被渲染,以及符号视图,您可以看到构建图形的Xcas指令。其理念与Geogebra相似,但使用的是Xcas命令。

您将在这里找到此应用程序的简短描述,详见 这里 以获取几何应用程序的更完整文档,以及一些截图。

按 F6 1 (或 S↔\leftrightarrowD) 显示附加应用程序列表,然后选择 EXE,接着选择一个现有的图形或创建一个新的 2d 或 3d 图形。您还可以通过输入 F6 然后选择保存图形,从 shell 中打开现有图形的几何应用程序(例如在运行 plot(sin(x)) 之后)。

启动时,您处于框架模式的图形视图中。光标键将修改视角(在2D中移动框架,在3D中旋转视角)。按F4更改模式。输入EXE切换到符号视图或返回。例如,输入F4 3进入点模式,移动指针并在您想要创建点的地方按EXE。或者输入F4 5进入三角形模式,将指针移动到每个顶点并在每个顶点上按EXE。您可以使用数字键盘移动指针(使用Shift光标键进行快速移动),或者如果已经存在一个点,输入名称(例如,如果点A已经定义,输入ALPHA A将指针移动到点A)。

在三维图形中,物体将在黄色平面上创建。按4或6键移动此平面。建议保持OzOz垂直的视角(因此仅使用左右光标键进行视角变化,这样会使OzOz轴旋转)。

动态几何使用指南:切换到指针模式(F4 2),靠近一个现有点并用EXE选择它,然后用光标键移动该点,你将看到整个图形如何依赖于该点,这有助于推测或说明一些几何属性,比如三角形的三条线有一个共同的交点。

如果您在图形视图中输入 EXIT,它将重置模式为框架模式(如果您不在框架模式下),或者如果您在框架模式下,它将切换到符号视图。在符号视图中,您可以修改现有命令或使用新的命令行(每个对象一行)创建新的几何对象。您可以从 F6 菜单以文本格式保存构造,请注意生成的文件将具有 .py 扩展名,尽管它不是 Python 脚本。再次输入 EXIT 以退出几何应用程序。

离开几何应用时,图形会保存在一个与符号视图中显示的文件名相同标识符的 Xcas 变量中。如果您想清除图形,可以删除这个 Xcas 变量。

示例 : 外接圆。
从KhiCAS shell中,输入F6 1,然后选择新图形2d EXE。输入F4 5 三角形,EXE以创建第一个顶点,使用光标键移动指针,然后输入EXE以创建第二个顶点,再次移动指针并输入EXE以创建第三个顶点和三角形。

长版本,中心的构造:类型 F4 7,选择 8 垂直平分线,移动指针以便仅选择三角形的一个边(这在右下角显示,类似于 perpen_bisector D5,D,输入 EXE 将创建垂直平分线。将指针移动到三角形的另一个边,输入 EXE 创建第二条平分线。您可以选择性地创建第三条平分线。然后输入 F4 6,选择 4 单交点。将指针移动到一条垂直平分线,输入 EXE,将指针移动到另一条垂直平分线并输入 EXE。这将创建外接圆的中心。输入 F4 4,将指针移动到中心(使用光标键或输入 ALPHA H 或中心名称如果不是 H),然后 EXE,移动到三角形的一个顶点并按 EXE。

使用 circumcircle 命令的简短版本:输入 F4 9,选择 circumcircle,使用指针移动 + EXE 选择每个顶点 ((ALPHA A EXE ALPHA B EXE ALPHA C EXE,替换 A、B、C 为顶点名称)。

符号视图版本:如果您在图形视图中,请输入 EXIT 以切换到符号视图。移动到脚本末尾并在需要时添加换行(shift EXE)。输入
c:=circonscrit(A,B,C) EXE

从 shell 中选择 3d 示例类型 F6 1,然后选择新的 3d 图形。然后 EXIT 或 EXE 切换到符号视图。然后 F5 c ALPHA shift = F4 上箭头两次,选择 3D,EXE 5 生成立方体,F6 获取立方体命令的帮助,按 F2 复制+粘贴符号视图中的第一个示例。你应该看到

c=cube([0,0,0],[1,0,0],[0,1,0])

输入 EXE,这将显示一个小立方体,输入 + 几次以放大。然后输入 EXE 切换回符号视图。输入 shift EXE 开始一个新的命令行。现在我们用 A,B,C,D,E,F,G,H= 定义立方体的顶点(输入 ALPHA A,ALPHA B 等等)。然后输入 F4 和向上箭头 3 次选择几何,然后向上箭头 4 次选择 sommets EXE,输入 c 作为参数以获取 sommets(c)。输入 EXE 显示立方体及其顶点及其名称。再次输入 EXE 返回符号视图。然后 shift EXE 进入一个新的命令行,这将定义平面 ABC。输入 ALPHA P = 然后 F2 打开快速菜单行和 8,这将复制 plane(。该命令接受 3 个点作为参数(或一个笛卡尔方程),这里是 A, B, G,P=plan(A,B,G,。我们现在用 F3 显示快速菜单为平面添加颜色 display=filled+green。通过 EXE EXE 检查。转到下一行(shift EXE)并创建线段 DE ALPHA S = F2 选择线段命令并使用 EXE,输入 D, E,然后 F3 并给出颜色 S=segment(D,E,color=cyan) 整个构造应该是

c=cube( [0,0,0], [1,0,0], [0,1,0] ) A,B,C,D,E,F,G,H=sommets(c) P=plan(A,B,G,display=filled+green) S=segment(D,E,display=cyan)

输入 EXE 以显示它,并使用数字键盘更改视角。输入 EXE 或 EXIT 返回符号视图,输入 EXIT 退出几何应用程序。如果您没有从 F6 菜单保存图形,请输入 F1 以保存图形。您可以从 KhiCAS shell 访问解析几何信息,例如 equation(P) (F4 选择几何子菜单)将返回平面 PP 的笛卡尔方程,或 is_orthogonal(P,S) (F4 几何)将确认平面 PP 与线段 SS 正交(这应该从 3D 渲染中显而易见)。

光标是存在于给定区间的参数值,可以从图形视图以1%的步长移动。它们可以通过符号视图中的element命令或图形视图中的F4菜单创建。

示例 : 二次探测器
此示例演示了方程 y=ax 2+bx+c 的抛物线曲线如何依赖于 a,b,c 的值。 从图形视图的 F4 菜单创建 3 个光标(对于每个光标,F4 向上箭头 4 次 EXE EXE)。 在符号视图中,您应该看到类似于

a:=元素(-1..1) b:=元素(0..1,0.5) c:=元素(-1..1)

然后添加抛物线图,从图形视图中,输入 F4 0(用于 10 条曲线)并选择绘图,或者从符号视图中按 Shift EXE Shift F6 并选择绘图,在括号内填入 a*x^2+b*x+c(注意,不要忘记 *),然后按 EXE。从图形视图中,你应该能看到 3 个光标 abc 以及相应的图形。你现在可以修改 a、b、c 的值,看看它如何影响抛物线的形状。输入 F4 2(指针模式),然后按 F5 a(或 b 或 c)EXE 选择 aa(或 bb 或 cc)。输入 EXE 然后按左右箭头键,再次按 EXE 停止移动光标。

可以进行很多变体,其中一些更简单,只需一个或两个光标和一个依赖于一个或两个参数的曲线。例如,一个线性方程探测器,使用 line(y=a*x+b) 或一个三角函数探测器,使用 plot(sin(a*x+b))

从图形视图中,按 F4 并选择 13 测量。您可以在图形的某个点计算并显示一个测量值。例如,在创建一个三角形后,可以显示三角形的周长或面积。按 F4 然后向上箭头两次 EXE。将指针移动到三角形附近,按 EXE,将指针移动到您想要显示测量值的位置,然后按 EXE。

从符号视角来看,您可以使用 legende() 命令显示图例。图例的第一个参数可以是图形中的一个点,或者是一个包含两个整数的向量,给出绝对位置(以像素为单位,从左上角测量)。第二个参数是图例,可以是一个字符串或任何表达式。

如果图例是一个数值,它可以作为需要此类参数的命令的数值参数,例如变换(旋转角度、相似比...)
r:=legend([20,40],"2")
homothety(A,extract_measure(r),B)

trace() 命令让你在移动一个点时,跟踪几何对象在重新计算时的所有位置。

参数曲线(这里是椭圆)法线的示例包络

E:=plotparam([cos(t),2*sin(t)],t=-pi..pi) a:=element(-pi..pi) M:=element(E,a) T:=tangent(M) N:=perpendiculaire(M,T) trace(N)

如果你改变 aa 的值(指针模式下为 F4 2,F5 为 a),你将看到一条曲线,它将法线区域与自由区域分开,这就是法线的包络线,它也是椭圆的演化线
evolute(E,color=red)
你可以从 F6 菜单(最后一项)中移除图形视图中的痕迹。

文件菜单中有一个应用项,可以让您选择其他应用程序:一个正式的电子表格,一个财务应用,一个周期表,.... 快捷键:从 shell 或编程编辑器中输入 S↔\leftrightarrowD。

与卡西欧电子表格不同,CAS 电子表格可以处理精确值或符号值。您可以计算值为分数、平方根或包含变量如 x、y 的表达式的单元格。

一个单元格可以包含任何有效的 Xcas 值,数字、字符串等。如果您输入一个值列表,或者一个返回值列表的 Xcas 命令,该列表将填充连续的单元格(向下或向右,具体取决于设置)。例如,输入 F1 range( 10 EXE,这将用从 0 到 9 的数字填充 10 个单元格。

定义单元格内容时引用其他单元格类似于其他电子表格,以 = 开头,并输入可能包含单元格引用的表达式(字符 :$ 可从 F3 菜单中获取,: 也可以通过 shift →\rightarrow 访问)。在编辑单元格内容时,可以通过按上或下光标键后再按任何其他光标键来选择另一个单元格。要选择一个范围,移动到选择单元格的开始,按 shift-CLIP 然后移动到选择的结束并输入 EXE。

在定义单元格时,可以使用任何 Xcas 命令(您可以从 F4 菜单或快速菜单(F1、F2、shift F1-shift F6、alpha F1-alpha F6 或 shift CATALOG)获取它们)。还可以使用编程 Xcas 结构以及您定义的 Xcas 函数。请注意,不支持 MicroPython 函数。

一个单元格可以通过返回图形结果的命令来定义。按 S↔\leftrightarrowD 键以显示与整个电子表格的图形输出相对应的图形。

12  版权与感谢。

  • Giac 和 χ\chiCAS,计算内核 (c) B. Parisse et R. De Graeve, 2022.
  • χ\chiCAS 接口由 B. Parisse 根据 Gabrial Maia 的 Eigenmath 源代码和 Xcas 源代码进行调整。
  • χ\chiCAS 许可证 GPL2。详细信息请参见 LICENSE.GPL2 文件,位于 khicasio.zipGPL2 在自由软件基金会网站上。χ\chiCAS 及所需库 libtommath 和 USTL 的源代码可在我网页的 Casio section 中找到(见 13 部分)。
  • 感谢 tiplanet 和 Planete Casio 的活跃成员在我开发 χ\chiCAS 期间回答问题和进行测试。特别感谢 LePhenixNoir(Prizm/35+eii 帮助)、Nemhardy(Prizm)以及 critor 的文章、测试和宣传。感谢 Prizm 编程门户 的所有贡献者。感谢 Pavel Demin 提供的编译技巧,节省了大约 135K。
  • 感谢 Camille Margot 对这些移植的兴趣,以及感谢 Casio France 发送给我计算器和模拟器许可证。

13  开发者信息。

像这样安装 Casio 的 cross-gdb 工具

  1. 安装 wine
  2. 安装 Casio 模拟器(可从 Casio 网站获取),使用类似以下命令
    wine /path_to/fx-CG_Manager_PLUS_Subscription_for_fx-CG50series_Ver.3.40.exe
  3. 安装 gdb-server 等效版本
cd .wine/drive\_c/Program\\ Files\\ x86x86/CASIO/fx-CG\\ Manager\\ PLUS\\ Subscription\\ for\\ fx-CG50series/
mv CPU73050.dll CPU73050.real.dll
wget https://www-fourier.univ-grenoble-alpes.fr/~parisse/casio/CPU73050.dll
cp CPU73050.dll CPU73050.dbg.dll
dll的源代码和其他版本 : `https://github.com/redoste/fx-CG50_Manager_PLUS-gdbserver`).

4. 为sh3编译gdb:

wget https://ftp.gnu.org/gnu/gdb/gdb-11.1.tar.gz
cd casio (或其他构建目录)
tar xvfz ../gdb-11.1.tar.gz
mkdir sh3eb-gdb
cd sh3eb-gdb
../gdb-11.1/configure --srcdir=../gdb-11.1 --target=sh3eb-elf
(如果您没有对 /usr/local/bin 的写入权限,请添加 –prefix=path)。然后
编译
sudo make install
创建两个脚本,`casioemu` 用于正常仿真
#! /bin/bash
cd ~/.wine/drive\_c/Program\ Files\ x86x86/CASIO/fx-CG\ Manager\ PLUS\ Subscription\ for\ fx-CG50series
/bin/cp CPU73050.real.dll CPU73050.dll
cd
wine "C:\Program Files (x86)\CASIO\fx-CG Manager PLUS Subscription for fx-CG50series\fx-CG\_Manager\_PLUS\_Subscription\_for\_fx-CG50series.exe" /n"fx-CG Manager PLUS Subscription for fx-CG50series" > /dev/null &
和 `casiodbg` 用于调试模式
#! /bin/bash
cd ~/.wine/drive\_c/Program\ Files\ x86x86/CASIO/fx-CG\ Manager\ PLUS\ Subscription\ for\ fx-CG50series
/bin/cp CPU73050.dbg.dll CPU73050.dll
cd
wine "C:\Program Files (x86)\CASIO\fx-CG Manager PLUS Subscription for fx-CG50series\fx-CG\_Manager\_PLUS\_Subscription\_for\_fx-CG50series.exe" /n"fx-CG Manager PLUS Subscription for fx-CG50series" > /dev/null &
  1. 对于正常仿真运行 casioemu,对于调试仿真运行
casiodbg
sh3eb-elf-gdb
目标 远程 localhost:31188
或者如果你的调试信息在 emucas.elf 中,可以使用一个命令
`sh3eb-elf-gdb -i=mi -ex "target remote localhost:31188" emucas.elf`
你可以使用 `b` 或 `hb` (`hbreak`(硬件断点,这对于第一个断点是必需的))设置断点。

快速 Linux 安装:获取 libmpfr.so.4 并将其复制到 /usr/local/lib,检查 /usr/local/lib 是否在 /etc/ld.so.conf 列出的路径中,然后运行 sudo ldconfig。现在解压 casiolocal.tgz,这是一个适用于 Casio 计算器的工作交叉 gcc,附带额外的库(libc, ustl, tommath)。您还需要安装 [mkg3a](https://www-fourier.univ-grenoble-alpes.fr/ parisse/casio/mkg3a.tgz) 来为 FXCG 构建插件。然后获取 giac2.tgzgiacbf.tgz,解压并运行 make。对于轻量版,请获取 giac90.tgz

如果出现问题,这里有一些细节。您必须安装针对 sh3eb CPU 的 gcc 交叉编译器,按照这个 教程 (法语)。我已经这样配置了 gcc
../gcc-5.3.0/configure --target=sh3eb-elf --prefix="$HOME/opt/sh3eb-elf" --disable-nls --disable-shared --disable-multilib --enable-languages=c,c++ --without-headers
不幸的是,gcc 的 newlib(C 库)和 libstdc++ 不支持 sh3eb。

libc 被 [libfxcg (用于 CG50)](https://www-fourier.univ-grenoble-alpes.fr/ parisse/casio/libfxcg90.tgz) 替代(它来自原始 SDK,经过一些修改,修正了小错误,添加了缺失的函数,如 qsort 等),在同一个 文件夹 中,你还会找到 tommath.tgz(大整数支持)和 ustl.tar.gz(标准模板库),我也必须对它们进行修改以使其与 sh3eb-elf-g++ 一起工作,部分成功,即足够的支持来构建 Giac(支持向量/字符串/映射,不支持文件 I/O,cin/cout 有一个自定义的 iostream 文件以提供最小支持)。解压并使用 make 编译。

对于单色 Fx-9860GIII,获取 giac35.tar.bz2 并在 giac35/src0 目录中运行 make

返回到Giac/Xcas的主页。

总结
Casio将在2024年推出新款彩色计算器Graph Math+,其国际版FXCG100预计于2025年发布,作为FXCG50的继任者。目前的操作系统(版本1)不支持第三方插件,因此KhiCAS等插件无法在Graph Math+上使用,预计FXCG100也不会支持。Casio已宣布将在2025年发布操作系统版本2,但尚未明确是否支持第三方插件。为了争取在新版本中加入插件,用户可以通过提供的链接联系Casio,表达对KhiCAS等插件的需求。文章提到,自2024年1月以来,已有超过13000人阅读此文,预计今年将超过20000人。如果足够多的人采取行动,或许能影响Casio的决策。此外,文中还介绍了如何在Casio计算器上高效运行χCAS,包括安装、使用和故障排除等信息。