Utils methods:
- tqix.pis.util.get_Nds(d)
to get number of qubits from dimension d
- Parameters:
d (int) – dimension
- Returns:
N
- Return type:
number of qubits
- tqix.pis.util.get_dim(N)
to get dimension from number of qubits N
- Parameters:
N (int) – number of qubits
- Returns:
d
- Return type:
dimension
- tqix.pis.util.get_num_block(N)
to get number of block
- Parameters:
N (int) – number of qubits
- Returns:
Nbj
- Return type:
Number of block j
- tqix.pis.util.get_array_block(N)
an array of block
- tqix.pis.util.get_jmin(N)
to get j min
- tqix.pis.util.get_jarray(N)
to get array of j from N
- tqix.pis.util.get_marray(j)
to get array of m from j
- tqix.pis.util.get_vidx(j, m)
to get index in vector state from j,m
- tqix.pis.util.get_mm1_idx_max(N)
to get mm1 or ik
- tqix.pis.util.get_midx(N, j, m, m1, block)
- to get index in density matrix
ref. qutip
- tqix.pis.util.get_jmm1_idx(N)
get index i,k of density matrix from j,m,m1
and revert j,m,m1 from i,k
ref. qutip
- tqix.pis.util.get_A(j, m, type='')
- tqix.pis.util.get_B(j, m, type='')
- tqix.pis.util.get_D(j, m, type='')
- tqix.pis.util.get_Lambda(N, j, type='')
- tqix.pis.util.get_alpha(N, j)
- tqix.pis.util.dicke_bx(N, jmm1)
create a dicke basis follow jmm1 jmm1 as {(j,m,m1):p}
- tqix.pis.util.dicke_bx1(N, jmm1, ik, dim)
create a dicke basis follow jmm1
jmm1 as {(j,m,m1):p}
- tqix.pis.util.isclose(a, b, rel_tol=1e-09, abs_tol=0.0)
Check if 2 numbers is closed
- tqix.pis.util.fit(objective_function, optimizer, init_params, return_loss_hist=None, loss_break=None, return_time_iters=None)
- Parameters:
objective_function (func) – objetive function to minimize
optimizer (func) – optimizer function
init_params (list) – list of initial parameters
return_loss_hist (bool, optional) – return history of objective values, defaults to None
loss_break (bool, optional) – early stopping, defaults to None
return_time_iters (bool, optional) – return time each iterations, defaults to None
- Returns:
output
- Return type: