Commit bf35221f authored by FAGES Francois's avatar FAGES Francois

option de dessin des graphes

parent 49fdde7a
......@@ -425,7 +425,7 @@ add_edge_to_multistability_graph(VertexAId, VertexBId, Species_Sorted, Reactions
%%%%% Generate the influence graph with the reactions as labels
multistability_graph :-
biocham_command,
doc("Creates the influence graph of the current model (same as \\command{influence_graph/1}) with the arcs labelled with the reactions they originate from (used for \\command{check_multistability/0})."),
doc("Creates the influence graph of the current model as by \\command{influence_graph/1} but with the arcs labelled with the reactions they originate from. This is used for \\command{check_multistability/0}."),
option(force_graph, yesno, ForceMultistabilityGraph, 'Force the creation of the graph'),
all_items([kind: graph], AllGraphs),
(
......
......@@ -6,9 +6,9 @@
).
:- doc('
The existence of oscillations and multiple steady states in the differential dynamics of a reaction or influence model
The existence of oscillations and multiple non-degenerate steady states in the differential dynamics of a reaction or influence model
can be checked very efficiently by checking \\emph{necessary conditions} for those properties
in the multistability graph of the model (see \\command{multistability_graph/0}), namely the existence of negative or particular positive circuits in that graph \\cite{BFS18jtb}.
in the multistability graph of the model (see \\command{multistability_graph/0}), namely the existence of respectively negative and positive circuits in that graph \\cite{BFS18jtb}. Some refined tests are optional.
').
:- initial(option(test_permutations: no)).
......@@ -20,10 +20,9 @@ in the multistability graph of the model (see \\command{multistability_graph/0})
check_multistability :-
biocham_command,
doc('Check the multistationarity of the current model by reducing the multistability graph and searching positive feedback loops that can lead to multistability.
Models that do not contain relevant positive feedback loop cannot exhibit multiple steady states.'),
option(test_permutations, yesno, _TestSwaps, 'Test with all possible permutations between species (This option highly increases computation time)'),
option(test_transpositions, yesno, _TestTranspo, 'Test with possible swap between two species only'),
doc('Checks the possibility of multistability in the continuous semantics of the current model by reducing the multistability graph and searching positive feedback loops which is a necessary condition for the existence of multiple non-degenerate (i.e. with no variable equal 0) steady states.'),
option(test_transpositions, yesno, _TestTranspo, 'Lazy test of all possible swappings between two species only'),
option(test_permutations, yesno, _TestSwaps, 'Lazy test of all possible permutations between species (This option highly increases computation time)'),
check_multistability_graph.
:- doc('\\begin{example}').
......
......@@ -28,11 +28,10 @@ up_type(present).
up_type(sources).
:- doc('\\emphright{Defines if some places are forcefully put on top of the
graph when drawing it with Graphviz. The default value is \\texttt{none}}').
:- doc('\\emphright{Defines if in the drawing of a graph using Graphviz, some species should appear first (i.e. on top of the drawing, or at the left if dran from left to right. The default value is \\texttt{present}, i.e. draw first the species that are present in the initial state.}').
:- initial(option(force_up: none)).
:- initial(option(draw_first: present)).
:- devdoc('\\section{Commands}').
......@@ -72,16 +71,16 @@ draw_reactions :-
reaction_graph :-
biocham_command,
option(force_up, up_type, _ForceUp, 'Put species of this type
option(draw_first, up_type, _ForceUp, 'Put species of this type
at the top of the graph when drawing it.'),
doc('Builds the reaction graph of the current model.
\\begin{example}'),
biocham(option(force_up: present, left_to_right: yes)),
biocham(option(draw_first: present, left_to_right: yes)),
biocham(draw_reactions),
% biocham(option(force_up: sources)),
% biocham(option(draw_first: sources)),
% biocham(draw_reactions),
doc('\\end{example}'),
biocham_silent(option(force_up: none, left_to_right: no)),
biocham_silent(option(draw_first: none, left_to_right: no)),
delete_items([kind: graph, key: reaction_graph]),
new_graph,
set_graph_name(reaction_graph),
......@@ -198,7 +197,7 @@ reaction_graph(GraphId) :-
set_sources(GraphId) :-
get_option(force_up, Up),
get_option(draw_first, Up),
(
Up == present
->
......@@ -208,7 +207,7 @@ set_sources(GraphId) :-
member(Species, M),
place(GraphId, Species, SpeciesId),
get_initial_concentration(Species, C),
C > 0
C =:= 0
),
set_attribute(SpeciesId, source = true)
)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment