\chapter{Software design} \label{software design}

The software is structured in three main processes

\begin{enumerate}
\item Cable model builder
\item Cable bundle model builder
\item Spice cable bundle model builder
\end{enumerate}

In addition to these there are the support processes

\begin{enumerate}
\item shield\_conductor\_and\_transfer\_impedance\_model\_builder
\item filter\_fit
\end{enumerate}



\subsection{Cable model builder}

The cable model builder reads the characteristics of a particular instance of a cable type and calculates the internal (shielded) domain propagation characteristics and the cable outer domain  information (conductor geometry, loss model) and also the domain decomposition materices which define the relations between the conductor based voltage and current quantities and those based on a local domain reference. 

The processes implemented in the software cable\_model\_builder are summarised below:

\begin{enumerate}
\item Read the cable\_spec file
\begin{enumerate}
\item conductor geometry
\item dielectric geometry
\item conductivity of conductors
\item relative permittivity of dielectric materials (rational function form)
\item transfer impedance of shields (rational function form)
\end{enumerate}
\item Set the internal domain propagation characteristics calculated by analytic means or the Laplace solver as appropriate
\begin{enumerate}
\item 'high frequency' per-unit-length inductance matrix, [L]
\item 'high frequency' per-unit-length capacitance matrix, [C]
\item frequency dependent per unit length impedance matrix, [Z]
\item  frequency dependent per unit length admittance matrix, [Y]
\end{enumerate}
\item Set the outer domain information
\begin{enumerate}
\item outer condcutor geometry
\item outer dielectric geometry
\item outer dielectric relative permittivity (rational function form)
\end{enumerate}
\begin{enumerate}
\item [M\_V]
\item [M\_I]
\end{enumerate}
\item Write the cable file
\end{enumerate}


\subsection{Cable bundle model builder}

\subsection{Spice cable bundle model builder}

\subsection{shield conductor and transfer impedance model builder}

\subsection{Filter fit}


\clearpage
