微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Julia Symbolics 中常量表示的平方

如何解决Julia Symbolics 中常量表示的平方

我正在寻找一种方法来表示符号表达式,例如 sqrt(3)*x,以避免预先计算 sqrt(3)

示例代码

using Symbolics
@variables x
y = sqrt(3)*x

显示y,我们可以看到sqrt(3)变成了一个浮点数。

是否有一种机制可以将 sqrt 保持为符号形式?

解决方法

是否有一种机制可以将 sqrt 保持为符号形式?

julia> using Symbolics
julia> @variables x
(x,)
julia> y = Symbolics.Term(sqrt,[3])*x

x*sqrt(3)
,

我无法复制:

julia> using Symbolics

julia> @variables x
(x,)

julia> y = 1//3*x
(1//3)*x

julia> y
(1//3)*x

我的配置:

[0c5d862f] Symbolics v0.1.21

julia> versioninfo()

Julia Version 1.6.0
Commit f9720dc2eb (2021-03-24 12:55 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Core(TM) i7-9850H CPU @ 2.60GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.1 (ORCJIT,skylake)
,

有趣,y = 1//3 * x 有效,但根据原始问题,y = sqrt(3) * x 无效。所以,用户 Nasser 的回答真的很有帮助,谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。