mma矩阵微分

randolf2022年6月6日
大约 1 分钟

mma矩阵微分

Mma 矩阵微分

定义

Mathematica 可以很方便的计算符号函数,这里进一步介绍如何使用其来进行矩阵微分运算等操作。

流程

前置准备

使用技巧

常用的几个基本命令:

  • ** 代表不可交换乘法
  • 单个小写字符默认不可交换,其余均可交换
a**b-b**a==>a**b-b**a
A**B-B**A==>0
A**b-b**A==>0
- `SetNonCommutative[]/SNC[]`可以指定不可交换
  • tp=>转置
  • inv=>逆
  • aj=>伴随
  • NCGrad=>求微分

使用例子

<< NC`;
<< NCAlgebra`;
expr = tp[a ** x - b] ** (a ** x - b)
NCGrad[expr, x]

result

Pasted image 20220126170919

可以发现计算少了个转置,相比我们定义的 矩阵求导,这是因为定义微元的时候差了一个转置所以给一个转置就行,即结果为 NCGrad[expr, x]//tp 即可

需要注意,计算 NCGrad 的时候不能计算可交换乘法,即所有乘法必须要使用不可交换乘法进行计算

参考文档

DOC-NCAlgebra_5

参考

Loading...