Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Octave “符号工具箱修剪最终版”;点“;从符号名开始_Octave_Symbolic Math - Fatal编程技术网

Octave “符号工具箱修剪最终版”;点“;从符号名开始

Octave “符号工具箱修剪最终版”;点“;从符号名开始,octave,symbolic-math,Octave,Symbolic Math,我遇到了octave符号工具箱的奇怪行为,其中以-dot结尾的符号变量松开了最后的dot-后缀 pkg load symbolic; clear, clc; syms xxxdot syms % Symbolic variables in current scope: xxxdot xxxdot % xxxdot = (sym) xxx 我只是偶然发现了它,因为我有相同的变量,有后缀-dot,也有后缀。但请注意,如果定义的另一个符号变量没有最后的-dot,则倍频程符号将不会合并它们。因此,数学

我遇到了octave符号工具箱的奇怪行为,其中以
-dot
结尾的符号变量松开了最后的
dot
-后缀

pkg load symbolic;
clear, clc;
syms xxxdot
syms % Symbolic variables in current scope: xxxdot
xxxdot % xxxdot = (sym) xxx
我只是偶然发现了它,因为我有相同的变量,有后缀
-dot
,也有后缀
。但请注意,如果定义的另一个符号变量没有最后的
-dot
,则倍频程符号将不会合并它们。因此,数学仍然是正确的:

pkg load symbolic;
clear, clc;
syms xxxdot xxx % Symbolic variables in current scope: xxxdot xxx
xxxdot + xxx % ans = (sym) xxx + xxx
有人知道这是从哪里来的吗

我使用的是倍频程4.2.2-1ubuntu1,倍频程符号2.6.0-3build1
(Ubuntu 18.04,内核4.15.0-101-generic)

我猜您正在运行图形界面

如果在终端上运行octave,您将看到某些unicode字符似乎从GUI中被截断

此功能没有很好的文档记录(实际上是这样),但请查看以下页面,了解发生了什么:

  • (查看显示部分)
本质上,似乎倍频程/符号足够聪明,可以理解变量名后面跟着一个有效的类似乳胶的“符号”修饰符,如点、帽、波浪、ddot、dddot、ddddot,并相应地表示变量:

octave:1> sym('xdot'), sym('xddot'), sym('xdddot'), sym('xddddot'), sym('xhat'), sym('xtilde')
ans = (sym) ẋ
ans = (sym) ẍ
ans = (sym) x⃛
ans = (sym) x⃜
ans = (sym) x̂
ans = (sym) x̃
(实际上,unicode在StackOverflow上看起来没有那么好,但在终端上看起来还可以)

正如sympref所建议的,如果您不喜欢这种行为(或者如果您在GUI上,它不工作,duh),您可以更改它,例如,
sympref显示ascii
sympref显示平面

话虽如此,我还是鼓励您尽自己的社区责任,并将缺少GUI输出的情况报告为octave bug tracker上的bug。:)

我相信这不是故意的,可能更多的是因为GUI所用的终端缺乏对unicode的完全支持…

在我的机器上,它们不一样,“点”一个实际上是用一个实际的点打印的,即
xxxdot=(sym)xẋx
哦,天哪,这太荒谬了!我要报告这件事。谢谢你的即时诊断:我刚刚报告了