Quelques applications de la technologie XML dans le domaine de la Simulation Numérique



Documents pareils
1 Description générale de VISFIELD

Introduction à la Visualisation Scientifique

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Manuel de validation Fascicule v4.25 : Thermique transitoire des structures volumiques

XML par la pratique Bases indispensables, concepts et cas pratiques (3ième édition)

données en connaissance et en actions?

Formats 3D Critères d utilisation dans les échanges Frédéric CHAMBOLLE PSA Peugeot Citroën Direction des Systèmes d Information

Chapitre VI- La validation de la composition.

TP2 ACTIVITE ITEC. Centre d intérêt : AUBE D UN MIRAGE 2000 COMPORTEMENT D UNE PIECE. Documents : Sujet Projet Dossier technique - Document réponse.

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

X2BIRT : Mettez de l interactivité dans vos archives

Catalogue des formations Edition 2015

UE 8 Systèmes d information de gestion Le programme

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Module BD et sites WEB

Catalogue Formation «Vanilla»

Introduction au maillage pour le calcul scientifique

Création et Gestion des tables

XML, PMML, SOAP. Rapport. EPITA SCIA Promo janvier Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

INDUSTRIALISATION ET RATIONALISATION

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Code_Aster. Procédure IMPR_RESU aux formats 'RESULTAT' et 'ASTER' 1 But

Systèmes d information et bases de données (niveau 1)

Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker

Fascicule u7.05 : Impression de résultat pour visualisation

PHP. Performances. Audit et optimisation LAMP. Julien Pauli. Cyril Pierre de Geyer. Guillaume Plessis. Préface d Armel Fauveau

Vérifier la qualité de vos applications logicielle de manière continue

SharePoint Foundation 2013 Construire un intranet collaboratif en PME (édition enrichie de vidéos)

Thierry BOULANGER. par la pratique. Bases indispensables Concepts et cas pratiques XML. 3 ième édition. Nouvelle édition

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

SQL Server 2012 et SQL Server 2014

Créer une base de données vidéo sans programmation (avec Drupal)

L externalisation de vos logiciels entreprises : une solution aux problèmes de coûts, de sécurités et de réactivités

Introduction à NetCDF

Ingénierie des Modèles. Méta-modélisation

LA BATTERIE DU PORTABLE

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

CARTOGRAPHIE EN LIGNE ET GÉNÉRALISATION

La solution pour gérer vos connaissances techniques et scientifiques

Parcours DIWEB : (Données, Interaction et Web)

ANALYSE CATIA V5. 14/02/2011 Daniel Geffroy IUT GMP Le Mans

Programmes des classes préparatoires aux Grandes Ecoles

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Classes et Objets en Ocaml.

REQUEA. v PD 20 mars Mouvements d arrivée / départ de personnels Description produit

MANAGEMENT DES SERVICES INFORMATIQUES

FileMaker Server 12. publication Web personnalisée avec XML

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Evry - M2 MIAGE Entrepôt de données

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Mise en place d'une chaîne de production raster multi-échelles

IBM DB2 Alphablox. d administration GC

CAPTURE DES PROFESSIONNELS

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

ARCHEOVISION. Centre de Ressources Numériques 3D. UMR 5607 du CNRS. R. Vergnieux IR-CNRS

Master Technologies numériques appliquées à l'histoire Deuxième année

Visual Paradigm Contraintes inter-associations

Présentation Alfresco


SQL SERVER 2008, BUSINESS INTELLIGENCE

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Master Informatique et Systèmes. Architecture des Systèmes d Information. 02 Architecture Applicative

INTRODUCTION AUX TESTS DE PERFORMANCE ET DE CHARGE

Informatique Générale

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Les nouveautés de Femap 11.1

RTDS G3. Emmanuel Gaudin

Evolution et architecture des systèmes d'information, de l'internet. Impact sur les IDS. IDS2014, Nailloux 26-28/05/2014

Simulation du transport de matière par diffusion surfacique à l aide d une approche Level-Set

"Modélisation interactive d'un genou humain"

Prise en compte des ressources dans les composants logiciels parallèles

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Entreprises Solutions

ARCHIVES DEPARTEMENTALES DU NORD

Version default Titre : Opérateur MECA_STATIQUE Date : 17/10/2012 Page : 1/5 Responsable : Jacques PELLET Clé : U4.51.

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

Introduction aux concepts d ez Publish

Mercredi 15 Janvier 2014

OPEN DATA : CHALLENGES ET PERSPECTIVES D ENTREPOSAGE

Arborescence et interface

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour

Pentaho Business Analytics Intégrer > Explorer > Prévoir

Introduction à ORACLE WAREHOUSE BUILDER Cédric du Mouza

Développement d'applications pour le référencement d'un site web et pour la gestion de campagnes de mails

Projet SETHER Appel à projets Adrien Patenôtre, POWEO

De la modélisation linguistique aux applications logicielles: le rôle des Entités Nommées en Traitement Automatique des Langues

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

les techniques d'extraction, les formulaires et intégration dans un site WEB

Adobe Technical Communication Suite 5

Tutoriel QSOS. Version /02/2013

Stages ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr

Transcription:

Quelques applications de la technologie XML dans le domaine de la Simulation Numérique G. Dejonghe CEA /DAM Ile-de-France /DCS A Gerard.Dejonghe@cea.fr 1 Plan m Le Contexte DCSA () m Le langage XML comme langage de description des Entrées des Codes m Le langage XML et la modélisation des Données Numériques m Le langage XML et la persistance d objets du langage C 2 1

Contexte Codes de simulation de DCSA m Données Textuelles l Entrées des codes, choix des options + valeurs numériques des paramètres, faibles volumes m Données Numériques l Consommées et/ou produites par les codes l Valeurs numériques Tableaux de nombres (entiers ou réels), gros volumes l + Méta-données (structuration) Structures plus complexes, faibles volumes 3 Architecture fonctionnelle de simulation Contrôle d' exécution du Code génération de maillages Description du Problème Production et visualisation Caches Matériaux définition maillages options... définition matériaux Base de Données Matériaux contrôle d'exécution Noyau de Simulation (Code) Interfaces Matériaux Interfaces Variables code Variables internes Code Interfaces comm. inter-codes Interfaces Post processing Sélection Extraction Calculs Résultats Visualisation Base de Données calculs et pts exp 4 2

Intérêts du langage XML m Données lisibles, portables et éditables (ASCII) m Données structurées autodécrites (hiérarchie d éléments XML) l Spécifications non ambiguës (grammaire DTD) l Contrôle de cohérence (DTD et outils associés) m Passerelles entre diverses représentations l Feuilles de style CSS, XSL,... m Navigation facilitée (disponibilité de «Parsers» XML) m Outils de présentation des données l Domaine public (Internet Explorer 5, Netscape 6) l Développements spécifiques facilités (IHM) 5 Axes de travail Langage de description de jeux de données XML Connexions entre Données Numériques et Données Documentaires Modélisation de Données Numériques 6 3

Entrées de Codes, approche classique m «Langages» textuels spécifiques l Cartes de données, mots-clés, options, valeurs numériques m Saisie des données et vérifications l Par programmation classique spécifique Programmation lourde Gestion des erreurs «utilisateur» à soigner» (données incorrectes, options incompatibles, types numériques incorrects...) m Evolutions difficiles Ajout/ Suppression/ Modification d options : Reprogrammation Suivi de la documentation utilisateur m Développements longs et fastidieux, problèmes de maintien de la cohérence en évolution 7 XML comme langage de description de jeux de données (1) m Intérêts l Simplification de la saisie et des vérifications utilisation d un Parser XML validant l Clarté de la structuration des mots-clé et options hiérarchie des options, options exclusives, mots-clés définis dans la DTD l Programmation de passerelles facilitée vers la documentation associée vers des interfaces interactives de saisie (GUI) Filtrages et tris divers... 8 4

XML comme langage de description de jeux de données (2) m Les manques l Pas de typage des données Contournement par l utilisation d outils connexes (XMLSchema,...) l Règles de vérification des données (expressions numériques) Fonctions actuellement réalisées par un moteur d inférence (VERCODE) A remplacer par un fichier XML de règles et traitements spécifiques 9 Applications : Entrées de Codes, fichiers de configuration m Nouveau code DCSA l Technologie XML retenue pour les entrées de ce code l Plate-forme de test des outils XML m Procédures de tests d API l Génération et suivi de jeux de cas tests l Options en XML activant des scénarii d utilisation m Fichiers de configuration de GUI l Définition des variables et traitements par fichiers externes XML l Définition d éléments d interfaces (IHM) par fichiers XML Approche IHM : vers génération automatique GUI 10 5

Exemple d Entrées de Code : Jeu de données m Structuration du jeu de données : l utilisation de la DTD ou de XMLSchema <?xml version= 1.0 > <jeu-de-donnees> <hydro> <deltat-minimum> 1.2 </deltat-minimum> <deltat-maximum> 1.7 </deltat-maximum> <resolution type= gradient-conjugue > <max-iterations> 20 </max-iterations> <epsilon> 5 </epsilon> </resolution> </hydro> <photonique type= Pascal > </photonique> <depouillement> <variable> Pression </variable> <variable groupe= Zone1 > Densite </variable> </depouillement> </jeu-de-donnees> 11 Exemple d Entrées de Code : Typage des données m Problème : nécessité d un typage des données l Au moins les types numériques de base (entiers, flottants, ) <?xml version= 1.0 > <element name= hydro > <element name= deltat-minimum type= double /> <element name= deltat-maximum type= double /> </element> m Utilisation de XMLSchema 12 6

Exemple d Entrées de Code: Contraintes logiques m Contraintes plus fines : développements spécifiques <contrainte> <description> deltat-maximum doit être superieur à deltat-minimum et les deux doivent être positifs </description> <expression operateur= ET > <expression operateur= superieur > <operande> hydro/deltat-maximum </operande> <operande> hydro/deltat-minimum </operande> </expression> <expression operateur= superieur > <operande> hydro/deltat-minimum </operande> <operande> 0. </operande> </expression> </expression> </contrainte> 13 Exemple de Fichier de configuration : Unités, systèmes d unités <?xml version= 1.0 > <Ensemble_d_Unites Domaine= EOS > <Ensemble_de_Dimensions> <!-- **** définition des dimensions **** --> <Dimension nom= Energie_massique > <UnitesAlternatives defaut= erg.g-1 > <Liste_d_Unites> J.kg-1 erg.g-1 </Liste_d_Unites> <Conversion de= J.kg-1 vers= erg.g-1 coeff= 1.E+4 /> </UnitesAlternatives> </Dimension>.. </Ensemble_de_Dimensions> <!-- **** définition des systèmes d unités **** --> <Systeme_d_Unites nom= SI > <UniteDuSysteme dimension= Energie_massique valeur= J.kg-1 />... </Systeme_d_Unites> </Ensemble_d_Unites> 14 7

Axe de travail : Données Numériques m Définition d un référentiel commun métier utilisable par l ensemble des codes de simulation et logiciels d interprétation des données l Vers un Modèle de Données Numériques normalisé l Approche pragmatique incrémentale Travail à long terme Faire converger nos propres modèles Suivre les travaux de la communauté internationale 15 Nature des Données Numériques m Espace des variables, supports l Un espace de variables E: Géométrie (1D, 2D, 3D), temps mais aussi : Energies, directions angulaires, températures, densités,... l Un support S inclus dans E m Grandeurs l Une grandeur (un champ) Scalaire, vectorielle, tensorielle... ou une famille de grandeurs m Discrétisation du support (maillage) l Valeurs aux nœuds, aux surfaces, aux mailles,... ==> Gros tableaux numériques 16 8

Discrétisation du support (maillage) Matériaux 17 Exemple de modélisation d un champ E=f(V,T) sur un maillage rectilinéaire <Support1D nom= GrilleV > <Grandeur> <Volume_massique unite= cm3.g-1 /> </Grandeur> <!-- **** discrétisation en V **** --> <TableauDeReels>. </TableauDeReels> </Support1D> <Support1D nom= GrilleT > <Grandeur> <Temperature unite= K /> </Grandeur> <!-- **** discrétisation en T **** --> <TableauDeReels>. </TableauDeReels> </Support1D> <Fonction nom= Uranium#Energie > <Grandeur> <Energie_massique unite= erg.g-1 /> </Grandeur> <DomaineProduit> <Domaine support= GrilleV variete= NŒUD /> <Domaine support= GrilleT variete= NŒUD /> </DomaineProduit> <!-- **** matrice des valeurs aux nœuds **** --> <TableauDeReels>. </TableauDeReels> </Fonction> 18 9

Axe de travail : Données Numériques Travail à court et moyen terme : m Faciliter les échanges de données numériques l Définition de formats l Passerelles assurant les conversions de format m Structuration a posteriori d anciennes données l Saisie a posteriori de la structuration (implicite) de fichiers l inclusion des valeurs numériques en utilisant les ENTITY XML m Connexions avec les outils de visualisation scientifique l Passerelles vers les formats internes de ces outils 19 XML pour la modélisation des Données Numériques (1) m Les manques l Pas de typage des données contournement : Eléments XML spécifiques à définir (cf. XMLSchema) types numériques de base (entiers, flottants) et Tableaux Traitement soigné de la représentation ASCII (nombre de chiffres significatifs) et des programmes de lecture/écriture ASCII l Les performances représentation ASCII/représentation binaire = 5 à 10 en encombrement (volumes) en temps d accès (lecture/écriture et communications) 20 10

XML pour la modélisation des Données Numériques (2) m Intérêts intrinsèques à XML l Structuration, lisibilité, éditabilité m Bases de Données Numériques l La représentation binaire reste privilégiée (pour les gros volumes) l Utilisation d une représentation XML à des fins d importation/exportation de données limitées (un petit ensemble d objets) l Mise en place de passerelles automatisées entre les représentations binaire et XML des objets numériques 21 Applications : Données Numériques m Interfaçage d un code de calcul de sections efficaces neutroniques avec les bases de données nucléaires l Les données produites par le code sont créées au format XML l Un processus externe assure la reprise des données et la mise en base (binaire) m Analyse et conception d une base de données pour les équations d état l Description XML des modèles et de leurs arguments l modélisation XML de l architecture de la future base de données m Importateur générique de données dans un logiciel de visualisation l Notions de grandeurs, unités, grilles et fonctions multivariables décrites en XML l Configuration automatique du logiciel l Importation/Exportation de données valides 22 11

Persistance d objets du langage C m Lecture ou écriture d un treillis d objets d une application informatique vers un support de stockage treillis d objets (en mémoire) Application Identificateur Store Load image du treillis Support de stockage Correspondance biunivoque objet C <-> objet XML Objet en langage C Représentation XML ObjType obj; declaration d un objet obj de type ObjType (instance) struct ObjType { ObjType_ID* id; fieldtype_1 field_1;...... fieldtype_q field_n; }; définition du type ObjType <ObjType> <ObjType_ID... /> <ObjType.field_1> <fieldtype_1>... </fieldtype_1> </ObjType.field_1>...... <ObjType.field_n> <fieldtype_q>... </fieldtype_q> </ObjType.field_n> </ObjType> 12

Objet en langage C Représentation XML struct Nappe { NappeID* id; Axe* axex; Axe* axey; union { int len; }f; }; float* val; struct Axe { char* nom; union { int len; float* val; }grille; }; struct NappeID { char* grandeur; char* materiau; }; <Nappe> <NappeID grandeur= Opacite materiau= Au /> <Nappe.axeX> <Axe> <Axe.nom value= Densite /> <Axe.grille> <FloatArray>1.... 10. </FloatArray> </Axe.grille> </Axe> </Nappe.axeX> <Nappe.axeY> <Axe> <Axe.nom value= Temperature /> <Axe.grille> <FloatArray>1.... 100. </FloatArray> </Axe.grille> </Axe> </Nappe.axeY> <Nappe.f> <FloatArray>3. 12....</FloatArray> </Nappe.f> </Nappe> Chargement dans une structure C d un élément XML Sauvegarde d une structure C dans un fichier XML Nappe* manappe=null; Axe *axet, *axero; NappeID ident; int ir; ident.grandeur= Opacite ; ident.materiau= Au ; ir = OPA_LoadXML_Nappe ( myxmlfile, &ident, &manappe); axero = manappe->axex; axet = manappe->axey;... Nappe manappe; Axe axet, axero; NappeID ident; int ir; axet.nom= Temperature ; axero.nom= Densite ;... manappe.axex=&axero; manappe.axey=&axet;... ident.grandeur= Opacite ; ident.materiau= Au ; ir = OPA_StoreXML_Nappe ( myxmlfile, &ident, &manappe); 13

Génération automatique du code C et de la DTD dépend de traité par produit par fichier exécutable interne externe utilisateur généré monschema_b.xml monschema.dtd GenDtd XML_Norm Clio_b.dtd monschema_x.xml CompXML monschematypes.h monschemaxml.c XML_Norm Clio_x.dtd Conclusion : Gestion des Données Scientifiques m Nouveaux besoins : établir des liens entre les données numériques et les données documentaires l Vers un accès plus complet à l ensemble de l information Rapports fiches descriptives Données expérimentales et calculées, données de modélisation l Exemple : fiches matériaux m Généraliser l utilisation de XML dans les entrées des codes m Poursuivre l effort sur les données numériques l Utilisation de XML pour la définition de standards l Utilisation de XML pour la réalisation d interfaces 28 14