'Get Layout Manager. Dim Lm Set Lm = Document.GetLayoutMgr 'SCRIPT for Layout 1 'Get Current Layout. Dim Layout1 Set Layout1 = Lm.GetCurrentLayout Layout1.Name = "Layout 1" 'Set Total Sweep Iterations Layout1.SetTotalSweepIterations(8) 'Set Current Sweep Iteration Layout1.SetCurrentSweepIteration(1) 'Get Current Canvas. Dim Canvas1 Set Canvas1 = Layout1.GetCurrentCanvas 'SCRIPT for Layout global parameters. Layout1.SetParameterMode "Simulation window", 0 Layout1.SetParameterValue "Simulation window", "Set bit rate" Layout1.SetParameterMode "Reference bit rate", 0 Layout1.SetParameterValue "Reference bit rate", TRUE Layout1.SetParameterMode "Bit rate", 0 Layout1.SetParameterValue "Bit rate", 10e+009 Layout1.SetParameterMode "Time window", 0 Layout1.SetParameterValue "Time window", 12.8e-009 Layout1.SetParameterMode "Sample rate", 0 Layout1.SetParameterValue "Sample rate", 640e+009 Layout1.SetParameterMode "Sequence length", 0 Layout1.SetParameterValue "Sequence length", 128 Layout1.SetParameterMode "Samples per bit", 0 Layout1.SetParameterValue "Samples per bit", 64 Layout1.SetParameterMode "Guard Bits", 0 Layout1.SetParameterValue "Guard Bits", 0 Layout1.SetParameterMode "Symbol rate", 0 Layout1.SetParameterValue "Symbol rate", 2.5e+009 Layout1.SetParameterMode "Number of samples", 0 Layout1.SetParameterValue "Number of samples", 8192 Layout1.SetParameterMode "Cuda GPU", 0 Layout1.SetParameterValue "Cuda GPU", FALSE Layout1.SetParameterMode "Iterations", 0 Layout1.SetParameterValue "Iterations", 1 Layout1.SetParameterMode "Initial delay", 0 Layout1.SetParameterValue "Initial delay", FALSE Layout1.SetParameterMode "Parameterized", 0 Layout1.SetParameterValue "Parameterized", FALSE Layout1.SetParameterMode "Synchronize", 0 Layout1.SetParameterValue "Synchronize", FALSE Layout1.SetParameterMode "Space width X", 0 Layout1.SetParameterValue "Space width X", 50 Layout1.SetParameterMode "Space width Y", 0 Layout1.SetParameterValue "Space width Y", 50 Layout1.SetParameterMode "Grid spacing X", 0 Layout1.SetParameterValue "Grid spacing X", 0.5 Layout1.SetParameterMode "Grid spacing Y", 0 Layout1.SetParameterValue "Grid spacing Y", 0.5 Layout1.SetParameterMode "Convert noise bins", 0 Layout1.SetParameterValue "Convert noise bins", TRUE Layout1.SetParameterMode "Calculate signal tracing", 0 Layout1.SetParameterValue "Calculate signal tracing", TRUE Layout1.SetParameterMode "Power unit", 0 Layout1.SetParameterValue "Power unit", "dBm" Layout1.SetParameterMode "Frequency unit", 0 Layout1.SetParameterValue "Frequency unit", "THz" Layout1.SetParameterMode "Decimal places", 0 Layout1.SetParameterValue "Decimal places", 4 Layout1.SetParameterMode "Sensitivity", 0 Layout1.SetParameterValue "Sensitivity", -100 Layout1.SetParameterMode "Resolution", 0 Layout1.SetParameterValue "Resolution", 0.1 Layout1.SetParameterMode "Calculate noise floor", 0 Layout1.SetParameterValue "Calculate noise floor", FALSE Layout1.SetParameterMode "Interpolation offset", 0 Layout1.SetParameterValue "Interpolation offset", 0.5 'SCRIPT for each component in the Layout. 'SCRIPT for component CW Laser. Dim Canvas1_Component1 Set Canvas1_Component1 = Canvas1.CreateComponent("CW Laser","{6DA31CEE-058F-11D4-93BD-0050DAB7C5D6}",140,80, 34, 34,0) Canvas1_Component1.Name = "CW Laser" Canvas1_Component1.Cost = 0.000000 'Set CW Laser parameters. Canvas1_Component1.SetParameterMode "Frequency", 0 Canvas1_Component1.SetParameterUnit "Frequency", "THz" Canvas1_Component1.SetParameterValue "Frequency", 193.1 Canvas1_Component1.SetParameterMode "Power", 0 Canvas1_Component1.SetParameterUnit "Power", "dBm" Canvas1_Component1.SetParameterValue "Power", 0 Canvas1_Component1.SetParameterMode "Linewidth", 0 Canvas1_Component1.SetParameterValue "Linewidth", 10 Canvas1_Component1.SetParameterMode "Initial phase", 0 Canvas1_Component1.SetParameterValue "Initial phase", 0 Canvas1_Component1.SetParameterMode "Azimuth", 0 Canvas1_Component1.SetParameterValue "Azimuth", 0 Canvas1_Component1.SetParameterMode "Ellipticity", 0 Canvas1_Component1.SetParameterValue "Ellipticity", 0 Canvas1_Component1.SetParameterMode "Enabled", 0 Canvas1_Component1.SetParameterValue "Enabled", TRUE Canvas1_Component1.SetParameterMode "Iterations", 3 Canvas1_Component1.SetParameterScript "Iterations", "Iterations" Canvas1_Component1.SetParameterMode "Parameterized", 3 Canvas1_Component1.SetParameterScript "Parameterized", "Parameterized" Canvas1_Component1.SetParameterMode "Sample rate", 3 Canvas1_Component1.SetParameterUnit "Sample rate", "Hz" Canvas1_Component1.SetParameterScript "Sample rate", "Sample rate" Canvas1_Component1.SetParameterMode "Noise bandwidth", 0 Canvas1_Component1.SetParameterUnit "Noise bandwidth", "THz" Canvas1_Component1.SetParameterValue "Noise bandwidth", 0 Canvas1_Component1.SetParameterMode "Noise threshold", 0 Canvas1_Component1.SetParameterValue "Noise threshold", -100 Canvas1_Component1.SetParameterMode "Noise dynamic", 0 Canvas1_Component1.SetParameterValue "Noise dynamic", 3 Canvas1_Component1.SetParameterMode "Generate random seed", 0 Canvas1_Component1.SetParameterValue "Generate random seed", TRUE Canvas1_Component1.SetParameterMode "Random seed index", 0 Canvas1_Component1.SetParameterValue "Random seed index", 0 Canvas1_Component1.SetParameterMode "Cost", 0 Canvas1_Component1.SetParameterValue "Cost", 0 Canvas1_Component1.SetParameterMode "Order number", 0 Canvas1_Component1.SetParameterValue "Order number", "" Canvas1_Component1.SetParameterMode "Description", 0 Canvas1_Component1.SetParameterValue "Description", "" Canvas1_Component1.SetParameterMode "Include in bill of sale", 0 Canvas1_Component1.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component Linear Polarizer. Dim Canvas1_Component2 Set Canvas1_Component2 = Canvas1.CreateComponent("Linear Polarizer","{F11D0C07-3C7D-11D4-93F0-0050DAB7C5D6}",260,80, 34, 34,0) Canvas1_Component2.Name = "Linear Polarizer" Canvas1_Component2.Cost = 0.000000 'Set Linear Polarizer parameters. Canvas1_Component2.SetParameterMode "Device angle", 0 Canvas1_Component2.SetParameterUnit "Device angle", "deg" Canvas1_Component2.SetParameterValue "Device angle", 0 Canvas1_Component2.SetParameterMode "Enabled", 0 Canvas1_Component2.SetParameterValue "Enabled", TRUE Canvas1_Component2.SetParameterMode "Cost", 0 Canvas1_Component2.SetParameterValue "Cost", 0 Canvas1_Component2.SetParameterMode "Order number", 0 Canvas1_Component2.SetParameterValue "Order number", "" Canvas1_Component2.SetParameterMode "Description", 0 Canvas1_Component2.SetParameterValue "Description", "" Canvas1_Component2.SetParameterMode "Include in bill of sale", 0 Canvas1_Component2.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component Polarization Analyzer. Dim Canvas1_Component3 Set Canvas1_Component3 = Canvas1.CreateComponent("Polarization Analyzer","{F11D0C25-3C7D-11D4-93F0-0050DAB7C5D6}",490,70, 40, 34,0) Canvas1_Component3.Name = "Polarization Analyzer" Canvas1_Component3.Cost = 0.000000 'Set Polarization Analyzer parameters. Canvas1_Component3.SetParameterMode "Lower frequency limit", 0 Canvas1_Component3.SetParameterUnit "Lower frequency limit", "THz" Canvas1_Component3.SetParameterValue "Lower frequency limit", 185 Canvas1_Component3.SetParameterMode "Upper frequency limit", 0 Canvas1_Component3.SetParameterUnit "Upper frequency limit", "THz" Canvas1_Component3.SetParameterValue "Upper frequency limit", 200 Canvas1_Component3.SetParameterMode "Reference frequency", 0 Canvas1_Component3.SetParameterUnit "Reference frequency", "THz" Canvas1_Component3.SetParameterValue "Reference frequency", 193.1 Canvas1_Component3.SetParameterMode "Minimum value", 0 Canvas1_Component3.SetParameterValue "Minimum value", -100 Canvas1_Component3.SetParameterMode "Frequency unit", 0 Canvas1_Component3.SetParameterValue "Frequency unit", "Hz" Canvas1_Component3.SetParameterMode "Limit number of points", 0 Canvas1_Component3.SetParameterValue "Limit number of points", TRUE Canvas1_Component3.SetParameterMode "Max. number of points", 0 Canvas1_Component3.SetParameterValue "Max. number of points", 32000 Canvas1_Component3.SetParameterMode "Invert colors", 0 Canvas1_Component3.SetParameterValue "Invert colors", FALSE Canvas1_Component3.SetParameterMode "Save Stokes parameters", 0 Canvas1_Component3.SetParameterValue "Save Stokes parameters", FALSE Canvas1_Component3.SetParameterMode "MATLAB format", 0 Canvas1_Component3.SetParameterValue "MATLAB format", FALSE Canvas1_Component3.SetParameterMode "Filename", 0 Canvas1_Component3.SetParameterValue "Filename", "Sphere.dat" Canvas1_Component3.SetParameterMode "Enabled", 0 Canvas1_Component3.SetParameterValue "Enabled", TRUE Canvas1_Component3.SetParameterMode "Signal access option", 0 Canvas1_Component3.SetParameterValue "Signal access option", "Index" Canvas1_Component3.SetParameterMode "Convert noise bins", 0 Canvas1_Component3.SetParameterValue "Convert noise bins", TRUE Canvas1_Component3.SetParameterMode "Generate random seed", 0 Canvas1_Component3.SetParameterValue "Generate random seed", TRUE Canvas1_Component3.SetParameterMode "Random seed index", 0 Canvas1_Component3.SetParameterValue "Random seed index", 0 'SCRIPT for component Select. Dim Canvas1_Component4 Set Canvas1_Component4 = Canvas1.CreateComponent("Select","{E138711F-3E0D-11D4-93F3-0050DAB7C5D6}",410,90, 34, 48,0) Canvas1_Component4.Name = "Select" Canvas1_Component4.Cost = 0.000000 'Set Select parameters. Canvas1_Component4.SetParameterMode "Number of input ports", 0 Canvas1_Component4.SetParameterValue "Number of input ports", 4 Canvas1_Component4.SetParameterMode "Selection", 2 Canvas1_Component4.SetSweepParameterValue "Selection",1, 1 Canvas1_Component4.SetSweepParameterValue "Selection",2, 2 Canvas1_Component4.SetSweepParameterValue "Selection",3, 4 Canvas1_Component4.SetSweepParameterValue "Selection",4, 1 Canvas1_Component4.SetSweepParameterValue "Selection",5, 4 Canvas1_Component4.SetSweepParameterValue "Selection",6, 2 Canvas1_Component4.SetSweepParameterValue "Selection",7, 4 Canvas1_Component4.SetSweepParameterValue "Selection",8, 4 'SCRIPT for component CW Laser_1. Dim Canvas1_Component5 Set Canvas1_Component5 = Canvas1.CreateComponent("CW Laser","{6DA31CEE-058F-11D4-93BD-0050DAB7C5D6}",150,170, 34, 34,0) Canvas1_Component5.Name = "CW Laser_1" Canvas1_Component5.Cost = 0.000000 'Set CW Laser_1 parameters. Canvas1_Component5.SetParameterMode "Frequency", 0 Canvas1_Component5.SetParameterUnit "Frequency", "THz" Canvas1_Component5.SetParameterValue "Frequency", 193.1 Canvas1_Component5.SetParameterMode "Power", 0 Canvas1_Component5.SetParameterUnit "Power", "dBm" Canvas1_Component5.SetParameterValue "Power", 0 Canvas1_Component5.SetParameterMode "Linewidth", 0 Canvas1_Component5.SetParameterValue "Linewidth", 10 Canvas1_Component5.SetParameterMode "Initial phase", 0 Canvas1_Component5.SetParameterValue "Initial phase", 0 Canvas1_Component5.SetParameterMode "Azimuth", 0 Canvas1_Component5.SetParameterValue "Azimuth", 0 Canvas1_Component5.SetParameterMode "Ellipticity", 0 Canvas1_Component5.SetParameterValue "Ellipticity", 0 Canvas1_Component5.SetParameterMode "Enabled", 0 Canvas1_Component5.SetParameterValue "Enabled", TRUE Canvas1_Component5.SetParameterMode "Iterations", 3 Canvas1_Component5.SetParameterScript "Iterations", "Iterations" Canvas1_Component5.SetParameterMode "Parameterized", 3 Canvas1_Component5.SetParameterScript "Parameterized", "Parameterized" Canvas1_Component5.SetParameterMode "Sample rate", 3 Canvas1_Component5.SetParameterUnit "Sample rate", "Hz" Canvas1_Component5.SetParameterScript "Sample rate", "Sample rate" Canvas1_Component5.SetParameterMode "Noise bandwidth", 0 Canvas1_Component5.SetParameterUnit "Noise bandwidth", "THz" Canvas1_Component5.SetParameterValue "Noise bandwidth", 0 Canvas1_Component5.SetParameterMode "Noise threshold", 0 Canvas1_Component5.SetParameterValue "Noise threshold", -100 Canvas1_Component5.SetParameterMode "Noise dynamic", 0 Canvas1_Component5.SetParameterValue "Noise dynamic", 3 Canvas1_Component5.SetParameterMode "Generate random seed", 0 Canvas1_Component5.SetParameterValue "Generate random seed", TRUE Canvas1_Component5.SetParameterMode "Random seed index", 0 Canvas1_Component5.SetParameterValue "Random seed index", 0 Canvas1_Component5.SetParameterMode "Cost", 0 Canvas1_Component5.SetParameterValue "Cost", 0 Canvas1_Component5.SetParameterMode "Order number", 0 Canvas1_Component5.SetParameterValue "Order number", "" Canvas1_Component5.SetParameterMode "Description", 0 Canvas1_Component5.SetParameterValue "Description", "" Canvas1_Component5.SetParameterMode "Include in bill of sale", 0 Canvas1_Component5.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component Linear Polarizer_1. Dim Canvas1_Component6 Set Canvas1_Component6 = Canvas1.CreateComponent("Linear Polarizer","{F11D0C07-3C7D-11D4-93F0-0050DAB7C5D6}",270,170, 34, 34,0) Canvas1_Component6.Name = "Linear Polarizer_1" Canvas1_Component6.Cost = 0.000000 'Set Linear Polarizer_1 parameters. Canvas1_Component6.SetParameterMode "Device angle", 0 Canvas1_Component6.SetParameterUnit "Device angle", "deg" Canvas1_Component6.SetParameterValue "Device angle", 90 Canvas1_Component6.SetParameterMode "Enabled", 0 Canvas1_Component6.SetParameterValue "Enabled", TRUE Canvas1_Component6.SetParameterMode "Cost", 0 Canvas1_Component6.SetParameterValue "Cost", 0 Canvas1_Component6.SetParameterMode "Order number", 0 Canvas1_Component6.SetParameterValue "Order number", "" Canvas1_Component6.SetParameterMode "Description", 0 Canvas1_Component6.SetParameterValue "Description", "" Canvas1_Component6.SetParameterMode "Include in bill of sale", 0 Canvas1_Component6.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component CW Laser_2. Dim Canvas1_Component7 Set Canvas1_Component7 = Canvas1.CreateComponent("CW Laser","{6DA31CEE-058F-11D4-93BD-0050DAB7C5D6}",150,250, 34, 34,0) Canvas1_Component7.Name = "CW Laser_2" Canvas1_Component7.Cost = 0.000000 'Set CW Laser_2 parameters. Canvas1_Component7.SetParameterMode "Frequency", 0 Canvas1_Component7.SetParameterUnit "Frequency", "THz" Canvas1_Component7.SetParameterValue "Frequency", 193.1 Canvas1_Component7.SetParameterMode "Power", 0 Canvas1_Component7.SetParameterUnit "Power", "dBm" Canvas1_Component7.SetParameterValue "Power", 0 Canvas1_Component7.SetParameterMode "Linewidth", 0 Canvas1_Component7.SetParameterValue "Linewidth", 10 Canvas1_Component7.SetParameterMode "Initial phase", 0 Canvas1_Component7.SetParameterValue "Initial phase", 0 Canvas1_Component7.SetParameterMode "Azimuth", 0 Canvas1_Component7.SetParameterValue "Azimuth", 0 Canvas1_Component7.SetParameterMode "Ellipticity", 0 Canvas1_Component7.SetParameterValue "Ellipticity", 0 Canvas1_Component7.SetParameterMode "Enabled", 0 Canvas1_Component7.SetParameterValue "Enabled", TRUE Canvas1_Component7.SetParameterMode "Iterations", 3 Canvas1_Component7.SetParameterScript "Iterations", "Iterations" Canvas1_Component7.SetParameterMode "Parameterized", 3 Canvas1_Component7.SetParameterScript "Parameterized", "Parameterized" Canvas1_Component7.SetParameterMode "Sample rate", 3 Canvas1_Component7.SetParameterUnit "Sample rate", "Hz" Canvas1_Component7.SetParameterScript "Sample rate", "Sample rate" Canvas1_Component7.SetParameterMode "Noise bandwidth", 0 Canvas1_Component7.SetParameterUnit "Noise bandwidth", "THz" Canvas1_Component7.SetParameterValue "Noise bandwidth", 0 Canvas1_Component7.SetParameterMode "Noise threshold", 0 Canvas1_Component7.SetParameterValue "Noise threshold", -100 Canvas1_Component7.SetParameterMode "Noise dynamic", 0 Canvas1_Component7.SetParameterValue "Noise dynamic", 3 Canvas1_Component7.SetParameterMode "Generate random seed", 0 Canvas1_Component7.SetParameterValue "Generate random seed", TRUE Canvas1_Component7.SetParameterMode "Random seed index", 0 Canvas1_Component7.SetParameterValue "Random seed index", 0 Canvas1_Component7.SetParameterMode "Cost", 0 Canvas1_Component7.SetParameterValue "Cost", 0 Canvas1_Component7.SetParameterMode "Order number", 0 Canvas1_Component7.SetParameterValue "Order number", "" Canvas1_Component7.SetParameterMode "Description", 0 Canvas1_Component7.SetParameterValue "Description", "" Canvas1_Component7.SetParameterMode "Include in bill of sale", 0 Canvas1_Component7.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component Linear Polarizer_2. Dim Canvas1_Component8 Set Canvas1_Component8 = Canvas1.CreateComponent("Linear Polarizer","{F11D0C07-3C7D-11D4-93F0-0050DAB7C5D6}",270,250, 34, 34,0) Canvas1_Component8.Name = "Linear Polarizer_2" Canvas1_Component8.Cost = 0.000000 'Set Linear Polarizer_2 parameters. Canvas1_Component8.SetParameterMode "Device angle", 0 Canvas1_Component8.SetParameterUnit "Device angle", "deg" Canvas1_Component8.SetParameterValue "Device angle", -45 Canvas1_Component8.SetParameterMode "Enabled", 0 Canvas1_Component8.SetParameterValue "Enabled", TRUE Canvas1_Component8.SetParameterMode "Cost", 0 Canvas1_Component8.SetParameterValue "Cost", 0 Canvas1_Component8.SetParameterMode "Order number", 0 Canvas1_Component8.SetParameterValue "Order number", "" Canvas1_Component8.SetParameterMode "Description", 0 Canvas1_Component8.SetParameterValue "Description", "" Canvas1_Component8.SetParameterMode "Include in bill of sale", 0 Canvas1_Component8.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component CW Laser_3. Dim Canvas1_Component9 Set Canvas1_Component9 = Canvas1.CreateComponent("CW Laser","{6DA31CEE-058F-11D4-93BD-0050DAB7C5D6}",160,340, 34, 34,0) Canvas1_Component9.Name = "CW Laser_3" Canvas1_Component9.Cost = 0.000000 'Set CW Laser_3 parameters. Canvas1_Component9.SetParameterMode "Frequency", 0 Canvas1_Component9.SetParameterUnit "Frequency", "THz" Canvas1_Component9.SetParameterValue "Frequency", 193.1 Canvas1_Component9.SetParameterMode "Power", 0 Canvas1_Component9.SetParameterUnit "Power", "dBm" Canvas1_Component9.SetParameterValue "Power", 0 Canvas1_Component9.SetParameterMode "Linewidth", 0 Canvas1_Component9.SetParameterValue "Linewidth", 10 Canvas1_Component9.SetParameterMode "Initial phase", 0 Canvas1_Component9.SetParameterValue "Initial phase", 0 Canvas1_Component9.SetParameterMode "Azimuth", 0 Canvas1_Component9.SetParameterValue "Azimuth", 0 Canvas1_Component9.SetParameterMode "Ellipticity", 0 Canvas1_Component9.SetParameterValue "Ellipticity", 0 Canvas1_Component9.SetParameterMode "Enabled", 0 Canvas1_Component9.SetParameterValue "Enabled", TRUE Canvas1_Component9.SetParameterMode "Iterations", 3 Canvas1_Component9.SetParameterScript "Iterations", "Iterations" Canvas1_Component9.SetParameterMode "Parameterized", 3 Canvas1_Component9.SetParameterScript "Parameterized", "Parameterized" Canvas1_Component9.SetParameterMode "Sample rate", 3 Canvas1_Component9.SetParameterUnit "Sample rate", "Hz" Canvas1_Component9.SetParameterScript "Sample rate", "Sample rate" Canvas1_Component9.SetParameterMode "Noise bandwidth", 0 Canvas1_Component9.SetParameterUnit "Noise bandwidth", "THz" Canvas1_Component9.SetParameterValue "Noise bandwidth", 0 Canvas1_Component9.SetParameterMode "Noise threshold", 0 Canvas1_Component9.SetParameterValue "Noise threshold", -100 Canvas1_Component9.SetParameterMode "Noise dynamic", 0 Canvas1_Component9.SetParameterValue "Noise dynamic", 3 Canvas1_Component9.SetParameterMode "Generate random seed", 0 Canvas1_Component9.SetParameterValue "Generate random seed", TRUE Canvas1_Component9.SetParameterMode "Random seed index", 0 Canvas1_Component9.SetParameterValue "Random seed index", 0 Canvas1_Component9.SetParameterMode "Cost", 0 Canvas1_Component9.SetParameterValue "Cost", 0 Canvas1_Component9.SetParameterMode "Order number", 0 Canvas1_Component9.SetParameterValue "Order number", "" Canvas1_Component9.SetParameterMode "Description", 0 Canvas1_Component9.SetParameterValue "Description", "" Canvas1_Component9.SetParameterMode "Include in bill of sale", 0 Canvas1_Component9.SetParameterValue "Include in bill of sale", TRUE 'SCRIPT for component Linear Polarizer_3. Dim Canvas1_Component10 Set Canvas1_Component10 = Canvas1.CreateComponent("Linear Polarizer","{F11D0C07-3C7D-11D4-93F0-0050DAB7C5D6}",280,340, 34, 34,0) Canvas1_Component10.Name = "Linear Polarizer_3" Canvas1_Component10.Cost = 0.000000 'Set Linear Polarizer_3 parameters. Canvas1_Component10.SetParameterMode "Device angle", 0 Canvas1_Component10.SetParameterUnit "Device angle", "deg" Canvas1_Component10.SetParameterValue "Device angle", 45 Canvas1_Component10.SetParameterMode "Enabled", 0 Canvas1_Component10.SetParameterValue "Enabled", TRUE Canvas1_Component10.SetParameterMode "Cost", 0 Canvas1_Component10.SetParameterValue "Cost", 0 Canvas1_Component10.SetParameterMode "Order number", 0 Canvas1_Component10.SetParameterValue "Order number", "" Canvas1_Component10.SetParameterMode "Description", 0 Canvas1_Component10.SetParameterValue "Description", "" Canvas1_Component10.SetParameterMode "Include in bill of sale", 0 Canvas1_Component10.SetParameterValue "Include in bill of sale", TRUE 'Set Total Sweep Iterations Layout1.SetTotalSweepIterations(8) 'Set Current Sweep Iteration Layout1.SetCurrentSweepIteration(1) 'Attach Monitors. Canvas1_Component2.GetOutputPort(1).CreateMonitor Canvas1_Component4.GetOutputPort(1).CreateMonitor Canvas1_Component6.GetOutputPort(1).CreateMonitor Canvas1_Component8.GetOutputPort(1).CreateMonitor Canvas1_Component10.GetOutputPort(1).CreateMonitor 'Connecting components. Canvas1_Component1.GetOutputPort(1).Connect(Canvas1_Component2.GetInputPort(1)) Canvas1_Component2.GetOutputPort(1).Connect(Canvas1_Component4.GetInputPort(1)) Canvas1_Component4.GetOutputPort(1).ConnectVisualizer(Canvas1_Component3.GetInputPort(1)) Canvas1_Component5.GetOutputPort(1).Connect(Canvas1_Component6.GetInputPort(1)) Canvas1_Component6.GetOutputPort(1).Connect(Canvas1_Component4.GetInputPort(2)) Canvas1_Component7.GetOutputPort(1).Connect(Canvas1_Component8.GetInputPort(1)) Canvas1_Component8.GetOutputPort(1).Connect(Canvas1_Component4.GetInputPort(3)) Canvas1_Component9.GetOutputPort(1).Connect(Canvas1_Component10.GetInputPort(1)) Canvas1_Component10.GetOutputPort(1).Connect(Canvas1_Component4.GetInputPort(4)) '----------------------------------------------------------------- 'OptiSystem Script: Nested loops with 2 parameters and 3 results ' Parameters and Results can be exported to Text '----------------------------------------------------------------- FileName = "Z:\Results1.txt" '----------------------------------------------------------------- 'Global parameters - Parameter and Result names '----------------------------------------------------------------- ComponentName1 = "Polarization Analyzer" ResultName1 = "Sampled signal azimuth (deg)" '----------------------------------------------------------------- 'Global parameters - Sweep ranges for parameters '----------------------------------------------------------------- 'Create FileSystemObject '----------------------------------------------------------------- Dim FileSystemObject Dim OutF Set FileSystemObject = CreateObject("Scripting.FileSystemObject") Set OutF = FileSystemObject.CreateTextFile(FileName, True) '----------------------------------------------------------------- ' OptiSystem SDK specifics - access components and visualizers '----------------------------------------------------------------- Dim Component1 Set Component1 = Canvas1.GetComponentByName(ComponentName1) '----------------------------------------------------------------- ' Calculation loop - access parameters and results '----------------------------------------------------------------- 'Calculate Document.CalculateProject TRUE , TRUE 'Access visualizer results Set Result1 = Component1.GetResult( ResultName1 ) 'Access result values ResultValue1 = Result1.GetValue( 1 ) 'Send parameters and results to file TextLine = "" TextLine = TextLine + CStr( ResultValue1 ) + " " OutF.WriteLine( TextLine ) '----------------------------------------------------------------- ' Close file '----------------------------------------------------------------- OutF.Close