Quantum Fog  0.9.3
Public Member Functions | Public Attributes | List of all members
prefabricated_nodes.QubitRot.QubitRot Class Reference
Inheritance diagram for prefabricated_nodes.QubitRot.QubitRot:
Inheritance graph
[legend]
Collaboration diagram for prefabricated_nodes.QubitRot.QubitRot:
Collaboration graph
[legend]

Public Member Functions

def __init__ (self, id_num, name, pa_nd, thetas_degs)
 
def qbit_rot_amp (self, n, m)
 
- Public Member Functions inherited from nodes.BayesNode.BayesNode
def __init__ (self, id_num, name="blank", size=2)
 
def set_potential (self, pot)
 
def resize (self, size)
 
def set_state_name (self, position, name)
 
def st_name_index (self, st_name)
 
def forget_all_evidence (self)
 
def get_active_states (self)
 
def set_active_states (self, states)
 
def set_state_names_to_product (self, list_of_iters, repeat=1, trim=False)
 
- Public Member Functions inherited from nodes.DirectedNode.DirectedNode
def __init__ (self, id_num, name="blank")
 
def add_parent (self, node)
 
def add_parents (self, node_list)
 
def remove_parent (self, node)
 
def has_parent (self, node)
 
def add_child (self, node)
 
def add_children (self, node_list)
 
def remove_child (self, node)
 
def has_child (self, node)
 
def undirect (self)
 
def get_markov_blanket (self)
 
- Public Member Functions inherited from nodes.Node.Node
def __init__ (self, id_num, name="blank")
 
def __lt__ (self, other)
 
def add_neighbor (self, node)
 
def remove_neighbor (self, node)
 
def has_neighbor (self, node)
 

Public Attributes

 thetas_degs
 
 state_names
 
 potential
 
- Public Attributes inherited from nodes.BayesNode.BayesNode
 size
 
 state_names
 
 clique
 
 potential
 
- Public Attributes inherited from nodes.DirectedNode.DirectedNode
 parents
 
 children
 
 neighbors
 
- Public Attributes inherited from nodes.Node.Node
 id_num
 
 topo_index
 
 name
 
 neighbors
 
 visited
 

Additional Inherited Members

- Properties inherited from nodes.BayesNode.BayesNode
 active_states = property(get_active_states, set_active_states)
 

Detailed Description

The Constructor of this class builds a BayesNode that has a transition
matrix appropriate for a qubit rotation.

The following is expected:

* the focus node has exactly one parent node,

* the parent node has 2 states named 0 and 1, in that order.

Quantum Fog gives names 0 and 1 to the states of the Qbit Rotator.

The Constructor allows you to enter the angles theta_degs[0:3] (in
degrees) such that the amplitudes of the node are given by the entries
of the following 2 × 2 matrix: (t =theta_degs)

exp(i*(pi/180)*{t[0] + t[1]*sigmaX + t[2]*sigmaY + t[3]*sigmaY}),

where sigmaX, sigmaY and sigmaZ are the Pauli Matrices.

More information about Qbit Rotation nodes can be found in the documents
entitled "Quantum Fog Manual", and "Quantum Fog Library Of Essays" that
are included with the legacy QFog.

Attributes
----------
thetas_degs : list[float]

potential : Potential
active_states : list[int]
clique : Clique
size : int
state_names : list[str]
children : set[BayesNode]
neighbors : set[BayesNode]
parents : set[BayesNode]
id_num : int
topo_index : int
name : str
visited : bool

Constructor & Destructor Documentation

def prefabricated_nodes.QubitRot.QubitRot.__init__ (   self,
  id_num,
  name,
  pa_nd,
  thetas_degs 
)
Constructor

Parameters
----------
id_num : int
    id number of self (focus node)
name : str
    name of self (focus node)
pa_nd : BayesNode
    parent node
thetas_degs : list[float]

Returns
-------

Member Function Documentation

def prefabricated_nodes.QubitRot.QubitRot.qbit_rot_amp (   self,
  n,
  m 
)
Returns <n |rot| m> where m and n are in {0, 1}

Parameters
----------
n : int
m : int

Returns
-------
complex

The documentation for this class was generated from the following file: