我正在寻找一个图书馆,但我不确定要搜索什么,因为我不知道如何调用我想要执行的任务(以可搜索的方式)。
功能示例
我有许多涉及单个运算(乘法)的矩阵方程,其中包含一些常见元素,例如:
result_1 = a * b * c * e
result_2 = b * c
result_3 = c * e * f
这里没有未知数;我们只是在计算result_n
项目。
这些乘法执行起来很昂贵,所以我想要一个库,让我可以设置方程和 , 等的值a
,b
然后检索result
项目。
最关键的是,我还需要能够说“我正在更新值(例如)a
和f
”,并且让库不做任何不必要的计算;它不会费心重新计算result_2
(因为答案不会改变),也不会费心重新计算子项b * c * e
(in result_1
) 或c * e
(in result_3
),因为这些部分也不会有所不同。
这种设施有好听的名字吗?
理想情况下,它还能够处理不同的运算符(例如二元*
和一元transpose
),并且您可以指定运算符的属性,例如“*
不通勤,但具有关联性”。了解这些属性将使 lib 有时可以更有效地完成工作。