Attention une mise à jour du service Gitlab va être effectuée le mardi 30 novembre entre 17h30 et 18h00. Cette mise à jour va générer une interruption du service dont nous ne maîtrisons pas complètement la durée mais qui ne devrait pas excéder quelques minutes. Cette mise à jour intermédiaire en version 14.0.12 nous permettra de rapidement pouvoir mettre à votre disposition une version plus récente.

Commit 56dab4e7 authored by FAGES Francois's avatar FAGES Francois
Browse files

spec gpac.pl

parent 224f57d8
......@@ -31,6 +31,7 @@ Rq: The distinction between pivp_string and pivp_list is not always obvious.
[
%Commands
compile_from_expression/3,
compile_from_pivp/2,
compile_from_pivp/3,
%Grammar
polynomial/1,
......@@ -49,7 +50,11 @@ Rq: The distinction between pivp_string and pivp_list is not always obvious.
:- use_module(reaction_rules).
:- use_module(util).
:- doc('The Turing completeness of continuous CRNs \\cite{FLBP17cmsb} states that any computable function over the reals can be computed by a CRN over a finite set of molecular species. Biocham uses the proof of that result to compile any computable real function presented as the solution of a polynomial differential equation system into a finite CRN. The restriction to reactions with at most two reactants is an option.').
:- doc('The Turing completeness of continuous CRNs \\cite{FLBP17cmsb} states that any computable function over the reals can be computed by a CRN over a finite set of molecular species. Biocham uses the proof of that result to compile any computable real function presented as the solution of a polynomial differential equation system into a finite CRN.').
:- doc('The restriction to reactions with at most two reactants is an option.').
:- doc('The lazy introduction of molecular species for negative real values is another option.').
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
......@@ -236,26 +241,53 @@ monomial(X) :-
name(X).
%! compile_from_pivp(+PIVP_string, +Output)
%
% biocham command
%
% Creates a biochemical reaction network that computes the projection of multivariate function f(t) on one variable Output,
% where f(t) is the solution of the PIVP.
%
% Typical usage will be:
% ==
% :- compile_from_pivp( ((1,(d(y)/dt=z)); (0,(d(z)/dt= (-1*y)))), y).
% ==
compile_from_pivp(PIVP, Output) :-
biocham_command,
type(PIVP, pivp),
type(Output, name),
doc('
compiles a PIVP into a CRN (with initial concentration values) that computes the projection on one variable Output as a function of time, of the multivariate function f(t) solution of the PIVP.
'),
option(
binomial_reduction,
yesno,
_Reduction,
'Determine if the binomial reduction has to be performed'
),
compile_from_pivp(PIVP, time, Output).
%! compile_from_pivp(+PIVP_string, +Input , +Output)
%
% biocham command
%
% Creates a biochemical reaction network such that Output = f(Input)
% where f is the solution of the PIVP.
% Creates a biochemical reaction network that computes the projection of multivariate function f(Input) on one variable Output,
% where f(t) is the solution of the PIVP, and Input is a time value
%
% Typical usage will be:
% ==
% :- compile_from_pivp( ((1,(d(y)/dt=z)); (0,(d(z)/dt= (-1*y)))),time,output).
% :- compile_from_pivp( ((1,(d(y)/dt=z)); (0,(d(z)/dt= (-1*y)))), 4, y).
% ==
compile_from_pivp(PIVP, Input, Output) :-
biocham_command,
type(PIVP, pivp),
type(Input, name),
type(Input, name), % FF type(Input, expr),
type(Output, name),
doc('
compiles a PIVP into biochemical reactions. Use \'time\' as input
to get output f(t), or use any other input x to get f(x) as output.
compiles a PIVP into a CRN (with initial concentration values) that computes the value of variable Output at time Input, of the multivariate function f(t) solution of the PIVP.
'),
option(
binomial_reduction,
......
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