diff --git a/0_tutorial_cgraph/assets/tutorial.py b/0_tutorial_cgraph/assets/tutorial.py index 31f1833..b7f3594 100644 --- a/0_tutorial_cgraph/assets/tutorial.py +++ b/0_tutorial_cgraph/assets/tutorial.py @@ -35,8 +35,7 @@ def add_base(x: ti.types.ndarray(ndim=1), base: ti.f32): sym_x = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'x', ti.f32, - ndim=1, - element_shape=()) + ndim=1) sym_base = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'base', ti.f32) diff --git a/2_mpm88/assets/mpm88.py b/2_mpm88/assets/mpm88.py index 0fb1cdd..dd4c39c 100644 --- a/2_mpm88/assets/mpm88.py +++ b/2_mpm88/assets/mpm88.py @@ -118,39 +118,32 @@ def init_particles(x: ti.types.ndarray(ndim=1), v: ti.types.ndarray(ndim=1), sym_x = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'x', - ti.f32, ndim=1, - element_shape=(2, )) + dtype=ti.types.vector(2, ti.f32)) sym_v = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'v', - ti.f32, ndim=1, - element_shape=(2, )) + dtype=ti.types.vector(2, ti.f32)) sym_C = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'C', - ti.f32, ndim=1, - element_shape=(2, 2)) + dtype=ti.types.matrix(2, 2, ti.f32)) sym_J = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'J', ti.f32, - ndim=1, - element_shape=()) + ndim=1) sym_grid_v = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'grid_v', - ti.f32, ndim=2, - element_shape=(2, )) + dtype=ti.types.vector(2, ti.f32)) sym_grid_m = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'grid_m', ti.f32, - ndim=2, - element_shape=()) + ndim=2) sym_pos = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'pos', - ti.f32, ndim=1, - element_shape=(3, )) + dtype=ti.types.vector(3, ti.f32)) g_init_builder = ti.graph.GraphBuilder() g_init_builder.dispatch(init_particles, sym_x, sym_v, sym_J) diff --git a/3_implicit_fem/assets/implicit_fem.py b/3_implicit_fem/assets/implicit_fem.py index 3830f23..17e40d0 100644 --- a/3_implicit_fem/assets/implicit_fem.py +++ b/3_implicit_fem/assets/implicit_fem.py @@ -327,15 +327,15 @@ def convert_to_field(x: ti.types.ndarray(ndim=1), y: ti.template()): sym_hes_edge = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'hes_edge', ti.f32, ndim=len(edges.shape)) sym_hes_vert = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'hes_vert', ti.f32, ndim=len(ox.shape)) -sym_x = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'x', ti.f32, ndim=1, element_shape=(args.dim,)) -sym_v = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'v', ti.f32, ndim=1, element_shape=(args.dim,)) -sym_f = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'f', ti.f32, ndim=1, element_shape=(args.dim,)) -sym_ox = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'ox', ti.f32, ndim=1, element_shape=(args.dim,)) -sym_vertices = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'vertices', ti.i32, ndim=1, element_shape=(4,)) +sym_x = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'x', ndim=1, dtype=ti.types.vector(args.dim, ti.f32)) +sym_v = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'v', ndim=1, dtype=ti.types.vector(args.dim, ti.f32)) +sym_f = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'f', ndim=1, dtype=ti.types.vector(args.dim, ti.f32)) +sym_ox = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'ox', ndim=1, dtype=ti.types.vector(args.dim, ti.f32)) +sym_vertices = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'vertices', ndim=1, dtype=ti.types.vector(4, ti.i32)) sym_m = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'm', ti.f32, ndim=1) -sym_B = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'B', ti.f32, ndim=1, element_shape=(args.dim, args.dim)) +sym_B = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'B', ndim=1, dtype=ti.types.matrix(args.dim, args.dim, ti.f32)) sym_W = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'W', ti.f32, ndim=1) -sym_c2e = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'c2e', ti.i32, ndim=1, element_shape=(6,)) +sym_c2e = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'c2e', ndim=1, dtype=ti.types.vector(6, ti.i32)) g_init_builder = ti.graph.GraphBuilder() g_init_builder.dispatch(clear_ndarray, sym_hes_edge, sym_hes_vert) @@ -347,15 +347,15 @@ def convert_to_field(x: ti.types.ndarray(ndim=1), y: ti.template()): sym_gravity_x = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'gravity_x', ti.f32) sym_gravity_y = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'gravity_y', ti.f32) sym_gravity_z = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'gravity_z', ti.f32) -sym_b = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'b', ti.f32, ndim=1, element_shape=(3,)) -sym_mul_ans = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'mul_ans', ti.f32, ndim=1, element_shape=(args.dim,)) -sym_edges = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'edges', ti.i32, ndim=1, element_shape=(2,)) -sym_r0 = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'r0', ti.f32, ndim=1, element_shape=(3,)) +sym_b = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'b', ndim=1, dtype=ti.types.vector(3, ti.f32)) +sym_mul_ans = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'mul_ans', ndim=1, dtype=ti.types.vector(args.dim, ti.f32)) +sym_edges = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'edges', ndim=1, dtype=ti.types.vector(2, ti.i32)) +sym_r0 = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'r0', ndim=1, dtype=ti.types.vector(3, ti.f32)) sym_k0 = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'k0', ti.f32) sym_k1 = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'k1', ti.f32) sym_k2 = ti.graph.Arg(ti.graph.ArgKind.SCALAR, 'k2', ti.f32) -sym_p0 = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'p0', ti.f32, ndim=1, element_shape=(3,)) +sym_p0 = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'p0', ndim=1, dtype=ti.types.vector(3, ti.f32)) sym_dot_ans = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'dot_ans', ti.f32, ndim=0) sym_r_2_scalar = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'r_2_scalar', ti.f32, ndim=0) sym_alpha_scalar = ti.graph.Arg(ti.graph.ArgKind.NDARRAY, 'alpha_scalar', ti.f32, ndim=0) diff --git a/4_texture_fractal/assets/fractal.py b/4_texture_fractal/assets/fractal.py index db5a570..5ef66d5 100644 --- a/4_texture_fractal/assets/fractal.py +++ b/4_texture_fractal/assets/fractal.py @@ -48,13 +48,12 @@ def fractal(t: ti.f32, canvas: ti.types.rw_texture(num_dimensions=2, sym_t = ti.graph.Arg(ti.graph.ArgKind.SCALAR, "t", - ti.f32, - element_shape=()) + ti.f32) sym_canvas = ti.graph.Arg(ti.graph.ArgKind.RWTEXTURE, 'canvas', - channel_format=ti.f32, - shape=(n * 2, n), - num_channels=1) + fmt=ti.Format.r32f, + ndim=2, + ) gb = ti.graph.GraphBuilder() gb.dispatch(fractal, sym_t, sym_canvas)