python - 使用 einsum 的张量接触
问题描述
我一直在阅读以下列方式执行张量收缩的代码:
Ecorr = np.einsum('xscd,AbxS,as,SA->abcd',R_xsab,T_abxs,get.s('as'),get.s('sa'))
我试图了解 numpy 如何执行此操作,因此我尝试将其拆分为一些步骤:
tmp1 = np.einsum('xscd,as->xacd',R_xsab,get.s('as'))
tmp2 = np.einsum('abxS,SA->abxA',T_abxs,get.s('sa'))
Ecorr_test = np.einsum('xacd,Abxa->Abcd',tmp1,tmp2)
不幸的是,它会导致不同的结果。
谁能帮助我了解上面 einsum 的幕后发生了什么以及我做错了什么?
解决方案
推荐阅读
- node.js - 如何在 netlify-lambda 中访问 gatsby 环境变量
- php - Laravel 通知或可邮寄的朋友请求/接受
- wordpress - 如何将 wordpress/woocommerce 网站移动到新主机和新域?
- hbase - 带有 JMX 导出器 BindException 的 HBase
- laravel - Laravel 护照和 MFA 集成
- php - Laravel 护照动态范围
- node.js - 如何在文档中动态查询对象
- database - 如何解决消息 Trying to get property of none object
- php - 如何获取 std::class 数组值
- node.js - 在节点中同步实现mysql查询