升级到1.4.0之后遇到的数据类型冲突的问题

To Reproduce

import numpy as np
import taichi as ti
ti.init()

x = ti.Vector.field(3, dtype=ti.f32, shape=())
a = np.array([1,2,3], dtype=np.float32)
b = ti.Vector([0, a[2], 0], dt=ti.f32)

@ti.kernel
def bar():
    foo()

@ti.func
def foo():
    print(ti.max(x[None], b))

bar()

报错:

    print(ti.max(x[None], b))
          ^^^^^^^^^^^^^^^^^^
Element type of the matrix is invalid.

如果简单的改为 b = ti.Vector([0, 3, 0], dt=ti.f32) 就不会报错。
请问大家有什么建议吗?

我看到你已经开了 issue (conflict with vector initialized using np array element · Issue #7353 · taichi-dev/taichi · GitHub) 并且已经被解决啦,有其他问题欢迎随时提~

1 个赞