===== Commit 2008-03-04 ===== ===== Modifs ===== ==== Définition des fixations ==== ===Nouvelle syntaxe=== Quand on crée un chargement, les fixations correspondantes sont créées automatiquement. Par exemple, l'ensemble de commandes suivant: loadingset = domain.getLoadingSet() fixationset = domain.getFixationSet() loadingset.define(sideset(10001), Field1D(TZ,RE), 1.0, FCT_CINTR_SUP) fixationset.define(sideset(10001), Field1D(TZ,RE)) se limite maintenant à la définition du chargement: loadingset = domain.getLoadingSet() loadingset.define(sideset(10001), Field1D(TZ,RE), 1.0, FCT_CINTR_SUP) Pour être cohérent, quand on veut annuler un champ, on définit un chargement nul au lieu d'une fixation. Au lieu de: fixationset = domain.getFixationSet() fixationset.define(curveset(4), Field1D(TX,RE)) on écrit: loadingset = domain.getLoadingSet() loadingset.define(curveset(4), Field1D(TX,RE), 0.0, EX_INCR) Le plus souvent, comme on veut fixer à zéro la variation du champ et non le champ lui-même, il faut spécifier l'option ''EX_INCR''. ===Remarques=== * Quand on (dés)active un chargement, les fixations correspondantes sont (dés)activées automatiquement. Par contre, on fixe les degrés de liberté d'une région donnée si au moins une fixation est activée sur cette région. **L'ordre de définition et d'activation des contraintes n'a donc plus d'importance**, c'est l'activation qui a priorité sur la désactivation (voir ''FixationSet::toDofSet()'' pour les détails). * En pratique, on peut continuer d'utiliser l'ancienne syntaxe et définir des fixations explicitement. C'est inutile mais ça devrait fonctionner comme avant, en dehors des cas où on jouait sur l'ordre d'activation. * Tous les fichiers ''.py'' ont été adaptés à la nouvelle syntaxe au moyen d'une procédure automatique, sauf ceux qui ont posé problème et que j'ai dû modifier à la main. Il peut donc rester des petits morceaux écrits selon l'ancienne syntaxe. ==== Broutilles ==== * Dans ''configure.ac'', j'ai ajouté l'option ''-DMPICH_IGNORE_CXX_SEEK'' à ''CXXFLAGS''. Ca évite des problèmes dûs à mpich, qui redéfinit les variables ''SEEK_SET'', ''SEEK_CUR'' et ''SEEK_END'' utilisées par ''stdio.h'', c'est un problème connu. Or sous Linux en tout cas, Petsc cherche apparemment à lire ''mpi.h'' même s'il est compilé en ''MPI_UNI'', et s'il en trouve un (parce que mpich est installé...), ça plante à la compilation. * J'ai ajouté l'option ''diffUX'' dans ''battery.py''. Ca permet d'écrire le fichier ''.html'' de telle sorte qu'on puisse accéder sous Linux aux fichiers ''.res'' ou ''.py'' via les liens, donc sans faire appel au notepad. Je n'étais pas très inspiré pour le nom de l'option, on peut changer. ===== Fichiers ajoutés/supprimés ===== apps/qs/dgShellFullPinchedCylinder.py deleted --- //[[geoffrey.deliege@ulg.ac.be|Geoffrey DELIEGE]] 2008/03/04 //