| 
    Robochameleon
    v1.0
    
   | 
 
Passive part of an optical hybrid. More...
Inherits unit.
Public Member Functions | |
| function | OpticalHybrid_v1 (in params) | 
| Class constructor.  More... | |
| function | traverse (in obj, in sig, in lo) | 
| Traverse function.  More... | |
  Public Member Functions inherited from unit | |
| virtual | traverse (in obj, in varargin) | 
| Main function call.  | |
| function | traverseNode (in obj) | 
| Set unique ID when creating a unit.  More... | |
| function | connectOutput (in obj, in uobj, in unitOutput, in nextUnitInput) | 
| Specify where signal should go next.  More... | |
| function | connectOutputs (in obj, in units, in destInputs) | 
| Specify where signal should go next.  More... | |
| function | writeInputBuffer (in obj, in sig, in inputId) | 
| write input buffer  | |
| function | horzcat (in varargin) | 
| horizontal concatenation  | |
| function | vertcat (in varargin) | 
| vertical concatenation  | |
| function | setparams (in obj, in params, in REQUIRED_PARAMS, in QUIET_PARAMS) | 
| set parameters  More... | |
| function | view (in obj) | 
| Show interactive GUI through unit_view-class.  | |
Public Attributes | |
| Property | phase_angle | 
| Optical hybrid phase angle [rad].  | |
| Property | nInputs | 
| Number of input arguments.  | |
| Property | nOutputs | 
| Number of output arguments.  | |
  Public Attributes inherited from unit | |
| Property | inputBuffer | 
| Buffer for storing inputs as we traverse the graph.  | |
| Property | nextNodes | 
| Children nodes.  | |
| Property | destInputs | 
| Destination inputs in children.  | |
| Property | results | 
| For storing results.  | |
| Property | label | 
| Property | draw | 
| enable/disable plotting  | |
| Property | nInputs | 
| Number of signals traverse expects.  | |
| Property | nOutputs | 
| Number of outputs traverse expects.  | |
Passive part of an optical hybrid.
Simple 2x4 MMI model.
Example
Signal inputs: 2 -For conventional I-Q definitions, signal goes to input 1, LO to input 2
Signal outputs: 4 -Outputs 1 and 2 are in-phase (I+ and I-, respectively) -Outputs 3 and 4 are quadrature (Q+ and Q-, respectively)
Definition at line 25 of file OpticalHybrid_v1.m.
| function OpticalHybrid_v1::OpticalHybrid_v1 | ( | in | params | ) | 
Class constructor.
Class constructor
| param.phase_angle | Hybrid phase angle [rad] [Default: pi/2] | 
| function OpticalHybrid_v1::traverse | ( | in | obj, | 
| in | sig, | ||
| in | lo | ||
| ) | 
Traverse function.
Applies frequency shift to LO, then mixes LO with signal coherently
| sig | Input signal | 
| lo | Input local oscillator (swapping LO and signal swaps I and Q) | 
| out1 | I+ | 
| out2 | I- | 
| out3 | Q+ | 
| out4 | Q- | 
| results | no results | 
 1.8.11