Пример #1
0
def sparse_api_demo():
    ti.activate(block1, [0, 1])
    ti.activate(block2, [1, 2])

    for i, j in x:
        print('field x[{}, {}] = {}'.format(i, j, x[i, j]))
    # outputs:
    # field x[2, 4] = 0
    # field x[2, 5] = 0
    # field x[3, 4] = 0
    # field x[3, 5] = 0

    for i, j in block2:
        print('Active block2: [{}, {}]'.format(i, j))
    # output: Active block2: [1, 2]

    for i, j in block1:
        print('Active block1: [{}, {}]'.format(i, j))
    # output: Active block1: [0, 1]

    for j in range(4):
        print('Activity of block2[2, {}] = {}'.format(
            j, ti.is_active(block2, [1, j])))

    ti.deactivate(block2, [1, 2])

    for i, j in block2:
        print('Active block2: [{}, {}]'.format(i, j))
    # output: nothing

    for i, j in block1:
        print('Active block1: [{}, {}]'.format(i, j))
    # output: Active block1: [0, 1]

    print(ti.rescale_index(x, block1, ti.Vector([9, 17])))
    # output = [2, 4]

    # Note: ti.Vector is optional in ti.rescale_index.
    print(ti.rescale_index(x, block1, [9, 17]))
    # output = [2, 4]

    ti.activate(block2, [1, 2])
Пример #2
0
 def active_all():
     for i in ti.ndrange(num_elements):
         ti.activate(block, [i])
Пример #3
0
 def activate_pointer_fields():
     ti.activate(p, [7])
     ti.activate(p, [3])
Пример #4
0
 def foo():
     ti.activate(ptr, [0])
Пример #5
0
 def activate():
     ti.activate(ptr, 1)
     ti.activate(ptr, 32)
Пример #6
0
def activate():
    for i, j in ti.ndrange(n, n):
        if i < j:
            x[i, j] = 1

    ti.activate(cell, [10, 3])
Пример #7
0
 def active_all():
     for i, j in ti.ndrange(block_elements_2d[0], block_elements_2d[0]):
         ti.activate(block, [i, j])