Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • J J2K coupling
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

La forge institutionnelle d'INRAE étant en production depuis le 10 juin 2025, nous vous invitons à y créer vos nouveaux projets.

  • WatASitDev
  • J2K coupling
  • Wiki
  • protocole_j2k

protocole_j2k · Changes

Page history
Updated protocole_j2k.md (markdown) authored Jun 05, 2020 by Bonte Bruno's avatar Bonte Bruno
Hide whitespace changes
Inline Side-by-side
protocole_j2k.md
View page @ bfee95d7
[[_TOC_]]
# Introduction
# Protocole de communication pour manipuler un modèle J2K
J2K est implémenté dans la plateforme de modélisation et de simulation JAMS. Un modèle JAMS est défini sous la forme d'un état initial, d'un ensemble de données d'entrées, de valeurs de paramètres et enfin d'un agencement de modules qui décrivent les opérations à réaliser au cours d'une simulation. Avant de pouvoir utiliser notre protocole de communication pour communiquer avec un modèle J2K, il est nécessaire d'éditer ce modèle pour y rajouter les modules spécifiques à la communication. Le chapitre [Modules de communication J2K](j2k_modules) décrit ces modules et explique également comment les intégrer dans un modèle existant. Dans la suite de ce chapitre nous considérons donc un modèle J2K "communicant".
Le module de communication `CouplingCommunication` doit être placé en début de boucle temporelle (TimeLoop). Une fois que le modèle J2K est lancé, ce module va interrompre l'exécution à chaque début de boucle temporelle et attendre qu'on lui envoie des commandes.
# Protocole de communication pour manipuler un modèle J2K communicant
La communication est basée sur la présence module de communication `CouplingCommunication` placé en début de boucle temporelle (TimeLoop) de tout modèle communicant. Le principe est le suivant: On lance en ligne de commande la simulaiton d'un modèle communicant et ce module de communication interromp l'exécution à chaque début de boucle temporelle et attend qu'on lui envoie des commandes, permettant un réel pilotage de la simulation du modèle depuis l'extérieur.
La communication se fait par requêtes HTTP POST. Chaque requête contient une commande, comme un ordre donné au module de communication. On peut effectuer ces requêtes par le moyen de son choix. Le moyen le plus simple est d'utiliser l'outil CURL. On peut aussi effectuer ces requêtes avec tous les langages de programmation modernes (Python, C, C++, Java, R, Ruby etc...).
......
Clone repository
  • Home
  • j2k_modules
  • netbeans
  • protocole_j2k
  • rapport
  • run
  • spacetime
  • todo