def _default_Port(self):
     Port = AutoTransitionPorts(contents=self.couplingWG,
                                port_labels=["in"],
                                trace_template=self.wg_t)
     layout_Port = Port.Layout(
         transition_length=self.tlport)  #.visualize(annotate=True)
     return Port
Exemple #2
0
 def _default_WG2(self):
     Port = AutoTransitionPorts(name="ports{}".format(str(self.width)),
                                contents=self.WG1,
                                port_labels=["out"],
                                trace_template=self.trace_template)
     Port.Layout(transition_length=300)  # .visualize(annotate=True)
     return Port
Exemple #3
0
    def _default_mmi1_12(self):
        mmi12 = MMI1x2Tapered(
            mmi_trace_template=self.mmi_trace_template,
            input_trace_template=self.mmi_access_template,
            output_trace_template=self.mmi_access_template,
            trace_template=self.wg_sm,
            port_labels=["out1", "out2"],
        )

        mmi12.Layout(transition_length=200.0, length=97.0, trace_spacing=11.0)

        mmi1_12_taper = AutoTransitionPorts(contents=mmi12,
                                            port_labels=['in'],
                                            trace_template=self.wg_sm2)
        mmi1_12_taper.Layout(transition_length=200.0)

        return mmi1_12_taper
Exemple #4
0
    def _default_mmi1_21(self):
        mmi21 = MMI2x1Tapered(
            mmi_trace_template=self.mmi_trace_template,
            input_trace_template=self.mmi_access_template,
            output_trace_template=self.mmi_access_template,
            trace_template=self.wg_sm,
            port_labels=["in1", "in2"],
        )
        mmi21.Layout(transition_length=200.0,
                     length=self.length,
                     trace_spacing=11.0)

        mmi1_12_taper = AutoTransitionPorts(name="MMI21",
                                            contents=mmi21,
                                            port_labels=['out'],
                                            trace_template=self.wg_sm2)
        mmi1_12_taper.Layout(transition_length=200.0)

        return mmi1_12_taper
Exemple #5
0
    def _default_mmi1_21(self):
        mmi21 = MMI2x1Tapered(
            mmi_trace_template=self.mmi_trace_template,
            input_trace_template=self.mmi_access_template,
            output_trace_template=self.mmi_access_template,
            trace_template=self.wg_sm,
            port_labels=["in1", "in2"],
        )
        mmi21.Layout(transition_length=200.0,
                     length=self.length,
                     trace_spacing=11.0)  #.visualize(annotate=True)

        mmi1_12_taper = AutoTransitionPorts(name="MMI21{}".format(
            str(np.random.randint(0, 10000))),
                                            contents=mmi21,
                                            port_labels=['out'],
                                            trace_template=self.wg_sm2)
        mmi1_12_taper.Layout(
            transition_length=200.0)  #.visualize(annotate=True)

        return mmi1_12_taper
Exemple #6
0
    def _default_mmi1_12(self):
        mmi12 = MMI1x2Tapered(
            mmi_trace_template=self.mmi_trace_template,
            input_trace_template=self.mmi_access_template,
            output_trace_template=self.mmi_access_template,
            trace_template=self.wg_sm,
            port_labels=["out1", "out2"],
        )

        mmi12.Layout(transition_length=200.0,
                     length=self.length,
                     trace_spacing=11.0)

        mmi1_12_taper = AutoTransitionPorts(name="MMI12{}".format(
            str(np.random.randint(0, 10000))),
                                            contents=mmi12,
                                            port_labels=['in'],
                                            trace_template=self.wg_sm2)
        mmi1_12_taper.Layout(transition_length=200.0)

        return mmi1_12_taper
Exemple #7
0
layout_WG3 = WG3.Layout(start_position=(50.0, 0.0), end_position=(350.0, 0.0))

mmi1_12 = MMI1x2Tapered(
    mmi_trace_template=mmi_trace_template,
    input_trace_template=mmi_access_template,
    output_trace_template=mmi_access_template,
    port_labels=["out1", "out2"],
    trace_template=wg_sm,
)

layout_mmi1_12 = mmi1_12.Layout(transition_length=200.0,
                                length=97.0,
                                trace_spacing=11.0)

mmi1_12_taper = AutoTransitionPorts(contents=mmi1_12,
                                    port_labels=['in'],
                                    trace_template=wg_sm2)
layout12 = mmi1_12_taper.Layout(transition_length=200)

port_lable = ["in1", "in2"]
mmi1_21 = MMI2x1Tapered(
    mmi_trace_template=mmi_trace_template,
    input_trace_template=mmi_access_template,
    output_trace_template=mmi_access_template,
    port_labels=port_lable,
    trace_template=wg_sm,
)

layout_mmi1_21 = mmi1_21.Layout(transition_length=200.0,
                                length=97.0,
                                trace_spacing=11.0)
Exemple #8
0
 def _default_tapered_gc(self):
     tapered_gc = AutoTransitionPorts(contents=self.gc, trace_template=self.trace_template, port_labels=["out"])
     return tapered_gc