pdaModel

Define a circuit model for a BB. The basic idea is to check the ports and parameters against the definition and thus have this meta data either in the file or included.

Structure

The attributes and elements are shown below, in a sorted per type fashion.
In case a list is printed after an element, it indicates that you can have many, otherwise it should be a single element. With a optional it tells the element is not required.

<pdaModel  
bbref="..."  level="..."  modeltype="..."  name="..."  version="..." ... > ...
  <analytic> ... </analytic>   list
  <changelog> ... </changelog>   list
  <data> ... </data>   list
  <doc> ... </doc>   list
  <groupRef> ... </groupRef>   list
  <local> ... </local>   list
  <portmode> ... </portmode>   list
  <properties> ... </properties>   list
  <rawdata> ... </rawdata>   list
  <table> ... </table>   list
  <tex> ... </tex>   list
  <ticket> ... </ticket>   list
  <transfer_map> ... </transfer_map>   list
</pdaModel>

XSD

The schema file can be downloaded or viewed at xPDK_Simulation.

Details

analytic

Define the smatrix in named properties; this mapping is useful as often the smatrix is sparse and has coefficients that are the same. Type pdaSmatrixAnalytical documentation: Define analytical model instead of a table.

bbref

Type pdaIdentifier documentation:
Identifiers are used in the Python library for the getName() and setName() function and can thus be used to identify the different elements in list s.
In text the specification is a letter, followed by letters, numbers, underscore or dot. The XSD schema validation is a regular expression: [A-Za-z]([A-Za-z0-9_])*

changelog

Type xPDK_ChangeLog documentation: list, which can be empty. Software or design kit providers are not required to fill this data when changes are made, but it can help users to see what changed over time.

data

Type pdaModelData documentation: This defines raw data. It is defined as restriction on the model definition.

doc

Type pdaDocumentation documentation:
This field allows some (short, few lines) documentation to be written. It can be a long string, but the idea is not to replace a design manual.
This fields is like tex which allows documentation in LaTex format; doc is restricted to plain text.

extend

Type AllowExtend documentation: Allows to extend with any (complex) data for enriching a design kit. The sub-data of an extend will normally be vendor or provider specific, but may span multiple software vendors or suppliers.

Provider extensions can be references to (or embedded) reporting scripts or their versions; source database references and so on. Such data is helpful in cross-referencing production issues or differences between export snapshots. Embedding such data in the XML rather then side-files enhances tracebility and reduces errors.

Using this section is not considered part of the xPDK format therefore, but as long as the files validate with the Stichting PDAFlow Foundation schema's, it is not considered a (not allowed) Derivative version.
For conventions, please check also Extensions.
See also xPDK License.

groupRef

Type pdaIdentifier documentation:
Identifiers are used in the Python library for the getName() and setName() function and can thus be used to identify the different elements in list s.
In text the specification is a letter, followed by letters, numbers, underscore or dot. The XSD schema validation is a regular expression: [A-Za-z]([A-Za-z0-9_])*

level

Define the model complexity with "0" being a very simple model and "10" being the most complex / complete.
more detailed model info Type pdaModelLevel documentation: The model level is an integer between 0 (simple model) and 10 (most complex model).

local

Type pdaNamedNormalDistributionValue documentation:
The default type is double and the unit is none (dimensionless).

modeltype

Given the BB's BBtype the model list file has a series of optional models to choose from. The model name should refer to those. Type pdaIdentifier documentation:
Identifiers are used in the Python library for the getName() and setName() function and can thus be used to identify the different elements in list s.
In text the specification is a letter, followed by letters, numbers, underscore or dot. The XSD schema validation is a regular expression: [A-Za-z]([A-Za-z0-9_])*

name

Type pdaIdentifierExtended documentation:
Those names are mostly XML scope and thus for readability support more general naming then the pdaIdentifier.

portmode

Define port types, they are Type pdaPortMode documentation: Define a list of port/mode combinations.

properties

Define the named properties that are used in the Smatrix references Type pdaProperties documentation:

rawdata

Optional reference to raw data to which CML was fitted.

table

Define the smatrix in named properties; this mapping is useful as often the smatrix is sparse and has coefficients that are the same. Type pdaSmatrixTable documentation: This defines an s-matrix table.

tex

Type pdaTexDocumentation documentation: doc , but tex can be a long text in LaTex format to document the layer in more detail if needed.

You can document anything relevant for the topic you want to define.

Multiple paragraphs is fine. Format is Latex, so more complex content is possible.

ticket

Type pdaTicket documentation:

transfer_map

Define the smatrix in named properties; this mapping is useful as often the smatrix is sparse and has coefficients that are the same. Type pdaTransferMap documentation: Define the mapping of port/mode combinations to the compact model data.
Use reciprocal="true" to specify that the matrix is diagonal symmetric - which is typical as for light the route from "a" to "b" normally behaves the same as from "b" to "a".

version

Type pdaVersion documentation: