Attention une mise à jour du serveur va être effectuée le lundi 17 mai entre 13h et 13h30. Cette mise à jour va générer une interruption du service de quelques minutes.

Commit 8a660160 authored by FAGES Francois's avatar FAGES Francois

merging xpp ?

Merge branch 'develop' of gitlab.inria.fr:lifeware/biocham into develop
parents 4adab375 2724c169
......@@ -115,7 +115,7 @@ ode_solver([
add_functions_values(TrueInitialState, InitialTime, FullState),
SecondRow =.. [row,InitialTime|FullState],
nb_setval(last_row, SecondRow),
log_current_row(InitialTime, FullState, Fields),
log_current_row(InitialTime, FullState, InitialParameters, Fields),
TrueInitialTime is InitialTime
),
rosenbrock_init(Epsilon_abs),
......@@ -202,21 +202,27 @@ initialize_names([Name:_|FTail], [NName|NTail]) :-
initialize_names_int(FTail, NTail).
%! log_current_row(+Time, +State, +Fields)
%! log_current_row(+Time, +State, +Parameters, +Fields)
log_current_row(Time, State, Fields) :-
prepare_row(Time, State, Fields, ToSave),
log_current_row(Time, State, Parameters, Fields) :-
prepare_row(Time, State, Parameters, Fields, ToSave),
assertz(saved_row(ToSave)).
prepare_row(_Time, _State, [], []) :- !.
prepare_row(_Time, _State, _Param, [], []) :- !.
prepare_row(Time, State, [_N:t|FTail], [Time|VTail]) :-
prepare_row(Time, State, Parameters, [_N:t|FTail], [Time|VTail]) :-
!,
prepare_row(Time, State, FTail, VTail).
prepare_row(Time, State, Parameters, FTail, VTail).
prepare_row(Time, State, [_N:x(N)|FTail], [Val|VTail]) :-
prepare_row(Time, State, Parameters, [_N:x(N)|FTail], [Val|VTail]) :-
!,
nth0(N, State, Val),
prepare_row(Time, State, FTail, VTail).
prepare_row(Time, State, Parameters, FTail, VTail).
prepare_row(Time, State, Parameters, [_N:expression(Expr)|FTail], [Val|VTail]) :-
!,
eval_coeff(Expr, State, Parameters, Time, Val),
prepare_row(Time, State, Parameters, FTail, VTail).
%! add_functions_values(+State, +Time, -FullState)
......@@ -434,7 +440,7 @@ rosenbrock(Equations, InitialTime, Duration, MaxStSz, MinStSz, Jacobian, Fields)
add_functions_values(Next_state, Time2, Next_state_full),
NewLine =.. [row,Time2|Next_state_full],
nb_setval(last_row, NewLine),
log_current_row(Time2, Next_state_full, Fields),
log_current_row(Time2, Next_state_full, Parameters, Fields),
% assertz(saved_row([Time2|Next_state_full])),
nb_setval(last_time,Time2),
Time2 >= FinalTime,!,
......
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