A computer implemented method for simulating a physical process. The method includes storing in a memory a state vector for each of a number of voxels (i. e. , lattice sites). Each state vector includes a plurality of integers, each of which corresponds to a particular momentum state of a number of possible momentum states at a voxel (lattice site) and represents the number of elements having the particular momentum state. Each integer has more than two possible values. The method also includes performing interaction operations on the state vectors that model interactions between elements of different momentum states and performing move operations on the state vectors that reflect movement of elements to new voxels.