我正在尝试使用:: Math :: Linearalgebra ::软件包进行一些模拟特征值计算进行测试。以下代码有效并产生所需的结果:
package require math
package require math::linearalgebra
set Mat [::math::linearalgebra::mkMatrix 8 8 0.0]
puts "a single row is: [::math::linearalgebra::getrow $Mat 0 ] "
但是,当我尝试将矩阵垫子的元素计算时,我会发现一个错误:
set Mat [::math::linearalgebra::mkMatrix 8 8 0.0]
::math::linearalgebra::setelem $Mat 0 1 1.0]
puts "a single row is: [::math::linearalgebra::getrow $Mat 0 ] "
错误是:
无法阅读"垫子":没有这样的变量 执行" LSET MAT $ ROW $ COL $ NEWVALUE"时 (过程" :: Math :: Linearalgebra :: SetElem"第4行)
如果不使用:: setElem,如何修改创建矩阵的元素?
谢谢
根据手册,您必须给矩阵的 name 。因此,您应该这样做:
set Mat [::math::linearalgebra::mkMatrix 8 8 0.0]
::math::linearalgebra::setelem Mat 0 1 1.0