Skip to content
AlexlHerPublic

About

Projet TER - Simulation Stochastique en C++.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CMolecule

Par Alexandre l'Heritier

Simulateur stochastique de réactions biochimiques.

TER proposé par Patrick Amar.

Rendu le 10/05/2020.

Description

Le principe de ce programme est de simuler les déplacements des molécules et les réactions entre molécule dans une vésicule.

En entrée, on a un fichier qui donne les informations sur les molécules et les réactions possibles entre ces molécules.

En sortie, on a un .csv qui donne la population de chaque type de molécule tous les t temps et un graphique généré par GNUPlot avec le .csv.

Exemple de fichier d'entrée (test3.txt) :

espece E, S, P, ES;
diametre = 260;

init(E) = 50;
init(S) = 1000;

E + S -> ES [0.2];
ES -> E + S [0.01];
ES -> E + P [0.001];

Exemple de fichier de sortie (test3.txt) :

toursSimu;tempsSimu;nbMolecules;ES;P;S;E;
0;0;1050;0;0;1000;50;
100;0.01;1023;27;1;972;23;
200;0.02;1019;31;3;966;19;
300;0.03;1026;24;9;967;26;
400;0.04;1024;26;9;965;24;
500;0.05;1022;28;12;960;22;
600;0.06;1019;31;20;949;19;
700;0.07;1014;36;27;937;14;
800;0.08;1018;32;32;936;18;
900;0.09;1018;32;38;930;18;
1000;0.1;1023;27;45;928;23;
...

Exemple GNUPlot (test3.txt) : alt text

Exemple GNUPlot (test2.txt) : alt text

Programme

Compilation

Commande pour compiler le programme (nécessite make/flex/bison/g++) :

cd code
make

Lancement

Pour accéder à l'aide du programme :

./projet_ter -h

Pour lancer :

  • Sur l'exemple 1 [./projet_ter test.txt],
    • la simulation Entité Centrée Parallèle [-1],
    • pendant 1 seconde (10 000 pas) [-t 1],
    • avec un enregistrement des résultats tous les 100 pas (toutes les 0.01 secondes) [-p 100],
    • avec un suivi de la progression [-s],
    • avec les résultats dans le fichier "exemple1.csv" [-v exemple1.csv],
    • avec un affichage final dans gnuplot et le fichier de config gnp "plot_exemple1.csv.gnp" [-g],
    • avec un enregistrement des logs dans le fichier "log_exemple1.txt" [-o log_exemple1.txt] :
./projet_ter test.txt -1 -t 1 -p 100 -s -v exemple1.csv -g -o log_exemple1.txt
  • Sur l'exemple 2 [./projet_ter test2.txt],
    • la simulation Population Centrée [-2],
    • pendant 40 secondes (400 000 pas) [-t 40],
    • avec un enregistrement des résultats tous les 1000 pas (toutes les 0.1 secondes) [-p 1000],
    • sans suivi de la progression (car ralentit la simulation),
    • avec les résultats dans le fichier "exemple2.csv" [-v exemple2.csv],
    • avec un affichage final dans gnuplot et le fichier de config gnp "plot_exemple2.csv.gnp" [-g],
    • avec un enregistrement des logs dans le fichier "log_exemple2.txt" [-o log_exemple2.txt] :
./projet_ter test2.txt -2 -t 40 -p 1000 -v exemple2.csv -g -o log_exemple2.txt
  • Sur le exemple 3 [./projet_ter test3.txt],
    • la simulation Population Centrée [-2],
    • pendant 15 secondes (150 000 pas) [-t 15],
    • avec un enregistrement des résultats tous les 100 pas (toutes les 0.01 secondes) [-p 100],
    • sans suivi de la progression (car ralentit la simulation),
    • avec les résultats dans le fichier "exemple3.csv" [-v exemple3.csv],
    • avec un affichage final dans gnuplot et le fichier de config gnp "plot_exemple3.csv.gnp" [-g],
    • avec un enregistrement des logs dans le fichier "log_exemple2.txt" [-o log_exemple3.txt] :
./projet_ter test3.txt -2 -t 15 -p 100 -v exemple3.csv -g -o log_exemple3.txt

About

Projet TER - Simulation Stochastique en C++.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages