Dataset
This module contain the implementation of the Dataset class
helper function to create data
sample_spin_configurations
def sample_spin_configurations(
wave_function, num_samples, N, key
):
samples spin config. from an exact wavefunction
Args:
wave_function: (2**N,) complex64 num_samples: int, nbr of samples N: int, nbr of sites key: a JAX PRNGKey
Returns:
spin_configurations: (num_samples, N) int32, samples of spin configurations
get_classical_shadow
def get_classical_shadow(
psi, num_shots, N, rng_key, bases:str='XYZ'
):
generate classical shadows from an exact wavefunction
Args:
psi: (2**N,) complex64 from, f. ex., exact diagonalization num_shots: int N: int rng_key: a JAX PRNGKey bases: which measurement basis, default ‘XYZ’ -> {X,Y,Z} randomly, other available option: ‘X’, ‘Y’, ‘Z’, ‘XY’, ‘YZ’
Returns:
shadows: (num_shots, 2*N) int32 interleaved [basis,outcome] pairs basis in {2,3,4} = {X,Y,Z}, outcome in {0,1} = {+1,-1}
class
Dataset
def Dataset(
data:Array, thetas:Sequence, data_type:str, local_dimension:int=0, local_states:Array=None
):