Skip to content

Commit 968b705

Browse files
authored
Merge branch 'main' into DB_Wr_Re_clarification
2 parents 4ce4044 + f9a5b25 commit 968b705

File tree

2 files changed

+45
-48
lines changed

2 files changed

+45
-48
lines changed

docs/calculation_details.rst

Lines changed: 44 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@ Multiply the Loss Event Frequency vector by the Loss Magnitude vector
4545
Example
4646
~~~~~~~
4747
For a given year, if we have the number of times a particular event
48-
occurs (Loss Event Frequency/LEF) and the dollar losses associated with
49-
each of those events (Loss Magnitude/LM), we can multiply these
48+
occurs (Loss Event Frequency/LEF) and the dollar losses associated with
49+
each of those events (Loss Magnitude/LM), we can multiply these
5050
together to derive the ultimate dollar value amount lost (Risk/R).
5151

5252
+------------+-----+--------+--------------+
@@ -64,7 +64,7 @@ together to derive the ultimate dollar value amount lost (Risk/R).
6464

6565
Description
6666
~~~~~~~~~~~
67-
A vector of elements which represent the number of times a particular
67+
A vector of elements which represent the number of times a particular
6868
loss occurs during a given time frame (generally one year)
6969

7070
Restrictions
@@ -119,7 +119,7 @@ multiply these together to derive the number of losses that will occur
119119

120120
.. note::
121121

122-
Though intended to represent a discrete number of events, TEF and
122+
Though intended to represent a discrete number of events, TEF and
123123
LEF are not rounded to the nearest integer. This allows for
124124
the modeling of events that happen infrequently. For instance, if
125125
we are running a simulation for a single year, one might model a
@@ -130,7 +130,7 @@ multiply these together to derive the number of losses that will occur
130130

131131
Description
132132
~~~~~~~~~~~
133-
A vector of elements representing the number of times a particular
133+
A vector of elements representing the number of times a particular
134134
threat occurs, whether or not it results in a loss
135135

136136
Restrictions
@@ -139,7 +139,7 @@ All elements must be positive
139139

140140
Derivation
141141
~~~~~~~~~~
142-
Supplied directly, or multiply the Contact Frequency vector and the
142+
Supplied directly, or multiply the Contact Frequency vector and the
143143
Probability of Action vector
144144

145145
.. math::
@@ -312,8 +312,8 @@ a control (Vulnerability/V).
312312

313313
Description
314314
~~~~~~~~~~~
315-
A vector with elements representing the number of threat
316-
actor contacts that could potentially yield a threat within a given
315+
A vector with elements representing the number of threat
316+
actor contacts that could potentially yield a threat within a given
317317
timeframe
318318

319319
Restrictions
@@ -332,7 +332,7 @@ attack, and in turn can potentially yield a loss (Contact Frequency/C).
332332
+------------+-----------+
333333
| Simulation | C |
334334
+============+===========+
335-
| 1 | 5,000,000 |
335+
| 1 | 5,000,000 |
336336
+------------+-----------+
337337
| 2 | 3,000,000 |
338338
+------------+-----------+
@@ -345,7 +345,7 @@ attack, and in turn can potentially yield a loss (Contact Frequency/C).
345345
Description
346346
~~~~~~~~~~~
347347
A vector with elements representing the probability that a threat actor
348-
will proceed after coming into contact with an organization
348+
will proceed after coming into contact with an organization
349349

350350
Restrictions
351351
------------
@@ -363,7 +363,7 @@ resource (Probability of Action/P)
363363
+------------+------+
364364
| Simulation | P |
365365
+============+======+
366-
| 1 | 0.95 |
366+
| 1 | 0.95 |
367367
+------------+------+
368368
| 2 | 0.90 |
369369
+------------+------+
@@ -375,7 +375,7 @@ resource (Probability of Action/P)
375375

376376
Description
377377
~~~~~~~~~~~
378-
A vector of unitless elements that describe the relative
378+
A vector of unitless elements that describe the relative
379379
level of expertise and resources of a threat actor (relative to a
380380
Control Strength)
381381

@@ -395,7 +395,7 @@ relates to the relative strength of the controls (Control Strength/CS)
395395
+------------+------+
396396
| Simulation | TC |
397397
+============+======+
398-
| 1 | 0.75 |
398+
| 1 | 0.75 |
399399
+------------+------+
400400
| 2 | 0.60 |
401401
+------------+------+
@@ -407,7 +407,7 @@ relates to the relative strength of the controls (Control Strength/CS)
407407

408408
Description
409409
~~~~~~~~~~~
410-
A vector of unitless elements that describe the relative strength of a
410+
A vector of unitless elements that describe the relative strength of a
411411
given control (relative to the Threat Capability of a given actor)
412412

413413
Restrictions
@@ -427,7 +427,7 @@ Capability/TC)
427427
+------------+------+
428428
| Simulation | TC |
429429
+============+======+
430-
| 1 | 0.15 |
430+
| 1 | 0.15 |
431431
+------------+------+
432432
| 2 | 0.10 |
433433
+------------+------+
@@ -514,7 +514,7 @@ Loss/PL)
514514
+------------+------------+
515515
| Simulation | PL |
516516
+============+============+
517-
| 1 | $5,000,000 |
517+
| 1 | $5,000,000 |
518518
+------------+------------+
519519
| 2 | $3,500,000 |
520520
+------------+------------+
@@ -540,43 +540,39 @@ multiplied together on an elementwise basis.
540540

541541
.. math::
542542
543-
\begin{bmatrix}
544-
\text{SL}_{1} \\
545-
\text{SL}_{1} \\
546-
\vdots \\
547-
\text{SL}_{1} \\
548-
\end{bmatrix}
549-
\quad
550-
=
551-
\quad
552-
\sum\limits^n_{j=1}
553-
\quad
554-
\left(
555-
\quad
556-
\begin{bmatrix}
557-
\text{SLEF}_{1,1} & \text{SLEF}_{1,2} & \dots & \text{SLEF}_{1,n} \\
558-
\text{SLEF}_{2,1} & \text{SLEF}_{2,2} & \dots & \text{SLEF}_{2,n} \\
559-
\vdots & \vdots & \ddots & \vdots \\
560-
\text{SLEF}_{m,1} & \text{SLEF}_{m,2} & \dots & \text{SLEF}_{m,n} \\
561-
\end{bmatrix}
562-
\quad
563-
\circ
564-
\quad
565-
\begin{bmatrix}
566-
\text{SLEM}_{1,1} & \text{SLEM}_{1,2} & \dots & \text{SLEM}_{1,n} \\
567-
\text{SLEM}_{2,1} & \text{SLEM}_{2,2} & \dots & \text{SLEM}_{2,n} \\
568-
\vdots & \vdots & \ddots & \vdots \\
569-
\text{SLEM}_{m,1} & \text{SLEM}_{m,2} & \dots & \text{SLEM}_{m,n} \\
570-
\end{bmatrix}
571-
\quad
572-
\right)
543+
\\begin{split}
544+
\\mathbf{SL} &=
545+
\\sum_{j=1}^{n} \\left( \\mathbf{SLEF} \\circ \\mathbf{SLEM} \\right)_{rowwise} \\\\
546+
\\text{where:} \\\\
547+
\\mathbf{SLEF} &=
548+
\\begin{bmatrix}
549+
\\text{SLEF}_{1,1} & \\text{SLEF}_{1,2} & \\dots & \\text{SLEF}_{1,n} \\\\
550+
\\text{SLEF}_{2,1} & \\text{SLEF}_{2,2} & \\dots & \\text{SLEF}_{2,n} \\\\
551+
\\vdots & \\vdots & \\ddots & \\vdots \\\\
552+
\\text{SLEF}_{m,1} & \\text{SLEF}_{m,2} & \\dots & \\text{SLEF}_{m,n}
553+
\\end{bmatrix} \\\\
554+
\\mathbf{SLEM} &=
555+
\\begin{bmatrix}
556+
\\text{SLEM}_{1,1} & \\text{SLEM}_{1,2} & \\dots & \\text{SLEM}_{1,n} \\\\
557+
\\text{SLEM}_{2,1} & \\text{SLEM}_{2,2} & \\dots & \\text{SLEM}_{2,n} \\\\
558+
\\vdots & \\vdots & \\ddots & \\vdots \\\\
559+
\\text{SLEM}_{m,1} & \\text{SLEM}_{m,2} & \\dots & \\text{SLEM}_{m,n}
560+
\\end{bmatrix} \\\\
561+
\\mathbf{SL} &=
562+
\\begin{bmatrix}
563+
\\text{SL}_{1} \\\\
564+
\\text{SL}_{2} \\\\
565+
\\vdots \\\\
566+
\\text{SL}_{m}
567+
\\end{bmatrix}
568+
\\end{split}
573569
574570
Example
575571
~~~~~~~
576572
For a given model, we can have a matrix of secondary loss
577573
probabilities. Each row can represent a simulation and each column can
578-
represent a loss type. In this example below we have three different
579-
probability columns for different types of probability loss. E.g. the
574+
represent a loss type. In this example below we have three different
575+
probability columns for different types of probability loss. E.g. the
580576
probabilities of loss for simulation 1 are 0.95, 0.05, and 1.00.
581577

582578
+------------+-------------+--------------+--------------+

pyfair/model/model_input.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ def __init__(self):
3737
"Vulnerability",
3838
"Control Strength",
3939
"Threat Capability",
40+
"Secondary Loss Event Frequency",
4041
]
4142
self._le_1_keywords = ["constant", "high", "mode", "low", "mean"]
4243
# Parameter map associates parameters with functions

0 commit comments

Comments
 (0)