Grif 2021
Grif 2021
Fault Tree
User Manual
Version 18 February 2021
1.1. Introduction
Tree is used to model a system as a fault tree based on Boolean logic, which produces simple models suited to
all domains (aeronautics, automobile, rail, oil and gas, etc.). The Tree module uses ALBIZIA, the BDD (Binary
Decision Diagram) computation engine developed by TotalEnergies. ALBIZIA offers the advantage of running
accurate analytical computations and rapidly providing extensive information on the system under study.
• Title bar: The title bar shows the names of the module and file being edited.
• Menu bar: The menu bar gives access to all the application's functions.
• Icon bar (shortcuts): The shortcut bar is an icon bar (horizontal) which gives faster access to the most common
functions.
• Tool bar: The tool bar (vertical) allows you to select the elements for modeling.
• Input zone: A maximum amount of space has been left for the graphical input zone for creating the model.
• Tree: A tree is between input zone and tool bar. It enables to walk through pages and groups of the document.
• Template: Templates are hidden behind the tree. They are grouped in two files following the save directory
(User or built-in directory).
• Set of tables: Tables are gathered in "hidden" tabs on the right.
The functionality New (default) opens a new document, which will be initialized from the default module's model.
You can change the default's model, see Section 12.1, “Document template”
The functionality Save saves the current document into a file. The default proposed location for the backup is
{répertoire home de l'utilisateur}/GRIF/2021/Tree
The functionality Save as ... lets you save a copy of the file you are working on, with a different name or a different
location.
The Enregistrer sous ... (Confidentiel) action creates a new document which confidential gates (and their sub-
tree) are replaced by a basic event with the same probability (at end of mission).
The functionality Send by e-mail allows you to attach the current document to an e-mail and then to send it. The
configuration of the messaging tool is to be done in the application options Section 14.1, “Executables”
The functionality Close lets you close the current document. A window offers to save the file if changes have
been made.
The menu Document templates includes features related to document reuse and pre-configuration, see
Section 12.1, “Document template”.
The Export ... action lets your export the current document into an external format.
The print functions Page layout, Print and Save in RTF file are described in the section Section 13, “Printing”
The functionality Anonymize deletes all the comments and names filled in by the user. The document does not
contain any information helping to understand it.
The functionality Statistics of document allows to have some information about the document (number of pages,
number of groups, etc.).
The functionality Document properties allows you to edit the properties of the current document. The fields
include: name, creation date, creator, description, version, ... This function is described more specifically in the
section Section 3.16, “Document properties / Track change / Images management”
The functionality Files of the document includes files within the current document. These files can then be
exported in your reports. This feature is described more specifically in the section Section 3.18, “Files of the
documents”.
The functionality Compare 2 documents highlights the changes made between 2 versions of the same document.
This feature is described more specifically in the section Section 3.17, “Compare 2 documents”.
The menu section Recent files list recently opened files to access them faster.
The functionality Quit exits the application. Open documents will be closed.
The menu Edition contains all the commands needed to edit the current model.
The functionalities Undo and Redo allow you to cancel or redo the last actions performed. The size of the history
of undoable actions are configurable in the application options see (Section 14.2, “Options”).
The functionalities Copy, Cut, Paste and Paste and renumber are described more specifically in this section
Section 3.1, “Copy / Paste / Renumber (without shortcut)”
The functionality Hierarchical renumbering changes IDs / node numbers according to their position in the tree.
The functionalities Overall change ... and Selection change ... search and then replace names and identifiers of
the current document or selection. This feature is described more specifically in the section Section 3.3, “Overall
change” and Section 3.4, “Selection change”.
Actions Glue and UnGlue link or unlink graphical objects between them. This allows to fix the position of objects.
This feature is described more specifically in the section Section 3.10, “Gluing/Associating graphics”
The functionality Select all selects all the graphical elements of the page.
The functionality Clear selection deselects items in the current selection. The selection is then blank.
The functionality Select connected part selects all graphical elements connected to each other by a link. This
feature is described more specifically in the section Section 3.7, “Selecting connex (adjacent) parts”
The functionality Select sub-tree from a gate, selects the entire descending parts of the tree.
The functionality Select from node to root from a gate or event, selects the entire ascending parts of the tree.
The menu Automatic layout gives access to different modes of graphical layouts. This layout can be configured
in the document options. See Section 14.3, “Graphics”
The functionality Properties edits the logical properties of the current selection.
1.3.3. Tools
The menu Tools contains all the commands needed to manage the current model (management of pages,
alignments, options ...).
The functionality New page : Create a new graphical page on the current document.
The functionality Page manager ... : Open a page manager on which you can rearrange the pages of the document.
The functionality Move to page ... : Move the current selection to another page or group in the document.
The functionality Increase page size : Increase the graphical input area of the current page.
The functionality Page size : Open a window to manually configure the size and zoom of the current page. This
feature is described more specifically in the section Section 3.8, “Zoom and page size”
The functionality Reset size of pages : All pages will be reset to factory format.
The functionality Refresh : Refresh the graphical objects in the current page.
The functionality Search for shortcuts : Opens a window listing the element's references and lead toward these
references. This feature is described more specifically in the section Section 2.5.3, “Search shorcuts”
The functionality Display logical tree : Displays the tree view without considering the pages and groups in which
the items are located.
The menu Align provides alignment functions for graphical objects. These features are described more specifically
in the section Section 3.5, “Alignment”.
The menu Align and distribute contains the same functions as in the menu Align. In addition, it is possible to
distribute, in the enclosing space, the elements of the selection.These features are described more specifically in
the section Section 3.5, “Alignment”.
The functionality Bring forward : Move the selected elements one layer forward.
The functionality Send backward : Move the selected elements one layer backward
The menu View toolbars lets you show or hide certain shortcut groups from the toolbar.
The functionality Display bar of opened documents : Displays in the lower part of the application, a shortcut
bar to access documents already opened in GRIF.
The functionality Document options : Opens a window to configure the document options. You have the
possibility to configure a very large number of GRIF-Workshop's features (cf. Section 14, “Options of GRIF -
Fault Tree” ). Some options only apply to the application and are accessible via the menu Application options,
and others are relative to the document being edited and are defined in the menu Document options. However,
to avoid having to redefine your options between each document, document options are also available in the
application options.
These options will then be applied to all newly created documents.
You can also save the current document settings as the default settings for the application. To do this, open the
window Application options, then the tabulation Options and finally check Save the options of the current
document as default options in the application.
You will find in this same panel the possibility to override the document options by the application options. To
do this, check The application manages the default options of the documents. Apply the default options to
the current document.
The functionality Year length configuration (in hours) allows you to change the number of hours in a year. The
scope of this option is global to all GRIF modules.
The functionality Search page/group : Find and locate a group or document page.
The functionality Information about selection : Display a window based on the selected graphical elements. This
window gives additional information about the current selection.
The menu View toolbars lets you show or hide certain shortcut groups from the toolbar.
The check box Pages (select from pull down list) allows to show / hide the page shortcut bar
The check box Edit groups allows to show / hide the group shortcut bar
The check box Zoom allows to show / hide the shortcut bar for page zooms
The check box Input/Output allows to show / hide the file shortcut bar
The check box Undo/Redo allows to show / hide the command history shortcut bar
The check box Edit allows to show / hide the shortcut bar of the edit menu
The check box Computation allows to show / hide the configuration shortcut bar and start calculations
The check box Font allows to show / hide the text configuration shortcut bar
1.3.4. Document
The menu Document gives access to all documents being modified or produced.
Editing tables (new window) : Opens a new non-blocking window containing all the editing tables of the datas.
Edit Parameters : Opens a new non-blocking window containing the editing table of parameters.
Edit Events : Opens a new non-blocking window containing event's data. The event's settings are detailed here
Section 2.4.2, “Configuring the events”.
Edit CCF : Opens a new non-blocking window containing Common Cause Failure's data. The CCF's settings are
detailed here Section 6, “Help with common cause failures”.
Edit laws : Opens a new non-blocking window containing the editing table of laws used in the document. The
laws' settings are detailed here Section 7.2, “Description of the laws”.
Edit Degraded operations : Opens a new non-blocking window containing the editing table of degraded
operations.
Edit Attributes : Opens a new non-blocking window containing the editing table of attributes. The attributes'
settings are detailed here Attributes.
Edition of assumptions : Opens a new non-blocking window containing the editing table of assumptions. The
assumptions' settings are detailed here Section 3.19, “Hypothesis”.
The functionality Delete unused data : Cleans the document by deleting unused data. A window opens and
proposes to manually select the elements to delete.
The menu Parameters database groups all the functionalities concerning the connection of the application to
a specific parameters' database. For more details on the parameters databases, refer to Section 11, “Database of
parameters”.
The functionality Compute manager : Opens a non-blocking window to manage the calculations launched by the
application. For more details on the compute manager, refer to Section 9.6, “Compute manager”.
The functionality Invalidate the calculation cache : To optimize calculations, some calculations data are cached.
Invalidate calculation cache allows you to completely empty these data and ensure authentic results. In normal
use of the software, it is not necessary to use this function.
The functionality Let names and IDs be unique : Identifies and modifies duplicate data in the model. In normal
use of the software, it is not necessary to use this function.
The functionality Preprocessing of Markov graphs (not computed only) : Perform a pre-calculation on Markov
graphs that have never been computed or whose .jma have been modified since the last calculation. Pour plus
d'information sur les lois de Markov, se référer à Section 7.2.18, “MKR / Markov graph”.
The functionality Preprocessing of Markov graphs : Effectue un pré-calcul sur tous les graphes de Markov
utilisés dans les lois de type Modèle Markov. For more details on Markov laws, refer to Section 7.2.18, “MKR /
Markov graph”.
The functionality Set-up and start computation : Opens the calculation configuration window. This window is
detailed in Section 9.1.1, “Configuring the computations”.
The functionality Re-start computation : Restarts the calculations with the last configuration.
The functionality Display last results : Displays the result window of the last calculation performed. For more
details on the result window, refer to Section 9.3, “Tables and Panels to display results”.
The menu Batch computations includes the functionalities of multiple computations by variation of parameters.
For more details on batch computation, refer to Section 9.4, “Batch computation”.
The functionality Start Moca ... : Opens the configuration window for Moca computations. For more details on
Moca computations, refer to Section 9.2.1, “Configuring the computations”.
The functionality Re-start Moca with current settings : Restarts the computation with the last parameterization
of Moca computations.
The menu Parameters database groups all the functionalities concerning the connection of the application to
a specific parameters' database. For more details on the parameters databases, refer to Section 11, “Database of
parameters”.
The functionality Update from database ... : Updates the settings of the current document parameters that are
connected to a database by updating their values. Opens a window to select the data to update.
The functionality Copy parameters from database ... : Imports from a parameter database a set of data in the
current document. Displays a database parameter table, the user can select the data to import into his document.
The functionality Rebuild links to the database : Attempts to reconnect parameter's settings of a document to
data from the database Opens a window that highlights parameters that can be reconnected.
The menu Batch computations includes the functionalities of multiple computations by variation of parameters.
For more details on batch computation, refer to Section 9.4, “Batch computation”.
The functionality Manual creation batch : Opens a window to create calculation batches. Each batch must be
configured by the user.
The functionality Automatic creation of batch (with parameter variation) : The user fills in the parameters to
be varied, the application generates the calculation batches by making all the combinations of the parameters.
1.3.6. Group
The menu Group concerns the capture and management of sub-models grouped into independent subsets.
The functionality Group : Puts the selected elements into a new group. A new group graphic object is created.
Selected elements are moved within the group.
The functionality Name change : Edits the name of the selected group.
The functionality Picture change : Assigns or modifies the graphical rendering of the group, by adding an image.
The name of the group will be displayed below the image.
The functionality Ungroup : Removes the group and creates all the elements that the group used to contain.
The functionality Group sub-tree : Creates a reference gate and a group instead of the selected gate. The subtree
is moved within the group.
The functionality Quit group edition groupe : Go back to the parent page of the group.
1.3.7. ?
The menu ? combines several GRIF global configuration functions and provides access to the module's online help.
The functionality About ... : Opens an information window about the software version used.
The functionality Help ... : Provides access to the module's online help.
The functionality Send errors logs : Sends an email to your reseller with the module's log files.
The functionality GRIF-Workshop update : Updates GRIF. This function detects the existence of a more recent
version of GRIF. If such a version exists, you will be offered to install it.
1.3.7.1. Configuration
The menu Licence groups the configuration functions of the license server.
The menu Associate GRIF files forces your operating system to associate the GRIF files and the different modules
that open them.
The menu Network configuration : Configures network access to update the system.
The menu Licence groups the configuration functions of the license server.
The menu Software Licence (SL) configures license servers that do not require an USB dongle.
The functionality Generate c2v...: Generates a c2v (Client To Vendor) file. This file will be requested by your
reseller to create an update of your license.
The functionality Apply v2c...: Applies a v2c (Vendor To Client) file. This file will be returned by your reseller
to apply the update of your license.
The menu Software Licence (SL) configures license servers that do not require an USB dongle.
The functionality Generate fingerprint...: Generates a c2v (Client To Vendor) file. This file will be requested
by your reseller to create your license.
The functionality Generate c2v...: Generates a c2v (Client To Vendor) file. This file will be requested by your
reseller to create an update of your license.
The functionality Apply v2c...: Applies a v2c (Vendor To Client) file. This file will be returned by your reseller
to apply the update of your license.
The menu Associate GRIF files forces your operating system to associate the GRIF files and the different modules
that open them.
The functionality For current user : Associates GRIF files to the current user
The functionality For all users : Associates GRIF files to every users. This operation requires administrator rights.
Gate "OR" The output occurs if at least one of the input occurs.
Gate "K Out Of N" The output occurs if at least k of the N input occur (k < n).
Gate "If/Then/Else" The output is worth the value of the event 'then' if the event 'if' occurs and is
worth the value of the event 'then' otherwise.
Gate "Negation" The output occurs if the input has not occurred. The exit logic state is the contrary
of the entry logic state.
Basic event Event of the lowest level for which the probability of appearance or information of
reliability is available.
Elementary event Development of this event is achieved. It corresponds of the failure or error in a
system, component or element which could be detailed but for which an equivalent law is used.
"House" event Event which has to occur with certainty during the production or during the
maintenance. We can also define it as an event not - possibility, which we have to choose to put in 1
or in 0 before any processing of the tree. This type of event allows to have several variants of a tree
on a single drawing, by modifying the logic of the tree according to the value chosen by the user.
Link (one only) to create one connection (and only one) between an input (gate) and an output (gate
or event).
Links (many) to create connections between an input (gate) and an output (gate or event).
Dynamic field tool creates dynamic comments displaying the data in the model.
Rectangle tool creates rectangular zones of different colours. These zones can be anchored to the
page.
Circle tool creates circular zones of different colours. These zones can be anchored to the page.
Ellipse tool creates a zones with an ellipse shape. These zones can be anchored to the page.
Curve tool draws curves by selecting the computation results in the results base.
To create or modify data (parameters, variables, etc.), tables are available in the Data and Computations menu
and in tabs at the right of the view. All the GRIF 2021 data tables operate in the same manner.
It is possible to edit all tables in another screen using Data and Computations - Editing tables (new
windows) menu.
Different actions are available depending on the type of data displayed. Below is a non-exhaustive list of actions
that can be found on the data tables.
Displays a panel for searching or filtering data (cf. Section 1.1, “Filter and sorting data”).
The filter panel allows you to display only what is necessary in the data table.
It consists of a search part: the text entered is searched in all the cells of the table, only the lines whose text is
present are preserved; and an advanced filtering part allowing to consider finer criteria according to the different
fields of the data. It is possible to combine several filtering criteria, as below:
Select AND or OR to choose the type of association between each line (filter criterion). A line is a Boolean
expression divided into 3 parts:
If the Boolean expression is true, the data will be kept (displayed); otherwise the data will be masked. When the
filter is enabled its value is displayed between < and >.
The data in a column can be sorted by double clicking the header of this column. The first double click will sort
the data in ascending order (small triangle pointing upwards). The second double click on the same header will
sort the column in descending order (small triangle pointing downwards).
The choices that are made are kept on the current document. They will be reapplied when reopening your
document and do not affect other documents in the application.
A table can contain many columns and to improve its readability it is possible to choose the columns that will be
displayed as well as their order. To do this, click on the Columns Manager button, the following window opens:
The choices that are made are kept on the current document. They will be reapplied when reopening your
document and do not affect other documents in the application.
To modify data, simply double-click on the cell to modify. When several lines are selected (using the CTRL or
SHIFT keys) changes can be made to all the selected data by using Multiple changes. A window then opens to
allow you to make these changes.
Items which cannot be modified are greyed. The white lines indicate that the selected data does not have the same
value for the field in question. A new value can be entered which will be taken into account for all the selected
data. The lines with no background colour indicate that all the selected data has the same value for this field (in
this example the selected data is all "Float"); they can be changed to give a new value to all the selected data.
2. Table accessibility
As mentioned above, the tables can be accessed via the Data and Computations menu; in this case, each table
is displayed in a separate window.
To avoid having too many windows open, all the tables are grouped together in tabs on the right-hand side of the
application. This area can be hidden/displayed using the small arrows above the input zone.
To help users to walk through the document (pages, groups and sub-groups), a tree is available on the left of the
application. By default, every element is displayed, you can use Filter button in order to select elements you want
to display or not.
You can expand or collapse a node in a recursive way with a right click on the node.
As explained for tables on the right, you can "hide" the tree.
1. A number: These numbers are, with the type, the gates' true identifiers (those which will be used by the
computation engine). That is why, when you wish to change the numbers of certain gates, you must remember
that two gates cannot have an identical number. They are automatically incremented as new elements are
created.
2. A name: It is a parameter which is defined automatically and which cannot be modified by the user. The name
of each gate consists of its "type" followed by its "number" (e.g.: "And1" or "KofN3").
3. A "K out of N" integer: This field is only accessible in the case of K out of N gates. It allows you to choose
the value of K (K equals 1 by default).
4. A description: This field adds text inside the gate. This function makes the model more legible (by giving the
specific features of these elements).
5. A type: When a gate has been created, its type can be modified to one of the five types available in the drop-
down list.
For each gate or event, you can set it initiator (with a right clik). This attribut must be seen from an "Event-Tree"
point of view. In an event-tree an initiator is an event that must happen befo barriers set the system in a safe mode.
In order to have a Top-event, iniator event must happen after barriers failure. Setting initiator attribut on and event
means that it must appear after the "non-initiator" events. This setting has an impact on UFI computation only.
There is no impact on Probability of Equivalent lambda.
When the gates and events have been created, they must be interconnected to establish the tree's logic. There are
two possible types of connections: "gate -> gate" and "gate -> event" connections. To make a connection, proceed
as follows:
The above icon only allows a single link to be created at a time. If you wish to create several links in
succession without having to reselect the link creation icon each time, use the icon shown below: Links
(several).
It is a very specific gate which inverts the logic of the subtree which is downstream of it.
• change the type of an existing gate by using the drop down list;
• OR create a new a new gate with the type "Negation":
1. Click left on the corresponding icon on the vertical toolbar.
2. A new element will then be created whenever you click left on the graphical entry area.
3. You then just have to configure and connect the "Negation" like a conventional gate: link the top part (above
the circle) to the bottom part of a gate and link the bottom part (below the circle) to the top part of an event
or gate.
The dynamic fields are a type of "improved comments". They can be used not only to enter words or phrases but
also to insert model values or results.
If you want to display information about a data of the model, you must use the following syntax:
$data.'type of data'.'field used o search data'('value that the field must match).'information you want to display
for the selected data'
We can analyze the above windows as follows: I am looking for a "parameter" which "name" is 'Capa_Max", and
I want to display its "value". When you type the first letters, a completion system helps to type script without error.
Button in right permits to enter complete expression but select what you want to appear.
If you want to display a result of the result-bank, the syntax is the following:
We can analyze the next picture as follows: I am looking for a result which path in the bank is "default-Moca", I
want results for "TS3 for 'available' valriable" and I want its value for the "last" time. If last is replaced by time(10)
we obtain value at t=10.
You can also display a summary of result. Replace 'what you want to display' by summary. In this case, summary
is the last word of this script.
When you click right on a gate, you can modify any parameter:
• change the name , the automatic checkbox generates an automatic name made of the base name and the ID/
Number ;
• modify the type of gate to one of the five types available in the drop-down list:
– "OR" gate: an "OR" type logic gate is applied to the elements connected downstream.
– "AND" gate: an "AND" type logic is applied to the elements connected downstream.
– "K of N": a "K of N" type logic is applied to the elements connected upstream.
When you click right on a gate, you can modify any parameter (except the name):
• General: User chooses the law, reliability data and type of event.
– change the name , the automatic checkbox generates an automatic name made of the base name and the
ID/Number ;
Apply a factor to apply a modifier factor to the law.In this case, unavailability is equal to factor x U(t).
The names of these events simply have a "graphical" impact on the tree structure. There is no impact on the
logic function which will be generated to perform the computations. The aim is simply to simplify re(reading)
the fault tree
1. Chose the law from all the available laws in the drop-down list located in the upper section. Many laws are
available and you can find the meaning for each law under Section 7.2, “Description of the laws”.
2. Set the parameters for the law in the lower part of the window. For each parameter, a numerical value,
a parameter name or an expression comprising operators '+','-','*' and '/' can be entered. All the available
parameters can be accessed by pressing the "down arrow"" key on the keyboard. . All the parameters that you
can type are displayed when you press the "down arrow" key. When letters are entered, a drop-down menu
gives suggestions to complete the name from among the parameters that correspond to the characters entered.
If the user needs to factor in uncertainties, these can be introduced on each of the parameters using the law
choice and the corresponding parameters (see detailed description of uncertainty calculations on parameters
further down). Uncertainties can be accessed via the ... button located to the right of each parameter.
The concept of a shortcut (or repeated element) was introduced in the Fault Tree module for four main reasons:
Let a fault tree contain three base events, one "OR" gate (critical event) and one "AND" gate.
The aim here is to create a shortcut to the gate (identical trasfert gate) called "And2" to be able to dissociate the
"And2" subtree from the main tree. Proceed as follows:
1. Delete the existing link between gate "Or1" and gate "And2".
The name of the original gate and the page number where the original gate is located are shown beside the shortcut
to gate "And2".
Although linked from the "computational logic" viewpoint, the two trees are now totally graphically independent.
They can now be placed on different pages or in different groups (cf. later on in this document).
The event which has just been duplicated is now marked in dark grey whereas the duplicated event is shown in
light grey. The name and number of the original event's page are shown beside the shortcut.
The repeated event must now be inserted in the model, given that at each instant its state will be equal to that
of the original event.
Obviously, if the original event is deleted then the duplicated event is also deleted.
Clicking on a shortcut automatically positions the view on this shortcut. You can return to the original element
by clicking on its name at the top of the window.
In the shortcut contextual menu obtained with a right click, it is possible to swich the shortcut and its
source.
2.6. Cloning
The action "Clone" will clone the selected gate, with its tree. There is two actions of cloning available:
• The first action allows you to do a complete cloning of the tree, which means all the gates and all the events
will be duplicated.
• The second action allows you to do a partial cloning of the tree, which means all the gates will be duplicated,
but the events will remain the same. The new created tree will have report of events instead of new events.
Only the tree's structure will be cloned: the attributes, parameters, and anything which can be attached to an event
will remain the same.
2.7. Components/Systems
The components are a set of events, while the systems are composed of multiples components.
The components/systems can be created in the table Components/Systems, but from a set of events selected in
the graphical view, it is possible to directly:
Their main uses are to observe the impact of a component/system in the result of a cuts computation, and to identify
which components can be at risk. When clicking on the button Set-up and start computation, in the tab Minimal
For large models the division method described above is very useful.
Another possibility for entering large Fault Tree is to use the Group concept. This is made possible by the
shortcuts and the fact that the data is global for a document. This allows quite separate subparts to be created:
1. Select a subpart.
2. Use menu Group - Group. A dialogue box then opens asking for the name to be given to the group being
created.
3. Enter the desired name and click OK (e.g.: "System 1"). The group is created: the subnet is replaced by a
rectangle assigned with the chosen name.
You can also create an empty group with Group - New Group menu or group tool in the left toolbar.
With a right click on the group, it is possible to view inside the group if Overview of the contents is
checked.
Each group can then be edited, renamed or ungrouped using the commands in the Group menu. The group can
also be edited with a click right or using the "cursor down arrow" on the left of the page manager. In Edit mode,
the submodel can then be modified as you wish. When the modification is terminated you return to the previous
figure by exiting group editing by menu Group - Quit Group Edition, or using the "cursor up arrow" on the left
of the page manager. It's also possible to choose a picture for a group by using Group - Change Picture menu.
2.9. Shaping
All events will have this shaping: All gates will have this shaping:
To apply this shaping it is necessary to select 1 or several elements and to change the style.
These functions (with the information shaping) are also accessible using the contextual menu.
This menu allows set up automatically the fault tree according to the size of comments:
• Reset to default size : accessible by F9, allow to back to the default size it means the one define in the document
options.
• Adjust to text size : accessible by F11, each rectangle will have a size adapted to its text.
• Adjust to the size of the wider and higher text : accessible by F12. In this case all the rectangles will have
the same size it means the size given by the element with the wider and higher text.
• Hide commentaries : this option allows to hide the rectangle of comments.
Automatic names choose allows to add a number of the name of the place.
• Or1 and And2 gates from original tree are become Or3 and And4 for the copy;
• Evt1, Evt2 and Evt3 events from original tree are become Evt4, Evt5 and Evt6 for the copy.
When copying to a new document, any data conflicts are handled in the following window:
1. Use data of destination document, this will replace the occurrences of the data in the source document by the
data with the same name in the destination document.
2. Create a copy for each data in conflict, this will replace the occurrences of the data in the source document by
a copy with a name with the suffix "copy".
3. Manually manage conflict, this allows you to choose whether you use the existing data or not, depending on the
data. You can also specify the name of the copy by double clicking on the box in the "destination document"
column. The names in this column are normally masked when the Use existing check box is selected, since it
is the data which is already in the destination document which will be used.
If the selected part is made up with a shortcut, the shortcut refers always at the same source.
Where possible, the "Copy / Paste and Renumber" function must be used in preference to the simple "Copy / Paste"
function to minimise the risk of errors. But when it is used you must take the necessary precautions to re-establish
the correct numbering to eliminate the duplicates.
• The "Renumber" part only concerns the places. It is used to change place numbers. You indicate a Start number
then specify a constant Step, or Add a constant value to the current numbers.
The name changes and renumbering can be done manually if the necessary precautions are taken (avoiding
duplicates, etc.). You click the Future number or Future name column and enter the change. Do not
forget to validate it with the "ENTER" key.
The "Replace selection" function does not allow the model's parameters to be replaced.
Using the shortcut bar or by a right click on an gate, you may edit the text apperance, the background color and
borders color of the selected gate:
3.5. Alignment
To improve the legibility of the model the selected elements can be aligned vertically or horizontally. To do this,
use the Align command in the Tools menu.
The following figure shows how the command works. For example, to align selected places and transitions
vertically, proceed as follows:
The Page size menu allows the user to edit the page dimensions directly.
The padlock on the toolbar is used to apply the zoom to the current page or to all pages in the document.
Note that if an element is selected on the page, the zoom will centre the page on that element.
The following picture show how to quickly align two elements of the model.
In order to align horizontally, select Align au middle which align keeping constant abscissa.
A double click on an element in the glue group opens the properties window of the element.
3.11. Line
To be able to draw a line, polyline or arrow, the Line can be used. Draw the line and edit properties of line to
make an arrow.
This window displays unused data. Select data you really want to delete and click OK.
The modification of the laws or a parameters used by several laws can be made easier using multiple changes.
allow to hide columns that are not editable for the laws and to display columns that are editable.
• or from clipboard.
These functionalities are accessible since the events tab using the icon Import events :
• At each saving by checking: Modification track when saving dans Tools - Document (or Application)
options .
Images may be very useful to represent sub-system. GRIF 2021 enables to save images that can be used in different
parts of software (groups, prototypes, ...). Images management is made in Images tab.
Once in document, picture can be linked to a groupe with Group - Picture change menu.
Images are saved inside document, pay attention to picture size. Because images are inside document, you have
to re-add picture if picture is modified erternaly.
• Internal key enumerates the differences according to internal elements of the model for example identifier,
creation index, etc...
• : element is added;
• : element is modified;
• : element is deleted.
• reload files;
• open files;
• open directory where file is saved.
This table allows to take into account the study hypothesis and add file or date to indicate that this hypothesis
is taken into account.
4.1. Creation
The tab Parameters allows the user to define his parameters.
The toolbar enables to do basic operations of the data tables(Section 1, “Description of the Tables”). The button
"New" opens the window to create a parameter :
A parameter has a name, a definition domain (Real, Boolean, Integer), a value and a dimension (Failure rate,
probability, time, factor, ...) which allow to specify the parameter. This typing is at this moment informative.
Parameters database : is an add-on which allows the user to get the data of his
parameter in a database or in a CSV or Excel file. This database is more detailed
in this section Section 11, “Database of parameters”.
Beta (61508) : is an add-on which allows the user to calculate the value of his
parameter (β) from a set of questions defined by the IEC 61508-6 Table D.1
standard - for the captors and finals elements.
Add-on details gives a synthesis of the data defined by the add-on. A double-click on the cell
allows the user to modify its definition.
Parameters Database Displays the database name containing the parameter.
database Identifier Displays the identifier of the data in the database.
Update Displays the date of the last update of the parameter from the database.
Beta (61508) MooN Define the configuration of the system (in functional logic) to use to calculate
the beta.
Beta Displays a button allowing to modify the choices made in the Table D.1 of the
standard IEC 61508-6
5.1. Creation
The attribute tab allows the user to create attributes that are used to qualify elements defined on system.
• name;
• domain ;
• default value;
• type of data: to choose where apply the attribute;
• constraint.
In Constraint field, user can enter a constraint on the attribute to ensure the proper use of the attribute in the model.
In addition, the attributes of float or integer type have a Constraint type Enumerate or Interval.
1. The beta-total law: Beta parameter is applied to the laws of concerned components.
Singularities:
a. A component can be concerned by several CCF using beta-total law.
b. The sum of the beta set on the CCF must be strictly less than 1 for a component.
c. The supported laws for a component are exponential, constant and test-periodic.
2. The beta (Standard) law: The laws of the components are replaced by the law defined by the CCF.
Singularities:
a. A component must be linked to only one CCF using beta law.
b. Laws of components are no longer used.
c. All laws are supported.
3. The Multiple Greek letter model: apply for a group of n events.
For a group of n events the aim is to have n - 1 factors ρ2, ... ρn-1. ρk denotes the conditional probability that k
components of the group fail given that k-1 failed with 2 ≤ k ≤ n.
According to Nureg/CR-5485:
3 different implementations are included each given similar probability but different minimal cut sets. User
chooses the implementation in the calculation options:
• Atwood 1986 Definition:Events are generated according to Atwood definition (Intrinsic| Lethale | (Non-
lethale & constant p)).
• NUREG/CR-5485 with concat function: Events are generated in order to have results that are comparable
with NUREG/CR-5485. Extrem case are concatenate with concat function:
– individual failure with nonlethal failure of one component;
– lethal failure with nonlethal failure of all components.
• NUREG/CR-5485 without concat fonction: Events are generated in order to have results that are comparable
with NUREG/CR-5485. Extrem case are concatenate with OR gate:
– individual failure with nonlethal failure of one component;
– lethal failure with nonlethal failure of all components.
7. BFR ISOTR12489 is a variant of the BFR CCF, from the standard ISO/TR 12489:2013.
In this CCF, the user has to enter its failure rate, common to the lethale part and non-lethale part, as well as
the Beta (lethale and non-lethale).
User Manual 63 / 133
The probability that the failure, within the non-lethale Beta, is independante (corresponding to the p in the BFR
ccf) is given by this estimation figuring on the norme :
This CCF can not have less than four impacted elements.
8. BFR ISOTR12489 TOTAL is a variant of the BFR ISOTR12489.
Its functionning is the same as the BFR ISOTR12489 CCF. The only difference is there is no law to enter : it
will directly create its own failure rate, from the laws of its impacted events, like the Beta TOTAL CCF. Its
impacted numbers must be higher than 4 here too.
All parameters can be edited directly using the CFF table and a color can be associated of each CCF.
In the remainder of this chapter, the parameter "types" will be specified for each law.
By default, unit used in this module is the hour. it is possible to change the unit in Document options
This option can be used with nammed parameters. In this case, unit is linked with the prameter when it creates
and depends of the dimension choosen by the user.
Once the option selected, a field appears in the events to inform the factor:
Parameter:
• q (Probability)
• w (Inconditional failure rate)
This law generally corresponds to the case where the only failure considered for the components is that of a refusal
to change state (e.g.: Fails to start/stop, etc.).
Parameters:
This law is widely used since it is almost the only one to make it possible to obtain analytical results. In addition,
it describes the lifetime of a non-repairable component very well (at least when there are a large number of
components) when the component is no longer young.
Parameters:
Results can be different when step by step calculation is made due to the fact that mission time is the
maximum time calculation).
Parameters:
The Gamma and Mu parameters are optional. Depending on the case, they can be zero.
Parameters:
The significance of this law is that new distributions can be tested by varying the beta factor:
• If Beta is less than 1, the failure rate decreases and the law then allows the period when the component is young
to be taken into account.
• If Beta is greater than 1, the failure rate increases and the law then allows the component's ageing period to
be taken into account.
• If Beta is equal to 1, the Weibull law is equivalent to the exponential law.
Parameters:
• Age at t=0 (Time) = Virtual age of the component at the initial time.
• Scale parameter (η) (Time) = Failure rate scale parameter
• Shape parameter (β) (Factor) = Failure rate shape parameter
• T0 (Time) = First date of preventive maintenance
• Maintenance period (T1) (Duration) = Duration between two preventive maintenance
• Efficiency (α) (Factor) = Preventive maintenance efficiency (age reduction factor)
• ARA model (0 or 1) = Age reduction model:
– 0 : To use an ARA∞ model Following preventive maintenance (with or without induced corrective
maintenance), the age of the component is reduced by a factor α.
– 1 : To use an ARA1 model Following preventive maintenance (with or without induced corrective
maintenance), the age of the component taken since the last preventive maintenance is reduced by a factor α.
Either (δ) = "age reduction" parameter of the failure rate (in time units) calculated according to the specified ARA
model.
Parameters:
• Age at t=0 (Time) = Virtual age of the component at the initial time.
• Scale parameter (η) (Time) = Failure rate scale parameter
• Shape parameter (β) (Factor) = Failure rate shape parameter
• Mu = Repair rate
• Coefficient applicable to the failure rate (Factor) = Given a coefficient x, multiply the scale parameter by
x ^ (- 1 / beta))
General assumptions :
Parameters:
This law is a simplified version of the "TPC / Full Periodic Test" law.
Parameters:
Here is a small graph representing the different phases of the component's "life":
This law is a simplified version of the "TPC / Full Periodic Test" law.
Parameters:
the "ignore parameter value" is the value to type if you want parameter to do not affect component
availability.
Here is a small graph representing the different phases of the component's "life":
This law does not depend on the time, it is a short version of a constant law.
Parameters:
This law does not depend on the time, it is a short version of a constant law.
Parameters:
Parameters:
This law does not depend on the time, it is a short version of a constant law.
Parameters:
If you ask for computation a times which are not in the table, the value will be interpolated according
to other points.
Parameters:
• Number of failures
The result of the computation will be a constant probability calculated at the end of the mission.
Parameters :
• "UNIF / Uniform";
• "NORM / Normal";
• "NLOG / Lognormal";
• "OBS / Observation";
• "OBS (#) / Periodic Observation" ;
• "GAM / Gamma";
• "BET / Beta";
• "TRI / Triangular".
Using this method, it is thus possible to introduce the impact of the uncertainties on the data into the final result.
Parameters:
• a = upper limit
• b = lower limit
Parameters:
Where Sigma is equal to ln(EF)/coef, where coef is the quantile of the normal law conresponding to the chosen
percentage (1.645 for 90%), and where Mu = ln(E(x)) - Sigma²/2
Parameters:
• Mu = mean
• Sigma = standard deviation
Parameters:
Parameters:
This function is partly based on a random number generator that uses a beta distribution (W-N + 1, N).
Parameters:
• K = Shape parameter
• Theta (θ) = Scale parameter
Parameters:
Paramètres :
• a = minimum
• b = maximum
• c =optimum
In propagation uncertainties:
• in the configuration of the laws as described in the chapter Configuring the laws [31]
• in the tab of parameters. In this case, ff a same parameter is used in 2 events, the same uncertainty is considered
To do that, first it is necessary to select the column Activate uncertainty and Law using the columns manager.
After, in the tab of parameters, It is enough to choose or not to activate the uncertainties and the law will be
applied in Law column.
• LS
– Number: 1
– Comment: "Logic"
– Law: exponential law with "Lambda" = Lambda1.
• SV2
– Number: 3
– Comment: "Valve 2"
– Law: simple periodic test law with "Lambda" = Lambda2, "Tau" = Test and "T0" = 10.
• S1
– Number: 4
– Comment: "Sensor 1"
– Law: unavailability with "Gamma" = Gamma, "Lambda" = Lambda1 and "Mu" = Mu2.
• S2
– Number: 5
– Comment: "Sensor 2"
– Law: unavailability with "Gamma" = Gamma, "Lambda" = Lambda1 and "Mu" = Mu2.
• S3
– Number: 6
– Comment: "Sensor 3"
– Law: unavailability with "Gamma" = Gamma, "Lambda" = Lambda1 and "Mu" = Mu2.
• R
– Number: 7
– Comment: "Relay"
– Law: unavailability with "Gamma" = 0, "Lambda" = 10e-4 and "Mu" = Mu1.
• SS_1
– Number: 8
– Comment: "Sub-system 1"
– Law: full periodic test law with "Lambda" = Lambda1, "Lambda*" = Lambda1, "Mu" = Mu1, "Tau" =
4380, "Theta" = 4380, "Gamma" = 0, "Pi" = 10, "X" = 0, "Sigma" = 1 and "Omega" = 0.
• SS_2
– Number: 9
– Comment: "Sub-system 2"
– Law: full periodic test law with "Lambda" = Lambda1, "Lambda*" = Lambda1, "Mu" = Mu1, "Tau" =
4380, "Theta" = 10, "Gamma" = 0, "Pi" = 10, "X" = 0, "Sigma" = 1 and "Omega" = 0.
• Div1
– Number: 1
– Name: Or1
– Comment: "ER"
– Type: "OR"
• Div1
– Number: 2
– Name: And2
– Comment: "VALVES"
– Type: "AND"
• Div1
– Number: 3
– Name: KofN3
– Comment: "SENSORS"
– Type: "K out of N"
• Div1
– Number: 4
User Manual 79 / 133
– Name: Or4
– Comment: "Sub-systems"
– Type: "OR"
In this example, different types of more or less simple laws have been used. It was produced in a short time and
allowed several more or less complex components to be modelled: non repairable, repairable, periodically-tested,
with probability of failure on demand, etc.
Using this tree, we can now run various computations on the different gates or events: unavailability computations,
unreliability computations, etc.
• Albizia;
• MOCA.
These two computation options are accessible in the Data and Computations menu on the task bar.
The computation configuration window can be accessed in two different ways: either via Data and Computations
- Computation settings menu or via Data and Computations - Launch Computation menu. The difference
between both is that, in the second case, the configuration step is directly followed by the computation launch step.
The configuration window is divided into 3 tabs (1 for each type ofcomputation).
• Target: specifies the target of the computations. Four choices are possible: All nodes , Top Events for the
top(s) of the tree, Watched node(s) for node in the watched element list, Time Spent node(s) for nodes in the
Time Spent element list and Selected node for the node currently selected in the tree.
Notice that watched elements can be directly added by a right click on the wanted element in the table
of events/gates.
– Iterate From A to B step C: the computations will be performed for values of t ranging from A to B with
a step of C.
– List of times : the computations will be performed for the values of t given in this list.
It is possible to make the calculation just before a test period by indicating a - after the chosen time
for calculations
– Display discontinuity points : the computation engine takes into account the discontinuity points if the
option is selected.
– Times in : The values entered are supposed to be hours. The unit can be specify among hours, days, months,
years
– Compute mean value through [0, t] : the computation engine computes the mean value of each variable
to compute for each computation times.
– Compute integral value through [0, t] : the computation engine computes the integral of each variable to
compute for each computation times.
• Activate propagation of uncertainty : activate the propagtion of uncertainties, and specifies parameters of
computation and wanted results.
– Conditional Failure Intensity : CFI(t), λ eq(t) or λ Vesely(t) according to different standards and countries.
It is equal to W(t)/A(t) It is the probability that the system fails between t and t+dt, assuming system was
OK at t and at time t=0.
– Unreliability : F(t) = 1 - R(t)
– Reliability : R(t) = R(t)=exp[-(Integral from 0 to t) of λ eq(u)du]. We can see here that this reliability
is based on an equivalent lambda, and not on the real lambda. This is a good approximation that is
conservative. Anyway, you can not compute the reliability with a fault-tree. For systems made with
unrepairable components, the result is exact (because it is equal to Availability).
– Calculation of time spent in zones : For above values, this option allows to know percentage of time spent
in each interval. These intervals are configurable using Configuration button. By default, SIL zones are used.
– Configuration of mean times allows you to configurate the computations to obtain the mean times. (cf.
Section 9.1.1.5, “Configuration of mean times”)
• Target: specifies the target of the computations. Four choices are possible: All nodes , Top Events for the
top(s) of the tree, Watched node(s) for node in the watched element list, Time Spent node(s) for nodes in the
Time Spent element list and Selected node for the node currently selected in the tree.
• Minimal cut sets algorithm: allows to choose between the two available algorithms. The MCS algorithm
(Minimal Cut Set) gathers the cuts from the construction of the ZBDD, while the PI algorithm will create the
cuts from the Prime Implicant. This last one allows the incoherent formulas, but not the first one. The Auto
mode let GRIF choose the best algorithm (depending on the formula and the options).
• Maximum number of cuts: allows to inquire a maximal number of cuts. If the number of cuts exceeds this
number, the cuts having the greater number of elements will not be saved.
• Number of cuts : number of minimal cuts of the system (no maximum order limitation).
• Number of cuts per order : summary of the number of cuts for each order (no maximum order limitation).
• Compute probability of cut sets: allows to add the probability to each cut of the list.
• Compute frequency of cut sets: allows to add the frequency to each cut of the list.
• Compute at time t= allows to inform the time when the probabilities and the frequencies of the cuts are
calculated.
• Order of the shortest minimal cutset containing each event allows to know for each event what is the order
of the smallest cut containing this event.
• Filter cuts allows to not take into account some cuts which do not have a probability or an order superior to
the given limit.
• Computations to be done allows to inform what computations will be done. It is possible to do the computation
on the failure mode of the formula, but depending to the module, it is possible to do the computations on the
components of the formula, or the systems of the formula.
• A cuts save in the result file is possible by selecting the option Save result as XML, but the cuts being
voluminous, the result file will be bigger.
– Birnbaum (MIF)
– Fussel-Vesely (DIF)
The manual configuration of MIF computation allows you to chose MIF algorithm.
• Partial derivative: Uses quick algorithm based on partial derivative. To be used with coherent fault trees only)
• Exclusive Cofactor: Uses (less quick) algorithm using Exclusive cofactor S#. It stays valid with non-coherent
fault trees.
• BDD: Uses algorithm using BDD (only for coherent fault trees)
With automatic mode, the Partial derivative algorithm is used, execpt for non-coherent fault tree (Negation,
XOR, IfThenElse ...) where S# is used.
The options of the computations allow to inform some additional options, on the three parts seen previously:
• Do truncated computation at order: allows to not take into account the elements which have an order greater
than the given order. For example, a AND gate with five sons will not be taken into account if we give four
as the truncated computation order.
• Do truncating during: allows to inform when computations will be truncated. It can be during the BDD
Construction, so on the probabilities, or during the ZBDD Construction, so on the cuts. The Back
computation allows, when the truncation is on the BDD, to make a Back Computation, which means to compute
for all the targets the probabilities from the cuts of the ZBDD. This allows to have a better accuracy of the target
probability when the BDD is truncated.
• Indexation heuristic: allows to inform which algorithm will be used by ALBIZIA to order the variables in the
dataset. (cf. Doc Albizia)
• Maximum risk in risk matrices: allows to have on the risk matrices in the ordinates the medium frequencies
(if not selected) or the maximum frequencies (if selected).
• Simplified dormant exponential allows to simplify the dormant exponential laws into constant laws, with
parameter q equals to the maximum between the test period and the maximum of mission time.
• Options of uncertainty law Observation: allows to configurate the uncertainty laws of type Observation of
the parameters in the document.
• Options for Beta-Total CCF: allows to configure all the CCF of Beta-Total type in the document. The option
Simplified CCF for periodic tests allows to set to 0 all the parameters of the tests for the CCF (Gamma, Pi,
X, Sigma and the Omegas). The Computation of lambda for Beta-TOTAL CCF: allows to inform how the
Lambda will be calculated : Minimal Lambda which is not recommended since there is a lost of precision,
Maximal Lambda which allows to keep the precision, and the differents Medium Lambda.
• BFR CCF generation allows to inform which algorithm will be used to decompose the BFR CCFs.
The algorithm NUREG/CR-5485 will take into account during the lethal/non lethal failure every impacted
elements by the CCF. These elements will then be under a new gate OR (in the case of without concat function),
or under a new gate Concat (in the case of with concat function).
The algorithm Atwood 1986 allows to decompose an impacted event by a CCF in three parts: An intrinsic part,
a lethal part and a no lethal part (made out of two parts : the non lethal part intrinsic of the event, and the non
lethal part linked to the CCF)
• Do calculation in another JVM allows, when the computations has to be done on a huge model (and so going
to take a lot of times), to launch the computations on a new process independent of GRIF. It is then possible
to continue working on GRIF on the meantime. The Options of the other JVM allow to inform the options of
the JVM, for example the given space allowed (-mx"Memory size").
To obtain mean times results it means: MTTF, MDT, MUT, MTBF, number of failures, mean up time and mean
down time, it is enough to check the box Computation of mean times in Mean times tab.
• MTTF: Mean Time To Failure: time before the item fails. It is used to describe the time
– to failure for a non-repairable item;
– to the first failure for a repairable item.
• MTBF: Mean Time Between Failure: time between successive failures of a repairable item.
GRIF (with Albizia engine) enables to compute UFI on non-coherent fault tree. The automatic mode takes into
account almost cases, but user can select which algorithm to use. There is two way for UFI computation:
• UFI computation with MIF: It is "usual" method. Let be a System S made of many components c, the UFI
(also called w) of S is equal to UFI S = w S Σ MIF(S,c)*w c . This algotithme is less performant than the one
based on BDD, but it works for non-coherent fault tree (if the MIF is well computed).
• UFI computation with BDD: It is the "fastest" methode which is base on BDD. This method doesn't work for
non-coherent fault trees, except in the particular case of initiator events (cf. option below).
In order to exmplain the Take failure order into account "not-initiator" then "initiator" option, lets take a
simple example: un system made of one safety barrier which set the system in a safety state if an initator event is
detected. The top event is an initator event which is not detected by the barrier. The frequency of this top event
is the result of two cases:
• The barrier is already out of order (with some probability) and the initiator event happens (with some frequency)
• the initiator event is already here (with some probability) and the barriers fails (with some frequency)
The second case doesn't matter because the system is set in a safe mode. That why this case can be removed
from UFI computation. It is what is done if user check Take failure order into account "not-initiator" then
"initiator" option. This options works the both algorithms. Moreover, this options allows you to use UFI
computation with BDD if initiato part is coherent.
It is possible to choose among various algorithms the indexation heuristics to order B.D.D. construction.
When using common cause failure, the software must compute a lambdaCCF that will be used for CCF. It is the
one that will be multiplied by Beta. Assuming each component impacted bay a CCF has a different lambda, there
are many methods to compute the lambdaCCF from the list of lambdas. Five methods are available:
• Minimum: This method uses the minimum value of lambdas. Not recommanded.
• Maximum: Uses the maximum value of lambdas to be concervativ. This method was used in GRIF 2013 and
previous version. It can be penalizing when lambda of components are very different.
• Average: This method uses the artimetic mean of lambdas.
• Geometric mean (Method detailed in PDS): This method uses the geometric mean of lambdas. It is PDS Method
recommanded by SINTEF. It works fine with very different lambdas.
• Probability
• Importance Factors
• Products
• Mean times
• Results
• Info
Importance factors tab displays importance factors for each event and for each system.
Products shows results of cuts/products computations. In synthesis, a cut with a "0" order, means that the top
event is always true. It may happen if some parts are "forced to 1".
Mean times tab give the different calculations of mean times (MTTF, MDT, ...).
Info tab contains information about algorithm used. This information can be copied / pasted for any other use.
The computation configuration window can be accessed in two different ways: either via menu Data and
Computations - Moca Data or via Data and Computations - Launch Moca ... . The difference between the two
is that, in the second case, the configuration step is directly followed by the computation launch step.
• Iterate From A to B step C: the computations will be performed for values of t ranging from A to B with
a step of C.
• List of times : the computations will be performed for the values of t given in this list.
• Computation made at : by default, computations are made immediately after transition triggering, but you
can do computation at t-Epsilon (just before triggering), or at both.
• Unit : default times unit is "hour". You can choose a unit that will be used for computation times. N.b. results
are always in hours.
3. General :
• Number of histories : Number of histories (NH) to be simulated (each history has a time t indicated below).
• Automatic history duration : If this box is checked, GRIF will compute history duration using computation
time of variables and statistical states. If not, user can choose a specific History duration
• Multi-processors computing Enables (or not) the multi-processor computing (when available).
• Loop detected when the number of transitions firing at the same time is grater than : You can choose
the limit of transitions fired at the same time before loop detection.
• Max number of loops while() : if using in a transition.
• Continue calculation if errors : If an error is detected, the current history is stopped and we pass to the
following one without stopping the calculations.
• Display seed history : Display or not the seed used by the random number generator.
• Use old seed management (version < 2018) : From 2019, a new random number generator was developed
to increase the number of playable story without seed repetition. It is recommended that you use this option
only for backward compatibility for your old documents.
• Computes every nodes : Useful option in the boolean modules to have the calculations on all the nodes (by
default the calculations are performed only in the top event).
• Delay re-computation for dynamic transitions : Selects the method for recalculating the delay of
transitions marked as dynamic. For more information on the possible choices, refer to User manual
Moca14.10.3 [2.7.10. Dynamic transitions]
5. Statistics
• Confidence interval : Allow to choose the confidence interval at 90%, 95%, 99%, 99.9% and 99.99% (by
default 90% is checked). .
• Disable statistics on places and transitions : Allow not to display the statistics on places and transitions.
• unlimited histogram : In case of histogram all the stories are taken into account not only the 1000 first ones.
• Do not save 0 value in history : Option to not save the historic if the statistic value is 0.
• Activate uncertainty propagation Enables (or not) the uncertainty propagation computations (two-stage
simulation): in this case we must specify the number of sets of parameters "played" (the real number of
histories thus simulated will be the "number of sets of parameters x number of histories to be simulated" and
will be displayed in the "Total number of histories" field).
• Histogram with every history of the tries (with uncertainty propagation) : Allows to display the
histogram with every history of the tries.
6. Variables : This tabs reminds computing configuration of variables. If document contains some statistical
states, another tab is available.
The MocaRP computation engine allows to perform sequence generation. In this computation mode, it is possible
to list all the sequences of transition fire which leads to undesirable event. However, statistical computation will
not be made.
In the Sequence Generation tab, it is necessary to indicate the name of the Undesirable event. This event is a
variable defined by a boolean expression. A true value indicates that the undesirable event has occurred during
the current story.
Sequences that result in the undesirable event are grouped into an equivalence class. It is possible to choose the
algorithm used to define this equivalence class:
• None : All transition sequences leading to the undesirable event will be returned. (no minimization)
• Minimal cut sets : only the transitions are interested, without duplicates and without order, which led to the
undesirable event. A minimal cut set includes all the sequences that include it in the same equivalence class.
See Manuel utilisateur Moca14.10.3 [3.4.5. Lancement d'une génération de séquences] for more information.
The computations options Save seeds allows to save the history seed and the occurrence time when undesirable
event occurs.
Only the transitions with the flag SEQGEN with a true value are considered in the sequence. All others transitions
are not taken into account. They generally correspond to transitions that don't contribute to the sequence generation
(such as instantaneous reconfiguration transitions).
The results are presented in a window with different tabs and tables.
Moca results atre displayed in a window containing 6 main tabs: variables, places, transitions, XML, stantard
output, info.
The Variables tab contains all the information computed for each variable (or statistical state).
It contains sojourn duration and mean mark for each place of Petri Net.
It contains firing frequencies for each transition, and firing history for each history.
Other tabs display "raw" results. XML tab contains XML output of Moca, it is the file used to retrieve data. This
file can be used for further post-treatments.
Standard output displays the standard output of Moca (available only after computing).
Info tab contains useful information about computation (simulation time, number of histories that have been
done ...). This information can be copied / pasted for any other use.
9.3.1. Result-tables
Result-tables are made of data and a top part to set table up.
When filter is activated, a small (+) is diplayed near column title. Filter can be remove with button.
Results can also be displayed with a Curve by clicking on . Data used for x-axe and y-axe must be specified
in the following window:
9.3.3. Result-Panels
The fisrt part shows for each target time spent in each zone. This parts displays only if the calculation is selected
in the calculaption parameters.
9.3.3.1.2. Synthesis
In this part, for each target and for each calculation asked, table shows mean, maximum value, the average and
the integral. Each calculation is displayed in different table.
Result-panels have been created to facilitate data access in tables with many columns. The aim is to make a prior
filter to keep wanted data.
This panel is made of a combo-box in the upper-left corner which enables to remove the column from the table
and creates a list on the left which contains every value in the removed column. When you select a value in the
left list, it modifies the table in order to show lines whose removed column contains the selected value.
The combo-box in the upper-right corner enables to choose which column C will be used to cut table. The table
will be cut in many tables, each one in a tab whose title is equal to the value used to filter the C column. Then C
column is removed since it contains only the one value in a given tab.
Margin corresponds to the ration between Allocated probability and Computed probability.
In documents option it is possible to specify if this information are dispayed on the events.
This option is in Additional information to specifiy if the allocation and the percentage (marge) Which separates
it from thecomputed probability is wanted.
First tab shows the number of minimal cut sets and the number in function of the order.
Second tab gives minimal cut sets details with associated probability. Products can be sorted out following:
• Order;
• Order/alphanumeric;
• Order/probability;
• Order/probability/alphanumeric;
• Probability/order;
• Probability/order/alphanumeric.
icon exports in dag format un fault tree made up with all the minimal cut sets. This fault tree is created with
a gate OR of all the cuts.
The sum of probabilities of all minimal cutsets and the sum of probabilities of filtered minimal cutsets are displayed
at the bottom of the tab.
The third tab gives the minimal cups with the detail of the laws (Type of laws, failure rate, period tests) of the
events. As the previous tab, it can be sorted out of different way and it is also possible to limit the display of
The fourth tab gives for each event the level of the lowest minimal cut set order in which it appears.
The batch launching window is made of two part, the first is for the name of the batch and the number of
computations in the batch. Then each computation can be set up:
The above example shows a batch with 2 computations, the first is made with a lambda parameter with 1.0E-5
value and a mu parameter with 0.1 value.
After a computation, the model is always reset up to an initial state without modification.
You can display a result with a double-click on it. There is a default result for each computation engine, it is the
place where "standard" computations are stored. Then, each is a batch computation directory, it contains as
many results as computations asked for the batch. Finally, the directory contains results for curves that have
been frozen.
Compute manager is automatically displayed when calculations are performed. User can display the window
•
: allow to reorganize the calculations order;
•
: display the following windows for computation settings:
•
: stop selected compute;
•
: suspend selected compute;
•
: resume compute in suspend;
•
: display results of selected compute;
•
: details errors;
•
: remove selected compute;
•
: clear all compute;
When a task is added to Compute manager, user is not blocked until the task is ended. He can continue to work
on his model. He can even relaunch a calculation. The various tasks accumulate and are treated sequentially.
Charts icon:
We must now define the curves to be drawn. To do this, click right on the box to display the Charts Edit window.
2. Data list: this part includes a table with several columns in which the different curves on the graph are listed
(name, description, display, curve colour, curve style, curve thickness, display average). A number of different
buttons are available above this table.
For each curve, the user can specify the colour, point style, line thickness and display.
3. Computation options: enables the user to enter settings for the computation (optional depending on the
module).
5. Display options: activates the Display title function (display graph title) and the Display generic values
function (display min, max and average for each curve).
When a curve is edited, the edit curve window often includes 3 parts: the times at which the computations are
performed, what has been calculated and the extra information (generic values) that should or should not be
displayed below the curve.
Comment: it is sometimes necessary to refresh all the graphs in a document. This can be done using the Tools /
When you click the Add button in the Data list part you reach a window for curves setup. Each curve displays
data stored in the result-bank. The following window helps users to specify how to retrieve data.
• Result to be displayed: each computation contains many results. Select the one you want to be drawn.
• You can display a list a point whose X and Y will be taken from the data selected in the combo-boxes; or you
can display the time spent in each zone.
• Axes: When a result is selected, select what must be in X-Axe and what must be in Y-Axe.
• Value to be displayed: Then you can display additional information about the result (min, max, average ....)
When the user clicks on Compare in the Data list section, a window opens enabling the user to specify the curve
to be plotted. S/he can then choose whether or not to display a result from several different computations. The
following window is used to indicate the way in which the information is to be recovered.
• Computation selection: the user can select the different computations to be used from the results bank. Hold
down the Ctrl button to select several different computations.
• Result to be displayed: a computation often contains several results and this file tree structure is used to specify
the result that the user wants to display.
• For which point?: indicates which point of the computation is to be compared to the others.
• Display x-axis values according to: indicates which data must be displayed on the x-axis.
• Value to be displayed: finally, certain extra data can be displayed (min, max, average, etc.)
It is possible to create a curve directly with a right clock on the event or gates by selecting the icon
• Unavailability: U(t) ;
• Unconditional failure intensity: W(t) ;
• Conditional failure intensity: λ eq(t).
Modify a connection to an existing database. It opens the same window when adding a connection,
but the fields are already filled by the data previously entered.
Delete the selected connections of the databases.
This type of connection is the simplest. The CSV file has for extension ".csv". It is a simple text file where the
different fields are separated by commas, tabulations or semicolons.
11.2.1.2. Connection
Once clicked on the button "Add a connection to a database", a window opens up:
This window has as a common base, the selection of the database, the fields for "ID", "name", "value",
"description", "dimension" and "unit", and a button Test Connection. By clicking on this button, GRIF tries to
connect to the database and so verifies the configuration provided by the user.
When adding a CSV database, the type CSV must be selected. A new field appears: the separators between the
data. To sum up, there are three steps to add a connection to a CSV database:
• First, fill the path of the CSV file in. A file explorer is at your disposal (button ...).
• Then, specify the type of the separators used in the CSV file.
• Finally, enter the six fields names of the CSV file. (Or only the ID, name and value fields) (Uppercase letters
are taken into account as lowercase)
Warning : It's important to note that when creating a connection to a CSV database, you must have all
of the data on a single sheet.
The databases of the .xls or .xlsx extensions correspond to EXCEL files. Here is an example of an EXCEL
Database :
11.2.2.2. Connection
To connect GRIF to this database, select the XLS type in the connection window. The window is now as followed:
Sheet is the sheet's name where the data are located, and will be filled once a valid path to an EXCEL file has
been entered.
GRIF can connect to any database with JDBC, as long as the database follows the same rules of the databases seen
earlier. The window for that kind of connection has multiples fields to fill:
4. The SQL request SELECT id,name,value,description,dimension,unit FROM REX is used to gather the
dates.
Once a connection with a database is ready, GRIF can now import a set of parameters from the database, but
also updates these parameters when modifications has been made in the databases, or recreate the links of these
parameters so they can now take the values of another database.
Select the parameters you want to import, and click on OK. The parameters are now created and imported in
GRIF. The created parameters have the same names than the database's parameters, and the fields "Description"
or "Dimension" are identical of those found in the database.
It is important to underline that it is possible to manually create a parameter in GRIF, and then with its Add-On
menu, assign the parameter's value of the connected database. This operation is detailed in this link.
This window shows the parameters in GRIF which are connected to parameters from the databases. The red lines
correspond to data which have been modified in the database. If the user wants to update some of his parameters
in GRIF, he must select the lines of the wanted parameters, and then press the OK button. The parameters are
now updated.
Here we can see the different parameters of the databases, which are imported in GRIF, and which are on multiples
databases. So on the line of the parameters you want to rebuild the links, select the right database, and then validate
your modifications by clicking on OK. GRIF then update the values of the parameters by rebuilding the links.
New (from template)... menu allows to open a new document and to initialize it with data from a model already
build. A window appears to select the existing model.
Import a template... menu allows to add to the current document data from a model already build.
It is possible to create new files from this model using New (from a template)... action. A drag and drop to the
templates from the input area allows to import the model quickly.
Save as default template menu allows to save the current document as default model in the module template
directory. This model will also be the default model of the module. It will be used as base for creating a new
document when File - New (default) action is used.
• Access to the edit window of the gate, and tick the box associated to the label Confidential gate.
• By a right click on the gate(s), select the menu Confidentiality, and then Make confidential.
• In the Gate's table, tick the box located in the Confidentiality column. If this column does not appear in the
table, then in the Column manager, tick the box Confidentiality to make it appear.
A gate is confidential when, on the graphical view, the icon is next to the gate, or when the box of
the Confidentiality column is ticked. Once every wanted gates are confidentials, then the user can launch the
command Save as... (Confidential), reachable from the menu File -> Save as ... (Confidentiel).
The command Save as... (Confidential) supress every subtree which has as a parent a confidential gate, and
then replace these confidential gates by events, with a Constante law, with the parameter q equals to the same
probability calculated on this gate before the suppression.
In the example above, the events Evt1, Evt2 and Evt3 will be removed, and the gate And2 will be replaced by
an event (with the same name), giving this example below:
However, there are some requirements to respect before launching this command.
• Every event or gate taken from the descendants of a confidential gate, must have in their ancentry a confidential
gate, before reaching the root of the tree (except if the root is confidential). To illustrate this requirement, the
example given below shows the case where Evt3 has an ancentry of confidentials gates and nonconfidential
The Evt3 has for ancestry the gate And2 and And3. But any of the ancestry of the gate And3 are confidential.
In this example (see below), the Evt3 has always a confidential gate in his ancestry. This is what we want, since
its suppression will not affect any others gates (And4 is going to be removed since And3 is confidential).
The result of the command in this example gives a tree with And1 as the root, with the events And2 and And3
as childs of the root.
Select the part of the model, copy it, and paste it in Microsoft WORD or other software.
12.5. Results
Computation results can be saved in different formats:
• Save result file: saves the contents of the Results tab (.xml format).
• Advanced report: generates reports using style sheets.
• Save standard output: saves the contents of the Info tab (.txt format).
User Manual 122 / 133
• Save engine data file: saves the data file sent to the computation engine (.txt format).
• Save as XML spreadsheet 2003 (XMLSS): saves all the results tables in an XML format compatible with
Microsoft(r) Excel 2003 and later versions.
12.6. Curves
For each curve drawn, the points which have been computed in CSV format can be saved. This list of points can
then be used to draw new curves or to perform further computations.
• Page setup
13.2. Print
The Print function allows you to export .pdf document pages. Graphics are exports in a vector graphics format
in order to scale it without deterioration. All data table and the results of calculations can be also exported. Here
is the window of configuration of the printing:
Printing properties tab gives the possibility of configuring what will be visible on all the printed pages. This
tab contains three parts: the header, the body and footers. Below here is an example which illustrates the various
zones on the PDF:
Each of three text fields is configurable. The user can so modify the police, the style, the color and the positioning
of the text in the zone. He can also configure the zone itself by allocating a background color and a frame. A click-
right on the text field shows a contextual menu: Display settings
• Print a border in the graphic pages allows to bound visually the pages of graphs besides of the page of
printing. Warning: this frame can be in conflict with a possible frame defines in the zone of body of page
• Watermark allows to seize an image to be printed on a background with colors which will be limited. The
image can go out of the zone of body of page
• Print number of page in the footer in the lower right. The first number can be chosen to start not at 1.
2. Pages
• Print selection : select pages and groups will be printed. Select recursively the pages option is a help in order
to select quickly sub-pages.
3. Data
Each sub-tab will represent a table in the PDF document. The title and the print order of these tables can be
modified.
By default all the types of data are represented (one by sub-tab). The upper right buttons allow to add it or to delete
it. To note that we can print several times of the same data type in different tables. The data table can be filter
using the usual filter. The Column manager can be also used.
4. Calculation
By default all the calculation results are represented (one by sub-tab). The upper right buttons allow to add to it
or to delete it.
5. Example
When you select the Save in RTF file function, the first box to appear is that shown above. You can then select
your preference: Print border, Print filename, Print page number and/or Print date.
Secondly, an Information window appears. It allows you to indicate whether you wish to print the current view,
print the current page or print the whole document.
14.1. Executables
Executables tab enables to specify path to external executables :
14.2. Options
Options tab enables to tune application behavior :
• Save the options of the current document as default options in the application : Save options of current
doc as application default options.
• The application manages the default options of the documents, apply the default options to the current
document : Apply -Application options- to current document.
• Delay of automatic document saving (in minutes) : Delay of automatic document saving (in minutes). A null
value disables automatic saving.
• Number of undo : Specifies number of possible undo/redo.
• Number of recent files : Specifies number of files in recent files list.
• Window display : Enables separate tables (external) or linked tables (internal).
• Columns to be resized in tables : Enables to specify the columns on which space will be taken for resizing.
• Ask for confirmation before deletion outside the input area : When deleting an element in the graphic tree
or in the table date, a dialog box will be displayed.
• Manage new names to avoid name conflict : Tries to avoid name conflict, creating new objects whose name
is unique (when pasting for example).
• Synchronize view with tables : Select objects in tables (on the right) when they are selected in view.
• Synchronize view with explorer : Select objects in explorer (on the left) when they are selected in view.
• Ask for confirmation if closing with close button : When closing with the button at the top-right of a dialog
box, the software will ask for a confirmation. Use OK or CANCEL buttons if you don't want to confirm closing.
• Modification tracking when saving : When saving, if tacking is activated, you can add a comment about
modifications made on the document.
• In results window, display description instead of default name : Enable displaying of Comment/Description
of objects in results window. I can be better than a default name may be without meaning.
14.3. Graphics
Graphics tab enables to modify GUI look :
• Use Windows look and feel : Use the look and feel of your operating system instead of java look and feel
(GRIF restart is needed).
• Element Zoom : Changes graphics size.
• Outline for dynamic fields : Object outline configuration (line color, line width, background color, ...).
• Font for dynamic fields : Enables font configuration (color, size, italic ...) for information that are displayed
under objects.
• Outline for commentaries : Object outline configuration (line color, line width, background color, ...).
• Font for commentaries : Enables font configuration (color, size, italic ...) for information that are displayed
under objects.
• Font for groups : Enables font configuration (color, size, italic ...) for information that are displayed under
objects.
• Activate cross hair : Activate cross hair which enables object alignment.
• Activate smoothing for texts : Activate anti-aliasing (smoothing) for texts, it can slow the display.
• Activate smoothing for images : Activate anti-aliasing (smoothing) for images, it can slow the display.
14.5. Laws
Laws :
• Apply modification factor on laws : Enables probability modification factor. If checked, an "Apply factor"
check-box will be available at the bottom of law editing panel.
• Unit choice for law parameters. : Activate unit selection for each parameter in law edition windows.
• Light Batch : Deletes files used for each computation of batch computations, it decreases memory/disk use.
• Limit the numbers of points stored in the results : Limit the numbers of points stored in the result file.
Consecutive points will be deleted if they have the same values.
• Preferred frequency unit : Unit that will be used for displaying result which dimension is "frequency" in -
main view, - data tables, - and some result synthesis.If no unit is displayed (especially in detailed results) the
unit is (h-1).
• Preferred duration unit : Unit that will be used for displaying result which dimension is "duration" in - main
view, - data tables, - and some result synthesis.If no unit is displayed (especially in detailed results) the unit is (h).
14.7. Events
Events tab enables to change gates/reports display. :
• Font set-up : Enables font configuration (color, size, italic ...) for information that are displayed under objects.
• Font set-up for commentaries : Font used to draw text in the commentaries rectangle above the symbol.
• Outline set-up : Object outline configuration (line color, line width, background color, ...).
• Outline set-up when allocation is not respected : Object outline configuration (line color, line width,
background color, ...).
• Display name : Enables to display name or not
• Display number : Enables to display number or not.
• Display description : Enables to display description or not.
• Display attributes : Enables to display attributes or not.
• Display allocation : Display allocation and percentage compare to the "true" probability at the last computation
time.
• Display target : Display target in information of the object.
• Display default value for attributes : It displays the default value of attribute for which no value is defined.
• Display law : Enables to display law or not.
• Display CCF : Enables to display or not commons causes failures.
• Use a default law : Enables the specification of a law that will be used when creating objects (instead of built-
in Exponential 1E-3).
• Default law : Default law that will be used when creating objects.
• Additional information : Enables to display additional information (results of computation)
14.8. Gates/Shortcuts
Gates/Shortcuts tab enables to change gates/reports display. :
• Font set-up : Enables font configuration (color, size, italic ...) for information that are displayed under objects.
• Font set-up for commentaries : Font used to draw text in the commentaries rectangle above the symbol.
• Outline set-up : Object outline configuration (line color, line width, background color, ...).
• Outline set-up when allocation is not respected : Object outline configuration (line color, line width,
background color, ...).
• Display name : Enables to display name or not
• Display number : Enables to display number or not.
• Display description : Enables to display description or not.
• Display K/N : Enables to display K/N or not.
• Display shortcut location : Display the set of reports for a gate.
• Display allocation : Display allocation and percentage compare to the "true" probability at the last computation
time.
• Display target : Display target in information of the object.
• Display attributes : Enables to display attributes or not.
• Display default value for attributes : It displays the default value of attribute for which no value is defined.
• Display shortcut source page : Display page of the matching gate/event under shortcut.
• Additional information : Enables to display additional information (results of computation)
• Remark height : Height (in pixels) of the remark-frame at the top of gates. Default value is 40.
• Remark width : Width (in pixels) of the remark-frame at the top of gates. Default value is 100.
14.9. Curves
Charts tab enables to change charts drawing :
14.10. Import
The Import tab contains options that configure the import of data or models :
• Automatic cutting of imported files : Automatically cuts of tree when a new file is imported (*.xml or *.dag)
• Automatic cutting when length greater than : When automatic cutting, N is the number of gates after which
the link is cut.
• Use ID as key for conflict management : Use the ID instead of the name as key to detect conflicts. If an event
of the current document has the same ID as an imported event, its name will be updated to the name of the
imported one.