ob_atom.OBAtom
ob_atom.OBAtom(
label=None,
num_states=1,
energies=None,
decays=None,
initial_state=None,
fields=None,
)Methods
| Name | Description |
|---|---|
| add_field | Add a Field to the list given a dict representing the field. |
| build_fields | Build the field list given a list of dicts representing fields. |
| build_initial_state | Build the initial density matrix for the atom. |
| build_operators | Build the quantum operators representing the bare Hamiltonian, |
| get_detunings | Returns a list of detunings, one for each field in fields. |
| get_fields_sum_coherence | Returns the sum coherences of the atom density matrix for each |
| set_H_Delta | Set the detuning part of the interaction Hamiltonian, H_Delta, |
| set_H_Omega | |
| to_json_str | Return a JSON string representation of the Atom object. |
add_field
ob_atom.OBAtom.add_field(field_dict)Add a Field to the list given a dict representing the field.
build_fields
ob_atom.OBAtom.build_fields(field_dicts)Build the field list given a list of dicts representing fields.
build_initial_state
ob_atom.OBAtom.build_initial_state(initial_state=None)Build the initial density matrix for the atom.
The default is for all of the population to be in |0><0|.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| rho0 | a list or array of populations, length num_states. | required |
Returns
| Name | Type | Description |
|---|---|---|
| qu.Qobj | Qu.Qobj: A density matrix representing the initial |
Notes
- The elements must sum to 1 (as this will be the trace of the density matrix).
build_operators
ob_atom.OBAtom.build_operators()Build the quantum operators representing the bare Hamiltonian, collapse operators and interaction Hamiltonian.
get_detunings
ob_atom.OBAtom.get_detunings()Returns a list of detunings, one for each field in fields.
get_fields_sum_coherence
ob_atom.OBAtom.get_fields_sum_coherence(states_t=None)Returns the sum coherences of the atom density matrix for each field, including the relative strength factors.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| states_t | np.ndarray | None | (optional) a states_t object. If not provided, use self.states_t() | None |
Returns
| Name | Type | Description |
|---|---|---|
| np.ndarray | np.ndarray of shape (num_fields, t_steps+1) |
set_H_Delta
ob_atom.OBAtom.set_H_Delta(detunings)Set the detuning part of the interaction Hamiltonian, H_Delta, given a list of detunings.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| detunings | list[float] | list of floats: detunings of each field in the list | required |
set_H_Omega
ob_atom.OBAtom.set_H_Omega(rabi_freqs, rabi_freq_t_funcs, rabi_freq_t_args)Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| rabi_freqs | list[float] | [floats] | required |
| rabi_freq_t_funcs | list | [strings] | required |
| rabi_freqs_t_args | [dicts] | required |
Returns:
to_json_str
ob_atom.OBAtom.to_json_str()Return a JSON string representation of the Atom object.
Returns
| Name | Type | Description |
|---|---|---|
| str | (string) JSON representation of the Atom object. |