Visualiser les détails du résultat

IdentifiantProjetCatégorieVisibilitéDernière mise à jour
0000888SIC(Aucune catégorie)public2013-08-06 11:33
RapporteurdorchAssigné à 
PrioriténormaleImpactfonctionnalitéReproductibilitésans objet
Statut nouveauRésolutionouvert 
Version du produit 
Version cibléePriorité 3Résolu dans la version 
Résumé0000888: API client/serveur pour TALWEG/FLUVIA/SIRENE
DescriptionApplications : Optimisation, Calage automatique, Assimilation de donnée d'ensemble (Monte Carlo, Kalman d'Ensemble, etc), lien OPC, OpenMI, Palm, etc
BalisesDéveloppements stratégiques
Temps projeté (jours)

Activités

dorch

2013-02-01 11:31

administrateur   ~0000888

Concernant la structure de l'API voici une première réflexion.
Compiler une seule bibliothèque dynamique (.dll sous windows, .so sous Linux) comprenant l'ensemble des sources Talweg/Fluvia/Sirene.

Un programme (peu importe son langage C, Fortran, Windev, Matlab, Python) pourra charger la DLL et opérer avec elle en appelant les fonctions constituant l'API :
- sic_load_model : une fonction qui appellerait d'autres fonctions pouvant faire partie de l'API prenant en charge la lecture de la topologie (sic_load_topo), la géométrie (sic_load_geometry), les conditions aux limites (sic_load_limitcond), les conditions initiales (sic_load_initcond) et les paramètres hydrauliques (sic_load_hydparam).
- sic_run_model :une fonction qui lance une simulation avec plusieurs options définissant le régime (permanent ou transitoire) et les paramètres temporels.
- sic_set_characteristic : une fonction qui permet de modifier un donnée du modèle en utilisant la nomenclature des modules de régulation (celle du module LOCALISATION).
- sic_get_results : une fonction qui permet de récupérer un scalaire, un vecteur ou une matrice de réels correspondant à un ensemble de résultat (avec les mêmes types d'options que le programme SicExport pour la définition des données à récupérer).

Avec cette API on serait en mesure de lancer des exécutions de SIC sans avoir à recharger des données, ni écrire des résultats et en pouvant modifier des données ou paramètres du modèle et récupérer uniquement les informations qui nous intéresse entre chaque lancement de simulation.

On peut même étendre l'API en lui permettant d'effectuer des modifications sur la géométrie (sic_set_geometry) voire la topologie (mais la compatibilité avec les données hydrauliques est plus compliquée à gérer), lancer Talweg (sic_run_mesh) sans écrire dans le XML pour modifier directement en mémoire la géométrie et lancer une simulation derrière (sic_run_model).

Historique du bogue

Date de modification Nom d’utilisateur Champ Changement
2013-01-23 15:23 dorch Nouveau bogue
2013-01-23 16:32 dorch Balise associée: Développements stratégiques
2013-02-01 11:31 dorch Note ajoutée: 0000888
2013-08-06 11:33 dorch Version ciblée => Priorité 3