begin <pdApplicationInfo(1.1)>
  FIMMWAVE 5.4.1 // applicationname applicationversion
  1030 // licensenumber
  6.1 (64 bit) 12136.43 // windowsversion RAM_in_MB 
  12/09/2012 14:14:54 // savedate(dd/mm/yyyy) savetime(hh:mm:ss)
end
begin <fimmwave_prj(1.0)> "FIMMPROP_Tutorial"
  begin <rwguideNode(1.0)> "Simple Ridge"
    begin <rwg_wguide(2.0)>
      "refbase.mat" -1000 // material database 
      METALWALL 0           // lhs boundary
      METALWALL 0           
      MAGWALL 0             
      MAGWALL 0             
      6 0.68 1
      4 0.2 1
      6 0.68 1
      ENDSLICELIST
      begin <slabwg(3.3)>
        0 AlGaAs(0.4)                      0 0     0
        0.66 AlGaAs(0.2)                   0 0     0
        0.44 GaAs(0)                       0 0     0
        1.5 AlGaAs(0.2)                    0 0     0
      end
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      20 0 60 60  // maxNmodes molabOpt nx ny
      1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <rwguideNode(1.0)> "TiltedFacetWaveguide"
    begin <rwg_wguide(2.0)>
      "refbase.mat" -1000 
      METALWALL 0           
      METALWALL 0           
      MAGWALL 0             
      MAGWALL 0             
      5 0.68 1
      4 0.2 1
      5 0.68 1
      ENDSLICELIST
      begin <slabwg(3.3)>
        0 AlGaAs(0.4)                      0 0     0
        0.66 AlGaAs(0.2)                   0 0     0
        0.44 GaAs(0)                       0 0     0
        1.5 AlGaAs(0.2)                    0 0     0
      end
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      30 0 60 60  // maxNmodes molabOpt nx ny
      1.103 0 RTE 0 0 V2 20 3 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <rwguideNode(1.0)> "Empty Section"
    begin <rwg_wguide(2.0)>
      "refbase.mat" -1000 
      METALWALL 0           
      METALWALL 0           
      METALWALL 0           
      METALWALL 0           
      14 0 1
      ENDSLICELIST
      begin <slabwg(3.3)>
        2.6 1 0                            0 0     0
      end
    end
    begin <molab_parms(1.3)>
      1 0 50 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      50 0 60 60  // maxNmodes molabOpt nx ny
      1.103 0 REFFIDX 0 0 V3 0 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <rwguideNode(1.0)> "ModeConverter1"
    begin <rwg_wguide(2.0)>
      "refbase.mat" -1000 
      METALWALL 0           
      METALWALL 0           
      MAGWALL 0             
      MAGWALL 0             
      5 0.68 1
      2 0.5 1
      2 0.2 1
      5 0.68 1
      ENDSLICELIST
      begin <slabwg(3.3)>
        0 AlGaAs(0.4)                      0 0     0
        0.66 AlGaAs(0.2)                   0 0     0
        0.57 GaAs(0)                       0 0     0
        1.5 AlGaAs(0.2)                    0 0     0
      end
    end
    begin <molab_parms(1.3)>
      1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      2 0 60 60  // maxNmodes molabOpt nx ny
      1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <rwguideNode(1.0)> "ModeConverter2"
    begin <rwg_wguide(2.0)>
      "refbase.mat" -1000 
      METALWALL 0           
      METALWALL 0           
      MAGWALL 0             
      MAGWALL 0             
      5 0.68 1
      2 0.2 1
      2 0.5 1
      5 0.68 1
      ENDSLICELIST
      begin <slabwg(3.3)>
        0 AlGaAs(0.4)                      0 0     0
        0.66 AlGaAs(0.2)                   0 0     0
        0.57 GaAs(0)                       0 0     0
        1.5 AlGaAs(0.2)                    0 0     0
      end
    end
    begin <molab_parms(1.3)>
      1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      2 0 60 60  // maxNmodes molabOpt nx ny
      1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <fwguideNode(1.0)> "fibre1_fwg"
    begin <fwg_wguide(3.0)>
      "" -1000 
      0               
      1 
      begin <fwg_layers(1.2)>
        //w        nr       alpha    cfseg   cornerp 
        12 1.47 0                        0      0 
        7 1.46 0                         0      0 
        5 1 0                            0      0 
        METALWALL 0 
      end
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      50 0 60 60  // maxNmodes molabOpt nx ny
      1.55 0 RGFSVEC 0 0 V1 1 1 2 2  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <fwguideNode(1.0)> "fibre2_fwg"
    begin <fwg_wguide(3.0)>
      "" -1000 
      0               
      1 
      begin <fwg_layers(1.2)>
        //w        nr       alpha    cfseg   cornerp 
        0.5 1.47 0                       0      0 
        7 1.46 0                         0      0 
        16.5 1 0                         0      0 
        METALWALL 0 
      end
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      30 0 60 60  // maxNmodes molabOpt nx ny
      1.55 0 RGFSVEC 0 0 V1 1 1 2 2  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <slabwgNode(1.1)> "EpitaxGrow AlGaAs"
    "refbase.mat" -1000 
    begin <slabwg(3.3)>
      0 AlGaAs(0.4)                      0 0     0
      0.66 AlGaAs(0.2)                   0 0     0
      0.44 GaAs(0)                       0 0     0
      1.5 AlGaAs(0.2)                    0 0     0
    end
  end
  begin <slabwgNode(1.1)> "EpitaxGrow SOI"
    "refbase.mat" -1000 
    begin <slabwg(3.3)>
      1.5 SiO2(0.2)                      0 
    end
  end
  begin <FPdeviceNode(1.2)> "MMI Coupler"
    1.103 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    21 0.68 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow AlGaAs" "" 300 "" 0 "" "" "" "" 1 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          0 0 // isMirrored etchGrowType
          0 3 "" "0" // widthType widthL widthR "widthFn"
          1 0 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.2" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          1 "" "" ""  // maxNmodes molabOpt nx ny
          1.103 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow AlGaAs" "" 410 "" 0 "" "" "" "" 1 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          0 0 // isMirrored etchGrowType
          0 15 "" "0" // widthType widthL widthR "widthFn"
          1 0 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.2" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.103 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow AlGaAs" "" 300 "" 0 "" "" "" "" 1 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 3 "" "0" // widthType widthL widthR "widthFn"
          0 4 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.2" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.103 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPioSection(1.0)>
        2 // numPorts
        // list of ports follow
        8 -4 1 0 // portWidth portPosn portNModes portUseCurv
        8 4 1 0 // portWidth portPosn portNModes portUseCurv
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      1 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 120  // maxNmodes molabOpt nx ny
      1.103 0 RTE 1 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPdeviceNode(1.2)> "Offset"
    1.103 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    5 0.3 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPWGsection(1.1)>
        "../Simple Ridge" 10  // "wgfilename" length
        begin <molab_parms(1.3)>
          0 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          20 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 3 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
      begin <FPsimpleJoint(1.2)>
        2.4 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPWGsection(1.1)>
        "../Simple Ridge" 100  // "wgfilename" length
        begin <molab_parms(1.3)>
          0 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          20 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 3 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      1 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 90  // maxNmodes molabOpt nx ny
      1.103 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPdeviceNode(1.2)> "Tilted Facet"
    1.55 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    5 0.3 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPWGsection(1.1)>
        "../TiltedFacetWaveguide" 60  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          30 0 60 60  // maxNmodes molabOpt nx ny
          1.55 0 RTE 0 0 V2 20 3 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 6 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPWGsection(1.1)>
        "../Empty Section" 20  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 50 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          50 0 60 60  // maxNmodes molabOpt nx ny
          1.55 0 REFFIDX 0 0 V3 0 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      2 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 90  // maxNmodes molabOpt nx ny
      1.55 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPdeviceNode(1.2)> "Period"
    1.55 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    5 0.3 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPWGsection(1.1)>
        "../ModeConverter1" 0  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          2 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPWGsection(1.1)>
        "../ModeConverter2" 0  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          2 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      1 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 90  // maxNmodes molabOpt nx ny
      1.55 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPdeviceNode(1.2)> "Mode Converter"
    1.103 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    5 0.3 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPWGsection(1.1)>
        "../ModeConverter1" 1  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          2 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPsimplePeriodic(1.1)>
        3 "../Period" 0 //nperiod cdsref jointMethod
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPWGsection(1.1)>
        "../ModeConverter2" 500  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          2 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      1 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 90  // maxNmodes molabOpt nx ny
      1.103 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPScanNode(1.2)> "Length Scanner"
       "Mode Converter" //cdname1
       "REPLICA" //cdname2
       100 //nstep
       0 270 //xstart,xend
       "Period Half Length (um)" //xlabel
       0 //storeSmat
       0 //scannermode
    begin <FPdeviceNode(1.2)> "REPLICA"
      1.103 // lambda [um]
      "refbase.mat" // materialDatabase
      METALWALL 0           
      METALWALL 0           
      MAGWALL 0             
      MAGWALL 0             
      1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
      5 0.3 // psWidth[um] psEtchDepth[um]
      begin <FPcomponent(2.0)>
        //list of subelements follow:
        begin <FPWGsection(1.1)>
          "ModeConverter1 (replica)" 1  // "wgfilename" length
          begin <molab_parms(1.3)>
            1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
            N(1e+050) N(-1e+050)  // evstart evend
            2 0 60 60  // maxNmodes molabOpt nx ny
            1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
            // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          end
          // LHS rtRegList follows
          begin <RTregionList(1.0)>
            //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
          
          end
          // RHS rtRegList follows
          begin <RTregionList(1.0)>
            //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
          
          end
        end
        begin <FPsimpleJoint(1.2)>
          0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
        end
        begin <FPsimplePeriodic(1.1)>
          3 "Period (replica)" 0 //nperiod cdsref jointMethod
        end
        begin <FPsimpleJoint(1.2)>
          0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
        end
        begin <FPWGsection(1.1)>
          "ModeConverter2 (replica)" 500  // "wgfilename" length
          begin <molab_parms(1.3)>
            1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
            N(1e+050) N(-1e+050)  // evstart evend
            2 0 60 60  // maxNmodes molabOpt nx ny
            1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
            // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          end
          // LHS rtRegList follows
          begin <RTregionList(1.0)>
            //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
          
          end
          // RHS rtRegList follows
          begin <RTregionList(1.0)>
            //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
          
          end
        end
      end
      //lhs input field
      begin <FPInputDefinition(2.2)>
        1 //input type
        1 //single mode input
      end
      //rhs input field
      begin <FPInputDefinition(2.2)>
        1 //input type
        0 //single mode input
      end
      begin <molab_parms(1.3)>
        1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
        N(1e+050) N(-1e+050)  // evstart evend
        10 0 120 90  // maxNmodes molabOpt nx ny
        1.103 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      end
      begin <rwguideNode(1.0)> "ModeConverter1 (replica)"
        begin <rwg_wguide(2.0)>
          "refbase.mat" -1000 
          METALWALL 0           
          METALWALL 0           
          MAGWALL 0             
          MAGWALL 0             
          5 0.68 1
          2 0.5 1
          2 0.2 1
          5 0.68 1
          ENDSLICELIST
          begin <slabwg(3.3)>
            0 AlGaAs(0.4)                      0 0     0
            0.66 AlGaAs(0.2)                   0 0     0
            0.57 GaAs(0)                       0 0     0
            1.5 AlGaAs(0.2)                    0 0     0
          end
        end
        begin <molab_parms(1.3)>
          1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          2 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPdeviceNode(1.2)> "Period (replica)"
        1.55 // lambda [um]
        "refbase.mat" // materialDatabase
        METALWALL 0           
        METALWALL 0           
        MAGWALL 0             
        MAGWALL 0             
        1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
        5 0.3 // psWidth[um] psEtchDepth[um]
        begin <FPcomponent(2.0)>
          //list of subelements follow:
          begin <FPWGsection(1.1)>
            "../ModeConverter1 (replica)" 270  // "wgfilename" length
            begin <molab_parms(1.3)>
              1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
              N(1e+050) N(-1e+050)  // evstart evend
              2 0 60 60  // maxNmodes molabOpt nx ny
              1.55 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
              // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
            end
            // LHS rtRegList follows
            begin <RTregionList(1.0)>
              //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
            
            end
            // RHS rtRegList follows
            begin <RTregionList(1.0)>
              //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
            
            end
          end
          begin <FPsimpleJoint(1.2)>
            0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
          end
          begin <FPWGsection(1.1)>
            "../ModeConverter2 (replica)" 270  // "wgfilename" length
            begin <molab_parms(1.3)>
              1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
              N(1e+050) N(-1e+050)  // evstart evend
              2 0 60 60  // maxNmodes molabOpt nx ny
              1.55 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
              // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
            end
            // LHS rtRegList follows
            begin <RTregionList(1.0)>
              //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
            
            end
            // RHS rtRegList follows
            begin <RTregionList(1.0)>
              //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
            
            end
          end
        end
        //lhs input field
        begin <FPInputDefinition(2.2)>
          1 //input type
          1 //single mode input
        end
        //rhs input field
        begin <FPInputDefinition(2.2)>
          1 //input type
          0 //single mode input
        end
        begin <molab_parms(1.3)>
          1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          10 0 120 90  // maxNmodes molabOpt nx ny
          1.55 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <rwguideNode(1.0)> "ModeConverter2 (replica)"
        begin <rwg_wguide(2.0)>
          "refbase.mat" -1000 
          METALWALL 0           
          METALWALL 0           
          MAGWALL 0             
          MAGWALL 0             
          5 0.68 1
          2 0.2 1
          2 0.5 1
          5 0.68 1
          ENDSLICELIST
          begin <slabwg(3.3)>
            0 AlGaAs(0.4)                      0 0     0
            0.66 AlGaAs(0.2)                   0 0     0
            0.57 GaAs(0)                       0 0     0
            1.5 AlGaAs(0.2)                    0 0     0
          end
        end
        begin <molab_parms(1.3)>
          1 0 100 100 // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          2 0 60 60  // maxNmodes molabOpt nx ny
          1.103 0 RTE 0 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
    end
  end
  begin <FPdeviceNode(1.2)> "Directional Coupler"
    1.103 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    23 0.66 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow AlGaAs" "" 50 "" 0 "" "" "" "" 1 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 1.2 "" "0" // widthType widthL widthR "widthFn"
          0 1.6 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.26" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 1.2 "" "0" // widthType widthL widthR "widthFn"
          0 8.2 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.26" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.103 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow AlGaAs" "" 50 "" 0 "" "" "" "" 0 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 1.2 "" "0" // widthType widthL widthR "widthFn"
          3 8.2 6.3 "0" // offsetType offsetL offsetR "offsetFn"
          "0.26" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 1.2 "" "0" // widthType widthL widthR "widthFn"
          3 1.6 3.1 "0" // offsetType offsetL offsetR "offsetFn"
          "0.26" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.103 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow AlGaAs" "" 380 "" 0 "" "" "" "" 1 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 1.2 "" "0" // widthType widthL widthR "widthFn"
          0 6.3 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.26" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <FPPath(1.0)>
          1 0 // isMirrored etchGrowType
          0 1.2 "" "0" // widthType widthL widthR "widthFn"
          0 3.1 0 "0" // offsetType offsetL offsetR "offsetFn"
          "0.26" // "depth"
          "0" // "growThickness"
          1 0 // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.103 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPRefSection(1.1)>
        1 "3" // zFlip refSectionID
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 0 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPRefSection(1.1)>
        0 "1" // zFlip refSectionID
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      1 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      4 0 120 120  // maxNmodes molabOpt nx ny
      1.103 0 RVEC 1 0 V2 30 0 1 300 300 15 25 0 5 5  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPdeviceNode(1.2)> "Ring Coupler"
    1.55 // lambda [um]
    "refbase.mat" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    5 0.3 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPioSection(1.0)>
        2 // numPorts
        // list of ports follow
        1.5 -0.624 2 0 // portWidth portPosn portNModes portUseCurv
        0.96 0.609 2 0 // portWidth portPosn portNModes portUseCurv
      end
      begin <FPPlanarSection(3.1)>
        "../EpitaxGrow SOI" 3 7.5 0 "" 0 0.02 0.02 "" 0 //"swgname" width length depth joint_method int_method tolerance minSTPfrac enableEVscan isStraight
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        UNDEFINED "" ""       
        "Z" //"zCoordName"
        BEGINPARS
        ENDPARS
        begin <FPPath(1.0)>
          0 1 // isMirrored etchGrowType
          4 0.5 50 "0" // widthType widthL widthR "widthFn"
          4 -50 1 "0" // offsetType offsetL offsetR "offsetFn"
          "1" // "depth"
          "0.5" // "growThickness"
          Si(0) // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <FPPath(1.0)>
          0 1 // isMirrored etchGrowType
          0 0.5 "" "0" // widthType widthL widthR "widthFn"
          0 0.6 0 "0" // offsetType offsetL offsetR "offsetFn"
          "1" // "depth"
          "0.5" // "growThickness"
          Si(0) // one of a) {rix alpha} b) {anirix anialpha} c) matname(mx,my)
        end
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" 80 80  // maxNmodes molabOpt nx ny
          1.55 0 RFDMVEC 0 3 V1 80 80 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 "" 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPRefSection(1.1)>
        1 "2" // zFlip refSectionID
      end
      begin <FPioSection(1.0)>
        2 // numPorts
        // list of ports follow
        1.5 -0.624 2 0 // portWidth portPosn portNModes portUseCurv
        0.96 0.609 2 0 // portWidth portPosn portNModes portUseCurv
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      4 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 90  // maxNmodes molabOpt nx ny
      1.55 0 RFDMVEC 0 0 V1 90 50 0 100 0.000100 16  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPdeviceNode(1.2)> "Fibre Taper"
    1.1 // lambda [um]
    "" // materialDatabase
    METALWALL 0           
    METALWALL 0           
    MAGWALL 0             
    MAGWALL 0             
    1 0.01 0.01 3 0 // propMethod propTolerance propMinStepsizeFrac jointMethod jointNormalise
    5 0.3 // psWidth[um] psEtchDepth[um]
    begin <FPcomponent(2.0)>
      //list of subelements follow:
      begin <FPWGsection(1.1)>
        "../fibre1_fwg" 100  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.1 0 RFDMFSVEC 0 0 V1 1000 1 1 2 2  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 "" 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPtaper(1.2)>
        "../fibre1_fwg" "../fibre2_fwg" "L" 0 0 0 0 "" "" 0 "" "" "" "EXP -2" //"wgname1" "wgname2" length h_off v_off h_alignemt v_alignemt joint_method int_method shape_type tolerance minSTPfrac enableEVscan "ITPpars"
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.1 0 NULL 0 0 // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
      begin <FPsimpleJoint(1.2)>
        0 0 0 0 0 0 0 0 0 0 "" 0 // xoff yoff xalign yalign h_tilt1 v_tilt1 rotation1 h_tilt2 v_tilt2 rotation2 method powerNormalise
      end
      begin <FPWGsection(1.1)>
        "../fibre2_fwg" 100  // "wgfilename" length
        begin <molab_parms(1.3)>
          1 0 "" "" // autoRun <unused> minTEfrac maxTEfrac
          N(1e+050) N(-1e+050)  // evstart evend
          "" "" "" ""  // maxNmodes molabOpt nx ny
          1.1 0 RFDMFSVEC 0 0 V1 1000 1 1 2 2  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
          // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
        end
        // LHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
        // RHS rtRegList follows
        begin <RTregionList(1.0)>
          //rCoeff_re rCoeff_im tCoeff_re tCoeff_im xoff yoff xalign yalign shape pars
        
        end
      end
    end
    //lhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      1 //single mode input
    end
    //rhs input field
    begin <FPInputDefinition(2.2)>
      1 //input type
      0 //single mode input
    end
    begin <molab_parms(1.3)>
      1 0 0 100 // autoRun <unused> minTEfrac maxTEfrac
      N(1e+050) N(-1e+050)  // evstart evend
      10 0 120 120  // maxNmodes molabOpt nx ny
      1.1 0 RFDMFSVEC 0 0 V1 1000 1 1 2 2  // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
      // lambda hCurv solverID Hsymmetries Vsymmetries solverParms
    end
  end
  begin <FPScanNode(1.2)> "Taper Length Scanner"
       "Fibre Taper" //cdname1
       "Fibre Taper" //cdname2
       128 //nstep
       100 2000 //xstart,xend
       "L" //xlabel
       0 //storeSmat
       1 //scannermode
  end
  begin <pdVariablesNode(1.0)> "Variables"
    L = 2000
  end
end
