From 7b3b8bfa522d6131765d13711a4d4086b68d3eac Mon Sep 17 00:00:00 2001 From: Robin Clark Date: Thu, 10 Nov 2011 18:19:24 +0000 Subject: [PATCH] working at night, cycling home soon --- opamp_circuits_C_GARRETT/Makefile | 2 +- opamp_circuits_C_GARRETT/opamps.tex | 20 ++++++++++++++---- opamp_circuits_C_GARRETT/three_tree.dia | Bin 0 -> 6455 bytes .../tree_abstraction_levels.dia | Bin 0 -> 3222 bytes presentations/fmea/fmea_pres.tex | 3 ++- 5 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 opamp_circuits_C_GARRETT/three_tree.dia create mode 100644 opamp_circuits_C_GARRETT/tree_abstraction_levels.dia diff --git a/opamp_circuits_C_GARRETT/Makefile b/opamp_circuits_C_GARRETT/Makefile index dc495b2..506bb95 100644 --- a/opamp_circuits_C_GARRETT/Makefile +++ b/opamp_circuits_C_GARRETT/Makefile @@ -1,6 +1,6 @@ -PNG_DIA = circuit1_dag.png mvampcircuit.png pd.png invamp.png shared_component.png +PNG_DIA = circuit1_dag.png mvampcircuit.png pd.png invamp.png shared_component.png tree_abstraction_levels.png diff --git a/opamp_circuits_C_GARRETT/opamps.tex b/opamp_circuits_C_GARRETT/opamps.tex index 50c9fcd..f0b889c 100644 --- a/opamp_circuits_C_GARRETT/opamps.tex +++ b/opamp_circuits_C_GARRETT/opamps.tex @@ -557,7 +557,16 @@ at even higher abstraction levels. Eventually we will have a hierarchy that converges to one top level {\dc}. At this stage we have a complete failure mode model of the system under investigation. +\begin{figure}[h] + \centering + \includegraphics[width=200pt,keepaspectratio=true]{./tree_abstraction_levels.png} + % tree_abstraction_levels.png: 495x292 pixel, 72dpi, 17.46x10.30 cm, bb=0 0 495 292 + \caption{FMMD Hierarchy showing ascending abstraction levels} + \label{fig:treeabslev} +\end{figure} +Figure~\ref{fig:treeabslev} shows an FMMD hierarchy, where the process of creating a {\dc} from a {\fg} +is shown as a `$\bowtie$' symbol. \subsection{An algebraic notation for identifying FMMD enitities} @@ -576,8 +585,8 @@ as \begin{equation} fm : \mathcal{C} \rightarrow \mathcal{P}\mathcal{F}. \end{equation} -This is defined by, where C is a component and F is a set of failure modes, -$ fm ( C ) = F. $ +This is defined by, where $c$ is a component and $F$ is a set of failure modes, +$ fm ( c ) = F. $ We can use the variable name $FG$ to represent a {\fg}. A {\fg} is a collection of components. @@ -603,12 +612,15 @@ fm : \mathcal{FG} \rightarrow \mathcal{P}\mathcal{F}. %$$ \mathcal{fm}(C) \rightarrow S $$ %$$ {fm}(C) \rightarrow S $$ +\paragraph{Abstraction Levels of {\fgs} and {\dcs}} + + We can indicate the abstraction level of a component by using a superscript. Thus for the component $c$, where it is a `base component' we can assign it the abstraction level zero, $c^0$. Should we wish to index the components -(for example as in a product parts~list) we can use a sub-script. -Our base component (if first in the parts~list) could now be uniquely identified as +(for example as in a product parts-list) we can use a sub-script. +Our base component (if first in the parts-list) could now be uniquely identified as $c^0_1$. We can further define the abstraction level of a {\fg}. diff --git a/opamp_circuits_C_GARRETT/three_tree.dia b/opamp_circuits_C_GARRETT/three_tree.dia new file mode 100644 index 0000000000000000000000000000000000000000..ce105bdf582ab6ba2e09243b363b8c37955e8fc1 GIT binary patch literal 6455 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 Ry?Ou3{{ge7I=z=x0RU85m>2*6 literal 0 HcmV?d00001 diff --git a/opamp_circuits_C_GARRETT/tree_abstraction_levels.dia b/opamp_circuits_C_GARRETT/tree_abstraction_levels.dia new file mode 100644 index 0000000000000000000000000000000000000000..8abbb5740eb255ee59e9ed7d711fd12870f129b8 GIT binary patch literal 3222 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