关于 taichi 的几个问题

这两个问题不是和图形学特别相关,想借这个论坛请教一下:

  1. taichi 是否原生支持复数运算?还是说使用者需要在 Vector 的基础上自行实现 complex 运算?可不可以在 snode 基础上加入对复数的支持?

  2. 在使用 Python 进行开发的时候,哪些场合适合使用 numpy,哪些适合使用 taichi 的张量?我的理解是 taichi 可以编译为 cuda/opengl 加速张量类型的运算 (可能也包括 struct node 类型的数据),所以比 numpy 快一些,但是支持的运算和函数比 numpy 少,是这样吗?

  3. 在做一些比较复杂的机器人建模的时候,如果用 Python 开发的话,在 taichi 之前,是用 numpy + scipy + cvxpy 这样的库,通过调用底层的 C/C++ 来实现。但是计算量很大的话,也很难做到实时控制。taichi 有没有可能在这方面取得一些加速的效果?比如求矩阵特征值、计算 SVD 分解、求最小二乘估计、求二次优化最优解等等。。

  4. 如果我想封装 taichi.Vector 这个类,比如自定义一个四元数 Quaternion 类,内部是一个 Vector,然后定义其各种属性和运算,taichi 是否支持修饰其成员函数?将 Quaternion 类作为参数传入 ti.kernel 修饰的函数是否可行?

1 Like