Scripting Guide - Porting Manual
Scripting Guide - Porting Manual
34 Leopold St
Oxford, OX4 1TW
United Kingdom
Phone + 44 1865 324990
Fax + 44 1865 324991
[email protected] om
www.photond.c om
propagating ideas
© 2012 This manual is copyright of Photon Design.
Unauthorised copying is strictly prohibited.
Photon Design
34 Leopold St Phone +44 1865 324 990
Oxford, OX4 1TW Fax +44 1865 324 991
United Kingdom Email: [email protected]
CONTENTS
Significant changes have been made to the structure of FIMMPROP and to its
command line between version 5.3.9 and version 5.4. As a result, many scripts
designed in FIMMWAVE 5.3 will not be compatible with FIMMWAVE 5.4.
This document will explain what changes were made and will help you to port your
scripts to the new version.
If you have any questions, please get in touch with [email protected].
1
The script will create a log file telling you what parts of each file need to be
investigated. For each potential issue, it will tell you which case (see below) it is related
to.
Note: if you are a MATLAB user, please see section 11.9.1 of the FIMMWAVE
manual for instructions on how to install Python.
Case A: a script modifies the MOLAB Options of a waveguide node which is used to
define a WG Section or a Bend Section in a FIMMPROP Device.
2
Also check whether other WG Sections or Bend Sections use that waveguide node,
and modify their MOLAB Options as well.
In addition, instances of the string
.wg.evlist
need to be deleted, e.g.
fpdevice.cdev.eltlist[1].wg.evlist.svp.lambda=1.103
fpdevice.cdev.eltlist[1].wg.evlist.mlp.autorun=1
should be replaced with
fpdevice.cdev.eltlist[1].svp.lambda=1.103
fpdevice.cdev.eltlist[1].mlp.autorun=1
3
A problem will arise if you are defining the structure from scratch with your script and
not fully characterising its properties.
Look for the following strings in your script:
.addsubnode(rwguideNode
.addsubnode(mwguideNode
.addsubnode(WGScanNode
.addsubnode(FPdeviceNode
.newtaper(
.newwglens(
.newsjoint(
.newstraightridge(
.newtaperridge(
.newsinridge(
.newtwinridge(
What to do?
Every time you see one of these commands being used, check that all the parameters
mentioned above are being specified in the script.
Case E: a script selects an external file using a relative path that is set with respect
to the work directory; the work directory is now automatically set to the project
directory.