From f25cf3afcc55cb4f0645a8d72fcef5db5e26f52f Mon Sep 17 00:00:00 2001 From: BilalM04 Date: Tue, 30 Jul 2024 10:20:38 -0400 Subject: [PATCH] centered figures in mdBook --- .../lib/Language/Drasil/Markdown/Helpers.hs | 17 +++++++---- .../lib/Language/Drasil/Markdown/Print.hs | 8 ++--- .../dblpend/SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../dblpend/SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../glassbr/SRS/mdBook/src/SecAppendix.md | 12 +++++--- .../glassbr/SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../glassbr/SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../projectile/SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../sglpend/SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../sglpend/SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- code/stable/ssp/SRS/mdBook/src/SecPhysSyst.md | 18 +++++++---- .../ssp/SRS/mdBook/src/SecSysContext.md | 6 ++-- .../ssp/SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../stable/swhs/SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../swhs/SRS/mdBook/src/SecSysContext.md | 6 ++-- .../swhs/SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- .../swhsnopcm/SRS/mdBook/src/SecPhysSyst.md | 6 ++-- .../swhsnopcm/SRS/mdBook/src/SecSysContext.md | 6 ++-- .../SRS/mdBook/src/SecTraceMatrices.md | 30 ++++++++++++------- 29 files changed, 280 insertions(+), 141 deletions(-) diff --git a/code/drasil-printers/lib/Language/Drasil/Markdown/Helpers.hs b/code/drasil-printers/lib/Language/Drasil/Markdown/Helpers.hs index 419f815b14..f8a82db7b7 100644 --- a/code/drasil-printers/lib/Language/Drasil/Markdown/Helpers.hs +++ b/code/drasil-printers/lib/Language/Drasil/Markdown/Helpers.hs @@ -8,7 +8,8 @@ import Text.PrettyPrint (Doc, text, empty, (<>), (<+>), hcat, import Data.Map (lookup) import Language.Drasil.Printing.Helpers (ast, ($^$), vsep) import Language.Drasil.Printing.LayoutObj (RefMap) -import Language.Drasil.HTML.Helpers (wrap', wrapGen', Variation(Id, Align)) +import Language.Drasil.HTML.Helpers (wrap', wrapGen', Variation(Id, Align), + wrapInside, tagR) -- | Angled brackets ang :: Doc -> Doc @@ -32,9 +33,15 @@ ul = wrap' "ul" [] divTag :: Doc -> Doc divTag l = wrapGen' hcat Id "div" l [""] empty --- | Helper for setting up div for defn heading -defnHTag :: Doc -> Doc -defnHTag = wrapGen' vsep Align "div" (text "center") [""] +-- | Helper for setting up centered div tags +centeredDiv :: Doc -> Doc +centeredDiv = wrapGen' vsep Align "div" (text "center") [""] + +-- | Helper for setting up centered div tags with an Id +centeredDivId :: Doc -> Doc -> Doc +centeredDivId l con = vsep [wrapInside "div" atrs, con, tagR "div"] + where + atrs = [(show Id, l), (show Align, text "center")] -- | Helper for setting up links to references reflink :: RefMap -> String -> Doc -> Doc @@ -55,7 +62,7 @@ reflinkURI ref txt = if ref == txt then ang ref -- | Helper for setting up figures image :: Doc -> Doc -> Doc -image f c = text "!" <> reflinkURI fp c $^$ bold (caption c) +image f c = text "!" <> reflinkURI fp c $^$ bold c where fp = text $ "./assets/" ++ takeFileName (show f) diff --git a/code/drasil-printers/lib/Language/Drasil/Markdown/Print.hs b/code/drasil-printers/lib/Language/Drasil/Markdown/Print.hs index 4284bb394b..5c4e4c089e 100644 --- a/code/drasil-printers/lib/Language/Drasil/Markdown/Print.hs +++ b/code/drasil-printers/lib/Language/Drasil/Markdown/Print.hs @@ -31,8 +31,8 @@ import Language.Drasil.HTML.Helpers(BibFormatter(..)) import Language.Drasil.TeX.Helpers(commandD, command2D, mkEnv) import Language.Drasil.Markdown.Helpers (heading, image, li, reflink, - reflinkURI, reflinkInfo, caption, bold, ul, docLength, divTag, defnHTag, em, - h, h') + reflinkURI, reflinkInfo, caption, bold, ul, docLength, divTag, centeredDiv, + em, h, h', centeredDivId) ----------------------------------------------------------------- ------------------------- mdBook SRS ---------------------------- @@ -233,7 +233,7 @@ mkDocDefn rm = map (\(f, d) -> [text f, makeLO rm (f,d)]) -- | Renders the title/header of the definition table makeDHeaderText :: RefMap -> [(String, [LayoutObj])] -> Doc -> Doc -makeDHeaderText rm ps l = defnHTag header +makeDHeaderText rm ps l = centeredDiv header where lo = lookup "Label" ps c = maybe l (\lo' -> makeLO rm ("Label", lo')) lo @@ -307,7 +307,7 @@ item rm (Nested s l) = vcat [pSpec rm s, makeList rm l 0] -- | Renders figures in Markdown makeFigure :: Doc -> Doc -> Doc -> Doc -makeFigure r c f = divTag r $^$ image f c +makeFigure r c f = centeredDivId r (image f c) ----------------------------------------------------------------- ------------------ Bibliography Printing ------------------------ diff --git a/code/stable/dblpend/SRS/mdBook/src/SecPhysSyst.md b/code/stable/dblpend/SRS/mdBook/src/SecPhysSyst.md index d1922ad45e..5239027e17 100644 --- a/code/stable/dblpend/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/dblpend/SRS/mdBook/src/SecPhysSyst.md @@ -10,8 +10,10 @@ PS3: The first object. PS4: The second object. -
+
![The physical system](./assets/dblpend.png) -**

The physical system

** +**The physical system** + +
diff --git a/code/stable/dblpend/SRS/mdBook/src/SecSysContext.md b/code/stable/dblpend/SRS/mdBook/src/SecSysContext.md index 24c24033fd..48c1408fd1 100644 --- a/code/stable/dblpend/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/dblpend/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:sysCtxDiag](./SecSysContext.md#Figure:sysCtxDiag) shows the system context. A circle represents an entity external to the software, the user in this case. A rectangle represents the software system itself (DblPend). Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/SystemContextFigure.png) -**

System Context

** +**System Context** + +
The interaction between the product and the user is through an application programming interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/dblpend/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/dblpend/SRS/mdBook/src/SecTraceMatrices.md index 6c358b1d57..48a51d0764 100644 --- a/code/stable/dblpend/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/dblpend/SRS/mdBook/src/SecTraceMatrices.md @@ -100,35 +100,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/gamephysics/SRS/mdBook/src/SecSysContext.md b/code/stable/gamephysics/SRS/mdBook/src/SecSysContext.md index 37fa74cc87..2a88c554b7 100644 --- a/code/stable/gamephysics/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/gamephysics/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:sysCtxDiag](./SecSysContext.md#Figure:sysCtxDiag) shows the system context. A circle represents an entity external to the software, the user in this case. A rectangle represents the software system itself (GamePhysics). Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/sysctx.png) -**

System Context

** +**System Context** + +
The interaction between the product and the user is through an application programming interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/gamephysics/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/gamephysics/SRS/mdBook/src/SecTraceMatrices.md index 97c820e458..a9ca5e3a9b 100644 --- a/code/stable/gamephysics/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/gamephysics/SRS/mdBook/src/SecTraceMatrices.md @@ -123,35 +123,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/glassbr/SRS/mdBook/src/SecAppendix.md b/code/stable/glassbr/SRS/mdBook/src/SecAppendix.md index 859cc19beb..8e7e5d3380 100644 --- a/code/stable/glassbr/SRS/mdBook/src/SecAppendix.md +++ b/code/stable/glassbr/SRS/mdBook/src/SecAppendix.md @@ -2,14 +2,18 @@ This appendix holds the graphs ([Fig:demandVSsod](./SecAppendix.md#Figure:demandVSsod) and [Fig:dimlessloadVSaspect](./SecAppendix.md#Figure:dimlessloadVSaspect)) used for interpolating values needed in the models. -
+
![3 second duration equivalent pressure (\\(q\\)) versus Stand off distance (SD) versus Charge weight (\\(w\\))](./assets/ASTM_F2248-09.png) -**

3 second duration equivalent pressure (\\(q\\)) versus Stand off distance (SD) versus Charge weight (\\(w\\))

** +**3 second duration equivalent pressure (\\(q\\)) versus Stand off distance (SD) versus Charge weight (\\(w\\))** -
+
+ +
![Non dimensional lateral applied load (demand) or pressure (\\(\hat{q}\\)) versus Aspect Ratio (AR) versus Stress distribution factor (Function) (\\(J\\))](./assets/ASTM_F2248-09_BeasonEtAl.png) -**

Non dimensional lateral applied load (demand) or pressure (\\(\hat{q}\\)) versus Aspect Ratio (AR) versus Stress distribution factor (Function) (\\(J\\))

** +**Non dimensional lateral applied load (demand) or pressure (\\(\hat{q}\\)) versus Aspect Ratio (AR) versus Stress distribution factor (Function) (\\(J\\))** + +
diff --git a/code/stable/glassbr/SRS/mdBook/src/SecPhysSyst.md b/code/stable/glassbr/SRS/mdBook/src/SecPhysSyst.md index c6d76fd353..fe15377526 100644 --- a/code/stable/glassbr/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/glassbr/SRS/mdBook/src/SecPhysSyst.md @@ -6,8 +6,10 @@ PS1: The glass slab. PS2: The point of explosion. Where the bomb, or any kind of man-made explosion, is located. The stand off distance is the distance between the point of explosion and the glass. -
+
![The physical system](./assets/physicalsystimage.png) -**

The physical system

** +**The physical system** + +
diff --git a/code/stable/glassbr/SRS/mdBook/src/SecSysContext.md b/code/stable/glassbr/SRS/mdBook/src/SecSysContext.md index 9d881b4360..94722597fb 100644 --- a/code/stable/glassbr/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/glassbr/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:sysCtxDiag](./SecSysContext.md#Figure:sysCtxDiag) shows the system context. A circle represents an external entity outside the software, the user in this case. A rectangle represents the software system itself (GlassBR). Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/SystemContextFigure.png) -**

System Context

** +**System Context** + +
The interaction between the product and the user is through a user interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/glassbr/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/glassbr/SRS/mdBook/src/SecTraceMatrices.md index 53373a5d9e..b82fbdfda3 100644 --- a/code/stable/glassbr/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/glassbr/SRS/mdBook/src/SecTraceMatrices.md @@ -110,35 +110,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/pdcontroller/SRS/mdBook/src/SecPhysSyst.md b/code/stable/pdcontroller/SRS/mdBook/src/SecPhysSyst.md index 72527fcac4..1ff3057996 100644 --- a/code/stable/pdcontroller/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/pdcontroller/SRS/mdBook/src/SecPhysSyst.md @@ -8,8 +8,10 @@ PS2: The PD Controller. PS3: The Power Plant. -
+
![The physical system](./assets/Fig_PDController.png) -**

The physical system

** +**The physical system** + +
diff --git a/code/stable/pdcontroller/SRS/mdBook/src/SecSysContext.md b/code/stable/pdcontroller/SRS/mdBook/src/SecSysContext.md index 9262ed12b3..196d052777 100644 --- a/code/stable/pdcontroller/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/pdcontroller/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:systemContextDiag](./SecSysContext.md#Figure:systemContextDiag) shows the system context. The circle represents an external entity outside the software, the user in this case. The rectangle represents the software system itself, PD Controller in this case. Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/Fig_SystemContext.png) -**

System Context

** +**System Context** + +
PD Controller is self-contained. The only external interaction is with the user. The responsibilities of the user and the system are as follows: diff --git a/code/stable/pdcontroller/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/pdcontroller/SRS/mdBook/src/SecTraceMatrices.md index 1f204ed9b7..48982f85be 100644 --- a/code/stable/pdcontroller/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/pdcontroller/SRS/mdBook/src/SecTraceMatrices.md @@ -79,35 +79,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/projectile/SRS/mdBook/src/SecPhysSyst.md b/code/stable/projectile/SRS/mdBook/src/SecPhysSyst.md index 1a07649869..e2e90dc7ad 100644 --- a/code/stable/projectile/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/projectile/SRS/mdBook/src/SecPhysSyst.md @@ -8,8 +8,10 @@ PS2: The projectile (with initial velocity \\({\boldsymbol{v}^{\text{i}}}\\) and PS3: The target. -
+
![The physical system](./assets/Launch.jpg) -**

The physical system

** +**The physical system** + +
diff --git a/code/stable/projectile/SRS/mdBook/src/SecSysContext.md b/code/stable/projectile/SRS/mdBook/src/SecSysContext.md index c7f2051d89..948b26bd5d 100644 --- a/code/stable/projectile/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/projectile/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:sysCtxDiag](./SecSysContext.md#Figure:sysCtxDiag) shows the system context. A circle represents an entity external to the software, the user in this case. A rectangle represents the software system itself (Projectile). Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/SystemContextFigure.png) -**

System Context

** +**System Context** + +
The interaction between the product and the user is through an application programming interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/projectile/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/projectile/SRS/mdBook/src/SecTraceMatrices.md index fd99272349..5c33305492 100644 --- a/code/stable/projectile/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/projectile/SRS/mdBook/src/SecTraceMatrices.md @@ -94,35 +94,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/sglpend/SRS/mdBook/src/SecPhysSyst.md b/code/stable/sglpend/SRS/mdBook/src/SecPhysSyst.md index 5785ec8361..118123b927 100644 --- a/code/stable/sglpend/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/sglpend/SRS/mdBook/src/SecPhysSyst.md @@ -6,8 +6,10 @@ PS1: The rod. PS2: The mass. -
+
![The physical system](./assets/sglpend.jpg) -**

The physical system

** +**The physical system** + +
diff --git a/code/stable/sglpend/SRS/mdBook/src/SecSysContext.md b/code/stable/sglpend/SRS/mdBook/src/SecSysContext.md index 932fc140c4..5b1d5500b8 100644 --- a/code/stable/sglpend/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/sglpend/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:sysCtxDiag](./SecSysContext.md#Figure:sysCtxDiag) shows the system context. A circle represents an entity external to the software, the user in this case. A rectangle represents the software system itself (SglPend). Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/SystemContextFigure.png) -**

System Context

** +**System Context** + +
The interaction between the product and the user is through an application programming interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/sglpend/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/sglpend/SRS/mdBook/src/SecTraceMatrices.md index 7614466a22..f975f42d15 100644 --- a/code/stable/sglpend/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/sglpend/SRS/mdBook/src/SecTraceMatrices.md @@ -86,35 +86,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/ssp/SRS/mdBook/src/SecPhysSyst.md b/code/stable/ssp/SRS/mdBook/src/SecPhysSyst.md index 0a41567e8d..7dfab70b49 100644 --- a/code/stable/ssp/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/ssp/SRS/mdBook/src/SecPhysSyst.md @@ -6,24 +6,30 @@ PS1: A slope comprised of one soil layer. PS2: A water table, which may or may not exist. -
+
![An example slope for analysis by SSP, where the dashed line represents the water table](./assets/PhysSyst.png) -**

An example slope for analysis by SSP, where the dashed line represents the water table

** +**An example slope for analysis by SSP, where the dashed line represents the water table** + +
Morgenstern-Price analysis [morgenstern1965](./SecReferences.md#morgenstern1965) of the slope involves representing the slope as a series of vertical slices. As shown in [Fig:IndexConvention](./SecPhysSyst.md#Figure:IndexConvention), the index \\(i\\) is used to denote a value for a single slice, and an interslice value at a given index \\(i\\) refers to the value between slice \\(i\\) and adjacent slice \\(i+1\\). -
+
![Index convention for slice and interslice values](./assets/IndexConvention.png) -**

Index convention for slice and interslice values

** +**Index convention for slice and interslice values** + +
A free body diagram of the forces acting on a slice is displayed in [Fig:ForceDiagram](./SecPhysSyst.md#Figure:ForceDiagram). The specific forces and symbols will be discussed in detail in [Sec:General Definitions](./SecGDs.md#Sec:GDs) and [Sec:Data Definitions](./SecDDs.md#Sec:DDs). -
+
![Free body diagram of forces acting on a slice](./assets/ForceDiagram.png) -**

Free body diagram of forces acting on a slice

** +**Free body diagram of forces acting on a slice** + +
diff --git a/code/stable/ssp/SRS/mdBook/src/SecSysContext.md b/code/stable/ssp/SRS/mdBook/src/SecSysContext.md index 9ea8c47819..d9772ff232 100644 --- a/code/stable/ssp/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/ssp/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:sysCtxDiag](./SecSysContext.md#Figure:sysCtxDiag) shows the system context. A circle represents an external entity outside the software. A rectangle represents the software system itself (SSP). Arrows are used to show the data flow between the system and its environment. -
+
![System Context](./assets/SystemContextFigure.png) -**

System Context

** +**System Context** + +
The responsibilities of the user and the system are as follows: diff --git a/code/stable/ssp/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/ssp/SRS/mdBook/src/SecTraceMatrices.md index 80e830bd0f..ce4b8f2f76 100644 --- a/code/stable/ssp/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/ssp/SRS/mdBook/src/SecTraceMatrices.md @@ -168,35 +168,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/swhs/SRS/mdBook/src/SecPhysSyst.md b/code/stable/swhs/SRS/mdBook/src/SecPhysSyst.md index 00199deed3..c26de874c9 100644 --- a/code/stable/swhs/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/swhs/SRS/mdBook/src/SecPhysSyst.md @@ -8,8 +8,10 @@ PS2: Heating coil at bottom of tank. (\\({q\_{\text{C}}}\\) represents the heat PS3: PCM suspended in tank. (\\({q\_{\text{P}}}\\) represents the heat flux into the PCM from water.) -
+
![Solar water heating tank, with heat flux into the water from the coil of \\({q\_{\text{C}}}\\) and heat flux into the PCM from water of \\({q\_{\text{P}}}\\)](./assets/Tank.png) -**

Solar water heating tank, with heat flux into the water from the coil of \\({q\_{\text{C}}}\\) and heat flux into the PCM from water of \\({q\_{\text{P}}}\\)

** +**Solar water heating tank, with heat flux into the water from the coil of \\({q\_{\text{C}}}\\) and heat flux into the PCM from water of \\({q\_{\text{P}}}\\)** + +
diff --git a/code/stable/swhs/SRS/mdBook/src/SecSysContext.md b/code/stable/swhs/SRS/mdBook/src/SecSysContext.md index 19e6e55706..85d8193171 100644 --- a/code/stable/swhs/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/swhs/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:SysCon](./SecSysContext.md#Figure:SysCon) shows the system context. A circle represents an external entity outside the software, the user in this case. A rectangle represents the software system itself (SWHS). Arrows are used to show the data flow between the system and its environment. -
+
![[Fig:SysCon](./SecSysContext.md#Figure:SysCon): System Context](./assets/SystemContextFigure.png) -**

[Fig:SysCon](./SecSysContext.md#Figure:SysCon): System Context

** +**[Fig:SysCon](./SecSysContext.md#Figure:SysCon): System Context** + +
SWHS is mostly self-contained. The only external interaction is through the user interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/swhs/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/swhs/SRS/mdBook/src/SecTraceMatrices.md index 4e7e55c728..4870fec021 100644 --- a/code/stable/swhs/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/swhs/SRS/mdBook/src/SecTraceMatrices.md @@ -135,35 +135,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: diff --git a/code/stable/swhsnopcm/SRS/mdBook/src/SecPhysSyst.md b/code/stable/swhsnopcm/SRS/mdBook/src/SecPhysSyst.md index 195c52541b..e8d4fdc54c 100644 --- a/code/stable/swhsnopcm/SRS/mdBook/src/SecPhysSyst.md +++ b/code/stable/swhsnopcm/SRS/mdBook/src/SecPhysSyst.md @@ -6,8 +6,10 @@ PS1: Tank containing water. PS2: Heating coil at bottom of tank. (\\({q\_{\text{C}}}\\) represents the heat flux into the water from the coil.) -
+
![Solar water heating tank, with heat flux from heating coil of \\({q\_{\text{C}}}\\)](./assets/TankWaterOnly.png) -**

Solar water heating tank, with heat flux from heating coil of \\({q\_{\text{C}}}\\)

** +**Solar water heating tank, with heat flux from heating coil of \\({q\_{\text{C}}}\\)** + +
diff --git a/code/stable/swhsnopcm/SRS/mdBook/src/SecSysContext.md b/code/stable/swhsnopcm/SRS/mdBook/src/SecSysContext.md index 4831400c40..601f45e43b 100644 --- a/code/stable/swhsnopcm/SRS/mdBook/src/SecSysContext.md +++ b/code/stable/swhsnopcm/SRS/mdBook/src/SecSysContext.md @@ -2,11 +2,13 @@ [Fig:SysCon](./SecSysContext.md#Figure:SysCon) shows the system context. A circle represents an external entity outside the software, the user in this case. A rectangle represents the software system itself (SWHSNoPCM). Arrows are used to show the data flow between the system and its environment. -
+
![[Fig:SysCon](./SecSysContext.md#Figure:SysCon): System Context](./assets/SystemContextFigure.png) -**

[Fig:SysCon](./SecSysContext.md#Figure:SysCon): System Context

** +**[Fig:SysCon](./SecSysContext.md#Figure:SysCon): System Context** + +
SWHSNoPCM is mostly self-contained. The only external interaction is through the user interface. The responsibilities of the user and the system are as follows: diff --git a/code/stable/swhsnopcm/SRS/mdBook/src/SecTraceMatrices.md b/code/stable/swhsnopcm/SRS/mdBook/src/SecTraceMatrices.md index fce029ad6e..091400972a 100644 --- a/code/stable/swhsnopcm/SRS/mdBook/src/SecTraceMatrices.md +++ b/code/stable/swhsnopcm/SRS/mdBook/src/SecTraceMatrices.md @@ -98,35 +98,45 @@ The purpose of the traceability matrices is to provide easy references on what h The purpose of the traceability graphs is also to provide easy references on what has to be additionally modified if a certain component is changed. The arrows in the graphs represent dependencies. The component at the tail of an arrow is depended on by the component at the head of that arrow. Therefore, if a component is changed, the components that it points to should also be changed. [Fig:TraceGraphAvsA](./SecTraceMatrices.md#Figure:TraceGraphAvsA) shows the dependencies of assumptions on each other. [Fig:TraceGraphAvsAll](./SecTraceMatrices.md#Figure:TraceGraphAvsAll) shows the dependencies of data definitions, theoretical models, general definitions, instance models, requirements, likely changes, and unlikely changes on the assumptions. [Fig:TraceGraphRefvsRef](./SecTraceMatrices.md#Figure:TraceGraphRefvsRef) shows the dependencies of data definitions, theoretical models, general definitions, and instance models on each other. [Fig:TraceGraphAllvsR](./SecTraceMatrices.md#Figure:TraceGraphAllvsR) shows the dependencies of requirements and goal statements on the data definitions, theoretical models, general definitions, and instance models. [Fig:TraceGraphAllvsAll](./SecTraceMatrices.md#Figure:TraceGraphAllvsAll) shows the dependencies of dependencies of assumptions, models, definitions, requirements, goals, and changes with each other. -
+
![TraceGraphAvsA](./assets/avsa.svg) -**

TraceGraphAvsA

** +**TraceGraphAvsA** -
+
+ +
![TraceGraphAvsAll](./assets/avsall.svg) -**

TraceGraphAvsAll

** +**TraceGraphAvsAll** + +
-
+
![TraceGraphRefvsRef](./assets/refvsref.svg) -**

TraceGraphRefvsRef

** +**TraceGraphRefvsRef** + +
-
+
![TraceGraphAllvsR](./assets/allvsr.svg) -**

TraceGraphAllvsR

** +**TraceGraphAllvsR** -
+
+ +
![TraceGraphAllvsAll](./assets/allvsall.svg) -**

TraceGraphAllvsAll

** +**TraceGraphAllvsAll** + +
For convenience, the following graphs can be found at the links below: