Diapositive 1 GROUPE CS COMMUNICATION & SYSTEMESPrésentation NEPTUNIX 2011 Version septembre 99...
-
Upload
willelm-allemand -
Category
Documents
-
view
105 -
download
0
Transcript of Diapositive 1 GROUPE CS COMMUNICATION & SYSTEMESPrésentation NEPTUNIX 2011 Version septembre 99...
Diapositive 1GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
NEPTUNIX + NEPTUNIX +
Un générateur de Un générateur de
SimulateursSimulateurs
Neptunix est le fruit d ’une collaboration entre Neptunix est le fruit d ’une collaboration entre GIAT Industries et CS SIGIAT Industries et CS SI
Diapositive 2GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
PlanPlan
1 Ce qu’est NEPTUNIX1 Ce qu’est NEPTUNIX
2 Caractéristiques2 Caractéristiques
3 Références3 Références
Annexe : le langage de descriptionAnnexe : le langage de description
Diapositive 3GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
• La simulation informatique permet d’être plus efficace dans les phases d’avant projet.
• Rôle d’un outil logiciel comme NEPTUNIX : •Accélérer le cycle d’étude (Analyse conception simulation retour d'expérience synthèse conception ...) , .... en automatisant les phases sans valeur ajoutée pour le concepteur,
•être adapté à des problèmes industriels,
•pérenniser le savoir-faire d’une entreprise en permettant de réutiliser des modèles existant.
La simulationLa simulation
Diapositive 4GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
NEPTUNIX est un outil à caractère général destiné à modéliser et simuler des systèmes physiques ou techniques dont le comportement temporel est caractérisé par :
•des phénomènes continus décrits par des équations algébro-différentielles implicites non linéaires,
•une partie événementielle décrite par des automates.
Simulation hybride. Simulation hybride.
Diapositive 5GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
La démarche NEPTUNIXLa démarche NEPTUNIX
SchémasSchémas+ Equations+ Equations NEPTUNIXNEPTUNIX
SimulateurSimulateur
Directives de Directives de SimulationSimulation
Jeu de donnéesJeu de donnéesFichier-résultatFichier-résultat
Simulateur utilisé en mode «étude»Simulateur utilisé en mode «étude»
Diapositive 6GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Les étapes d’une étude NEPTUNIX :
• représenter le système à modéliser au moyen de schémas et/ou d’équations mathématiques.
• générer automatiquement le simulateur du système ainsi modélisé,
• mettre au point le simulateur (debugger),
• exploiter le simulateur en mode étude,
• intégrer le simulateur dans une application-client.
La démarche (2)La démarche (2)
Diapositive 7GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Intégration du simulateurIntégration du simulateur
Le simulateur généré est un Le simulateur généré est un programme portable.programme portable.
Il peut être recompilé et intégré Il peut être recompilé et intégré
•dans un autre environnement dans un autre environnement d ’étuded ’étude
• ou dans un environnement ou dans un environnement applicatif (sous-programme ou applicatif (sous-programme ou sous-process).sous-process).
Source du simulateurSource du simulateur
BibliothèqueBibliothèqueSupport à Support à
l ’exploitationl ’exploitation++
++ ApplicationApplication•Capteurs,Capteurs,•Imagerie, ...Imagerie, ...
Diapositive 8GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Equations et schémasEquations et schémas
Modèle m1Modèle m1 Modèle m2Modèle m2
m1 (x1, y1) = 0
m2 (x2, y2) = 0
x1 = x2
y1 = y2
Equations modèle 1
Equations modèle 2
Equations de liaison
Niv
ea
u s
ché
ma
tiqu
eN
ive
au
sch
ém
atiq
ue
Niv
ea
u te
xtu
elN
ive
au
text
uel
x1x1 x2x2
y1y1 y2y2
Diapositive 9GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Equations et schémas (2)Equations et schémas (2)
Modèle m1Modèle m1 Modèle m2Modèle m2
m1 (x1, y1) = 0
m2 (x2, y2) = 0
x1 = x2
y1 = y2
Niv
ea
u s
ché
ma
tiqu
eN
ive
au
sch
ém
atiq
ue
Niv
ea
u te
xtu
elN
ive
au
text
uel
La représentation schématique permet :La représentation schématique permet :
•d’archiver des composants réutilisables,d’archiver des composants réutilisables,
•de visualiser clairement un assemblage,de visualiser clairement un assemblage,
•constituer aisément de gros systèmes.constituer aisément de gros systèmes.
Représentations complémentairesReprésentations complémentaires
Le texte décrit des phénomènes complexesLe texte décrit des phénomènes complexes
Le schéma visualise la structureLe schéma visualise la structure
x1x1 x2x2
y1y1 y2y2
Diapositive 10GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Il s’agit d’un langage métier destiné à exprimer
• des équations mathématiques,
• des événements,
• à mettre en évidence des composants,
• à assurer le couplage avec une partie programmée.
Il s’agit d’un langage déclaratif proche du modélisateur.
Ce n’est PAS un langage de programmation. Il est à un niveau d’abstraction plus élevé.
Le langage de descriptionLe langage de description
Diapositive 11GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
HistoriqueHistorique
1980 : Début du projet au CEA SACLAY, suite à deux thèses 1980 : Début du projet au CEA SACLAY, suite à deux thèses (Y. Monsef et M. Nakhle)(Y. Monsef et M. Nakhle)
1988-93 : Neptunix 2 : Produit diffusé avec le pre/post 1988-93 : Neptunix 2 : Produit diffusé avec le pre/post processeur ALLAN (collaboration GDF)processeur ALLAN (collaboration GDF)
1993-95 : Nouvel environnement de simulation1993-95 : Nouvel environnement de simulation
1996-98 : Générateur C++ Neptunix 4 (collaboration avec 1996-98 : Générateur C++ Neptunix 4 (collaboration avec GIAT)GIAT)
1999 : Neptunix Plus (Produit et autonome, langage 1999 : Neptunix Plus (Produit et autonome, langage modernisé, IHM Java)modernisé, IHM Java)
2007 : Éditeur de schémas QT42007 : Éditeur de schémas QT4
Diapositive 12GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Réponses aux problèmes posés (1)Réponses aux problèmes posés (1)
Problème poséProblème posé
Fiabilité des résultatsFiabilité des résultats
Conditions initialesConditions initiales
Systèmes raidesSystèmes raides
Gestion des événementsGestion des événements
Stabilité numériqueStabilité numérique
Mise au pointMise au point
Méthode impliciteMéthode implicite
Détermination formelleDétermination formelle
Pas et ordre variablesPas et ordre variables
Point fort de NEPTUNIXPoint fort de NEPTUNIX
Contrôle de la matriceContrôle de la matrice
Debugger, clichésDebugger, clichés
Réponse NEPTUNIXRéponse NEPTUNIX
Diapositive 13GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Réponses aux problèmes posés (2) Réponses aux problèmes posés (2)
Problème poséProblème posé
Rapidité de la simulationRapidité de la simulation
« Gros modèles »« Gros modèles »
Intégration simulateurIntégration simulateur
Contrôle taille des programmesContrôle taille des programmes
Testé sur 4 millions d'équationsTesté sur 4 millions d'équations
Réponse NEPTUNIXRéponse NEPTUNIX
Génération optimiséeGénération optimisée
Factorise séquences répétitivesFactorise séquences répétitives
Simplification formelleSimplification formelle
Code généré standard (Fortran 77)Code généré standard (Fortran 77)
Simulateur = Sous programmeSimulateur = Sous programme
Fonctions de communication Fonctions de communication
Fonctionnement en mode parallèleFonctionnement en mode parallèle
Diapositive 14GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Réponses aux problèmes posés (3) Réponses aux problèmes posés (3)
Problème poséProblème posé
Réutilisation des modèlesRéutilisation des modèles
(( Pérennité du savoir-faire) Pérennité du savoir-faire)
Lisibilité des composants, Lisibilité des composants, Langage « naturel »Langage « naturel »
Démarche modulaireDémarche modulaire
Constitution de modélothèquesConstitution de modélothèques
Format général, Format général, Archivage format texte Archivage format texte (Subversion)(Subversion)
Réponse NEPTUNIXRéponse NEPTUNIX
Diapositive 15GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
SpécificationMaintenance+ Evolutions
Aspect économique, gain de productivitéAspect économique, gain de productivité
Codage
Validation
SpécificationMaintenance+ Evolutions
Codage=0
Validation
Coût d’un simulateur (cas général)
Réduction du coûtavec NEPTUNIX
Retour sur investissement rapide(concision du formalisme)
Diapositive 16GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Fiche technique (1)Fiche technique (1)
Méthode d’intégration de type prédicteur / Méthode d’intégration de type prédicteur / correcteur (interpolation polynomiale).correcteur (interpolation polynomiale).
Prédiction : schéma de Gear modifié à pas et Prédiction : schéma de Gear modifié à pas et ordre variable (peut résoudre des systèmes ordre variable (peut résoudre des systèmes raides).raides).
Correction : Newton/Raphson. Matrice Correction : Newton/Raphson. Matrice jacobienne générée formellement et pré-inversée jacobienne générée formellement et pré-inversée lors de la génération.lors de la génération.
Point initial calculé formellement (projet makeInit Point initial calculé formellement (projet makeInit GIAT/Ch Tardy)GIAT/Ch Tardy)
Le Traitement du langage est réalisé par Moïra.Le Traitement du langage est réalisé par Moïra.
Diapositive 17GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Méthode prédicteur / correcteurMéthode prédicteur / correcteur
tn-1tn-1 tntntn-2tn-2tn-3tn-3
Prédiction par la méthode de GearPrédiction par la méthode de Gear
Itérations de Newton-RaphsonItérations de Newton-Raphson
Point solutionPoint solution
Diapositive 18GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Fiche technique (2)Fiche technique (2)
Il y a 2 niveaux de langage de description: Il y a 2 niveaux de langage de description: NEPTUNIX 4 est compatible avec la version 1988 du langage. NEPTUNIX 4 est compatible avec la version 1988 du langage.
Neptunix Plus est un surlangage simplifié qui intègre des Neptunix Plus est un surlangage simplifié qui intègre des concepts de modularité, polymorphisme, généricité, des types concepts de modularité, polymorphisme, généricité, des types
structurés (look Pascal/C++)structurés (look Pascal/C++)..
Le générateur NEPTUNIX 4 est écrit en C++. Il Le générateur NEPTUNIX 4 est écrit en C++. Il génère du Fortran 77 standard.génère du Fortran 77 standard.
La bibliothèque est en C (analyseur langage La bibliothèque est en C (analyseur langage d’exploitation, debugger, multiprocess), et en d’exploitation, debugger, multiprocess), et en Fortran (algorithme de résolution.Fortran (algorithme de résolution.
Diapositive 19GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Fiche technique (3)Fiche technique (3)
On dispose d’une interface graphique QT4/C++.On dispose d’une interface graphique QT4/C++.
Neptunix tourne sur toute machine UNIX et sur PC.Neptunix tourne sur toute machine UNIX et sur PC.
Prérequis :Prérequis : QT4 QT4
Compilateur Fortran (g77 de MingWin)Compilateur Fortran (g77 de MingWin)
Un shell-script (12 commandes UNIX) (cygnus free-Un shell-script (12 commandes UNIX) (cygnus free-ware)ware)
Diapositive 20GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
NEPTUNIX NEPTUNIX
Quelques référencesQuelques références
Diapositive 21GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
GIAT INDUSTRIESGIAT INDUSTRIES
Simulation de conduite de tir en mouvement.Simulation de conduite de tir en mouvement.
Asservissement de tourelles.Asservissement de tourelles.
NEPTUNIX fut intégré à l’atelier de NEPTUNIX fut intégré à l’atelier de modélisation EBG.modélisation EBG.
GIAT INDUSTRIES est copropriétaire de GIAT INDUSTRIES est copropriétaire de NEPTUNIX 4.NEPTUNIX 4.
Diapositive 22GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
DCN INDRETDCN INDRET
SIMAP : un atelier de modélisation et de simulation SIMAP : un atelier de modélisation et de simulation d’Appareils propulsifs pour des frégates.d’Appareils propulsifs pour des frégates.
Simulation de l’appareil propulsif du porte-avions Simulation de l’appareil propulsif du porte-avions Charles de Gaulle. Charles de Gaulle.
Génération sur station UNIX, simulations sur PC portable «embarqué» Génération sur station UNIX, simulations sur PC portable «embarqué»
lors des missions du PAN.lors des missions du PAN.
Diapositive 23GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
BRGMBRGM
Systèmes géochimiques (interactions eau-Systèmes géochimiques (interactions eau-roches)roches)
Réseau de réacteurs et procédés de traitementRéseau de réacteurs et procédés de traitement
Injection de CO2Injection de CO2
Couplage des simulateurs générés avec un code de Couplage des simulateurs générés avec un code de transporttransport
Diapositive 24GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Gaz de FranceGaz de France
Modélothèque de thermique du bâtiment Modélothèque de thermique du bâtiment (validée par immeuble expérimental).(validée par immeuble expérimental).
La taille des modèles atteint 15 000 équations.La taille des modèles atteint 15 000 équations.
Modèles de réseau de gaz.Modèles de réseau de gaz.
Aide au contrôle commande de chaudières.Aide au contrôle commande de chaudières.
NEPTUNIX est un élément du modeleur ALLAN spécifié ,conçu NEPTUNIX est un élément du modeleur ALLAN spécifié ,conçu et développé pour GDF par l’équipe NEPTUNIX.et développé pour GDF par l’équipe NEPTUNIX.
Diapositive 25GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Divers (1)Divers (1)
CEA :CEA :
Cinétique du laser à vapeur de cuivre,Cinétique du laser à vapeur de cuivre,
Simulateurs de centrales nucléaires :Simulateurs de centrales nucléaires : France : Saclay, Grenoble France : Saclay, Grenoble
Grande Bretagne (5 simulateurs pour Nuclear Grande Bretagne (5 simulateurs pour Nuclear Power), Power),
Pays Bas (Petten),Pays Bas (Petten),
Chine (Guang Dong).Chine (Guang Dong).
Le CEN Saclay est le créateur de NEPTUNIXLe CEN Saclay est le créateur de NEPTUNIX
Diapositive 26GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
DiversDivers
DASSAULT :DASSAULT :
Modèle de torche à plasma.Modèle de torche à plasma.
EDF/CNEN :EDF/CNEN :
Etudes en thermique du bâtiment de centrales Etudes en thermique du bâtiment de centrales nucléaires en conditions climatiques extrêmes nucléaires en conditions climatiques extrêmes pour autorité de sûreté.pour autorité de sûreté.
VALEO : VALEO :
Electronique moteurElectronique moteur
Mécanique vibratoireMécanique vibratoire
Diapositive 27GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
UniversitairesUniversitaires
Ecole des Mines de Paris : Energétique.Ecole des Mines de Paris : Energétique.
Ecole des Mines de Nantes : Energétique.Ecole des Mines de Nantes : Energétique.
Ecole centrale de Lille : Electronique et Ecole centrale de Lille : Electronique et électromagnétisme.électromagnétisme.
ENSICA Toulouse : Simulateur d’entraînement ENSICA Toulouse : Simulateur d’entraînement d’un hélicoptère.d’un hélicoptère.
Parix XII (laboratoire LETIEF) : Energétique.Parix XII (laboratoire LETIEF) : Energétique.
Université de Savoie : Thermique du bâtiment.Université de Savoie : Thermique du bâtiment.
Diapositive 28GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
LAST (but not least)LAST (but not least)
EDF Chatou : validation du code OsirisEDF Chatou : validation du code Osiris
Modélisation d'éléments irradiants issus d'un stockage
CORYS : Simulation d’une centrale nucléaireCORYS : Simulation d’une centrale nucléaire
Rénovation d’un modèle de 1991Rénovation d’un modèle de 1991
Diapositive 29GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
FINFIN
Merci de votre attention.Merci de votre attention.
Avez vous des Avez vous des Questions ???Questions ???
Diapositive 30GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
SupplémentSupplément
Le langage de Le langage de Description des Description des
ModèlesModèles
Diapositive 31GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Structure d’un fichier sourceStructure d’un fichier source
// ________________________________ Modèle appelé// ________________________________ Modèle appelé
modelmodel tuyau (fluide amont, fluide aval) tuyau (fluide amont, fluide aval)
{{
..... définition ....;..... définition ....;
}}
// ________________________________ Modèle composé// ________________________________ Modèle composé
modelmodel truc (....) truc (....)
{{
tuyau t1, t2 ....;tuyau t1, t2 ....; // Déclaration de 2 instances de tuyau// Déclaration de 2 instances de tuyau
LinkLink (t1.aval, t2.amont); (t1.aval, t2.amont); // Lien entre les 2 instances// Lien entre les 2 instances
}}
// ________________________________ Modèle appelé// ________________________________ Modèle appelé
modelmodel tuyau (fluide amont, fluide aval) tuyau (fluide amont, fluide aval)
{{
..... définition ....;..... définition ....;
}}
// ________________________________ Modèle composé// ________________________________ Modèle composé
modelmodel truc (....) truc (....)
{{
tuyau t1, t2 ....;tuyau t1, t2 ....; // Déclaration de 2 instances de tuyau// Déclaration de 2 instances de tuyau
LinkLink (t1.aval, t2.amont); (t1.aval, t2.amont); // Lien entre les 2 instances// Lien entre les 2 instances
}}
Un fichier NEPTUNIX contient un ou plusieurs modèles.Un modèle possède une entête et un corps.
Diapositive 32GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Les instructionsLes instructions
DéclarationsDéclarations
EquationsEquations
AutomatesAutomates
Affectations (conditions initiales)Affectations (conditions initiales)
ConnexionConnexion à une partie procédurale compilée à une partie procédurale compilée
AppelsAppels de sous-modèles de sous-modèles
+ autres instructions en notation procédurale : + autres instructions en notation procédurale : assertions, configuration, etc...assertions, configuration, etc...
Diapositive 33GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Les types de donnéesLes types de données ContinuousContinuous : (inconnues du système) elles sont : (inconnues du système) elles sont
définies par des équations différentielles implicites définies par des équations différentielles implicites non linéaires. Elles sont «dérivables» par rapport à la non linéaires. Elles sont «dérivables» par rapport à la variable indépendante.variable indépendante.
ParameterParameter : entités restant constantes entre 2 : entités restant constantes entre 2 événements.événements.
FlagsFlags : entités logiques définies par des expressions : entités logiques définies par des expressions conditionnelles : ( c = x>y) ou d'autres flags conditionnelles : ( c = x>y) ou d'autres flags (c=c1&&c2). Le basculement d'un flag constitue un (c=c1&&c2). Le basculement d'un flag constitue un événementévénement..
Possibilité de redéfinir des types structurés Possibilité de redéfinir des types structurés ((connecteursconnecteurs) ou non () ou non (typedeftypedef).).
Possibilité définir des types Possibilité définir des types matricielsmatriciels ou ou vectorielsvectoriels..
Diapositive 34GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Les équations Les équations
Forme classique : Forme classique : expression1 = expression2expression1 = expression2 ; ;
Forme conditionnelle : Forme conditionnelle : ifif (cond) (cond) thenthen equa1; equa1;
elseelse equa2; equa2;
Fonctions utilisateur : Fonctions utilisateur : y = my_function (x1, x2, p, t);y = my_function (x1, x2, p, t);
Commandes définies en exploitation : Commandes définies en exploitation : y = y = controlcontrol (); ();
Opérateurs de liaison : Opérateurs de liaison : LinkLink (conn1, conn2) (conn1, conn2);;
Forme itérée : Forme itérée : forfor i=1 i=1 toto n n dodo y[i] - z[i] = 0;y[i] - z[i] = 0;
Diapositive 35GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Les automatesLes automates
Le basculement d'un Le basculement d'un flagflag indique le indique le franchissement d'un domaine de validité. On franchissement d'un domaine de validité. On peut associer à cet peut associer à cet événementévénement (noté (noté flagflag+ ou + ou flagflag-) des -) des actionsactions : affectation , appel de : affectation , appel de fonction. fonction.
Une action peut provoquer un nouvel Une action peut provoquer un nouvel événement. L'automate redéfinit un nouveau événement. L'automate redéfinit un nouveau modèle continu.modèle continu.
L’algorithmeL’algorithme d’intégration d’intégration tient comptetient compte de ces de ces changements.changements.
Diapositive 36GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Automate : exempleAutomate : exemple
continuous hauteur := 10, vitesse:=0 ;
flag enlair = hauteur > 0;
At enlair- : vitesse := -vitesse*amortissement;
continuous hauteur := 10, vitesse:=0 ;
flag enlair = hauteur > 0;
At enlair- : vitesse := -vitesse*amortissement;
Diapositive 37GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Connexions procéduralesConnexions procédurales
• NEPTUNIX permet de se connecter à des procédures à certains moments-clés de la simulation.
At init : lire_base ();
At every_event : mon_automate ();
At every_step : maj_courbes ();
At init : lire_base ();
At every_event : mon_automate ();
At every_step : maj_courbes ();
Diapositive 38GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Accès aux variables du simulateurAccès aux variables du simulateur
void lire_base () /* Programme C d'interface */
{
nx_inq_value ("diametre", &diam);
x = lire_sur_ma_base (diam, ....);
nx_mod_value ("debit", x);
}
Diapositive 39GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Appels de modèlesAppels de modèles
Généralement, un modèle est suffisamment Généralement, un modèle est suffisamment complexe pour qu'il soit utile, sinon nécessaire de complexe pour qu'il soit utile, sinon nécessaire de le décomposer en sous-modèles.le décomposer en sous-modèles.
Cette approche permet de définir des Cette approche permet de définir des composants réutilisables, et d'introduire une composants réutilisables, et d'introduire une certaine méthodologie systémique, inspirée des certaine méthodologie systémique, inspirée des schémas-blocs.schémas-blocs.
Les "macromodèles" contiennent des Les "macromodèles" contiennent des instancesinstances de de sous-modèles sur lesquelles on applique des sous-modèles sur lesquelles on applique des opérateurs de liaisonopérateurs de liaison..
La connectique est améliorée par à un typage fort La connectique est améliorée par à un typage fort des données. des données.
Diapositive 40GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Redéfinitions de typesRedéfinitions de types
• Ces redéfinitions sont utiles pour la connectique inter-modèles
typedef continuous pression;
typedef continuous debit extensive;
typedef continuous temperature;
connector fluide {pression p;
debit q;
temperature theta;
}
typedef parameter matrix [3, 3]; // Version 1.2
typedef continuous vector [3]; // Version 1.2
typedef continuous pression;
typedef continuous debit extensive;
typedef continuous temperature;
connector fluide {pression p;
debit q;
temperature theta;
}
typedef parameter matrix [3, 3]; // Version 1.2
typedef continuous vector [3]; // Version 1.2
Diapositive 41GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Entête des modèlesEntête des modèles
• L’entête des modèles est la partie «publique» du modèle.
• Elle contient les variables de couplage qui sont les grandeurs partagées par les modèles.
model tuyau (fluide amont, fluide aval);
model alim (out fluide amont);
model tuyau (fluide amont, fluide aval);
model alim (out fluide amont);
Diapositive 42GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Exemple de macromodèleExemple de macromodèle
model tuyau (fluide amont, fluide aval); // Prototype
model truc (fluide amont, fluide aval)
{
tuyau t1, t2; // Déclaration de 2 instances
Link (t1.aval, t2.amont);// Equations de liaison
amont= Export (t1.amont); // Exportation
aval = Export (t2.aval);
}
model tuyau (fluide amont, fluide aval); // Prototype
model truc (fluide amont, fluide aval)
{
tuyau t1, t2; // Déclaration de 2 instances
Link (t1.aval, t2.amont);// Equations de liaison
amont= Export (t1.amont); // Exportation
aval = Export (t2.aval);
}
Diapositive 43GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Par rapport à Neptunix.4 Par rapport à Neptunix.4
Moins de types de données (par suppression Moins de types de données (par suppression de contraintes sémantiques)de contraintes sémantiques)
Plus de délimitations de blocs (syntaxe Plus de délimitations de blocs (syntaxe suffisante).suffisante).
Syntaxe plus riche des déclarations -> Syntaxe plus riche des déclarations -> suppression bloc interface, init et formulessuppression bloc interface, init et formules
Syntaxe des équations (suppression bloc pivot)Syntaxe des équations (suppression bloc pivot)
Appel de fonctions dans les automatesAppel de fonctions dans les automates
Diapositive 44GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Par rapport à Neptunix.4 (et ALLAN. ...) Par rapport à Neptunix.4 (et ALLAN. ...)
Suppression du Bloc Fortran (et des blocs Suppression du Bloc Fortran (et des blocs procéduraux) remplacés par des appels de procéduraux) remplacés par des appels de fonction.fonction.
Accès aux variables internes d’un modèle par Accès aux variables internes d’un modèle par des fonctions get_value(...), set_value(...)des fonctions get_value(...), set_value(...)
Toute variable est modifiableToute variable est modifiable
Diapositive 45GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
Par rapport à ALLANPar rapport à ALLAN
La longueur des identifieurs est libre La longueur des identifieurs est libre
Un macromodèle possède une vue graphique Un macromodèle possède une vue graphique et une vue textuelleet une vue textuelle
On peut traiter une arborescence de modèles On peut traiter une arborescence de modèles
Suppression des blocs procédurauxSuppression des blocs procéduraux
(ce sont des programmes appelés)(ce sont des programmes appelés)
Diapositive 46GROUPE CS COMMUNICATION & SYSTEMES Présentation NEPTUNIX 2011
Ver
sion
sep
tem
bre
99V
ersi
on s
epte
mbr
e 99
FINFIN
Merci de votre attention.Merci de votre attention.
Avez vous des Avez vous des Questions ???Questions ???