code_aster côté développeur - formation en ligne
Prenez en main l'environnement de développement de code_aster : de la compilation à la livraison Docker/Apptainer pour HPC, en passant par la modification du code et les tests de non-régression

Synthèse de la formation
Vous vous reconnaissez ?
- Vous utilisez code_aster en tant qu'utilisateur, mais dès qu'il s'agit de modifier une loi de comportement ou d'ajouter une option de calcul, vous êtes bloqué : vous ne savez pas où chercher dans les sources.
- Vous avez essayé de compiler code_aster mais les dépendances (Spack, bibliothèques externes, environnement) vous ont donné du fil à retordre, et vous ne savez pas distinguer ce qui appartient à Spack de ce qui appartient réellement à code_aster.
- Vous voulez contribuer proprement au code (correction, nouveau développement, patch) mais vous ne maîtrisez pas le workflow complet : build, test unitaire, non-régression, packaging.
Pourquoi notre formation en particulier ?
Une journée, un workflow complet
Vous suivez la chaîne complète checkout → environnement → build → modification → rebuild → test → packaging → exécution. Pas un simple survol du code : un vrai fil rouge, de bout en bout.
Vous mettez les mains dans le code
Chaque étape théorique est immédiatement suivie d'une manipulation réelle sur les sources de code_aster, en Python comme en C++/Fortran. Vous repartez avec des modifications que vous avez vous-même compilées et validées.
Des formateurs qui développent code_aster au quotidien
Nos ingénieurs contribuent au code source dans le cadre de projets industriels chez Simvia. En présentiel, ils partagent en direct les bonnes pratiques et les pièges à éviter, que vous ne trouverez dans aucune documentation.
Un encadrement de proximité
Petit groupe de stagiaires, formateur disponible pour débloquer chacun pendant les manipulations sur le code.
De l'environnement de dev à la livraison HPC
Vous repartez capable de construire une image Docker, de la convertir pour Apptainer/Singularity, et de lancer un calcul de vérification sur votre cluster.
Public
- Entreprise : ingénieurs et développeurs souhaitant contribuer au code source de code_aster, packager des livrables ou déployer le code sur HPC.
- Académique : chercheurs et doctorants développant leurs propres fonctionnalités dans code_aster.
Prérequis
Bonne pratique de code_aster en tant qu'utilisateur (commandes, catalogues). Notions de base en Python et en C++/Fortran appréciées. Aucune expérience préalable de compilation n'est requise.
Programme détaillé
Matin : de la découverte du code source à la première modification
- code_aster côté développeur : dépôt source, grandes briques, Python / C++ / Fortran, catalogues, tests, bibliothèques externes. Où chercher lorsqu'on veut modifier quelque chose.
- Construire son environnement local : récupération des sources, devcontainer, environnement Spack, dépendances, variables importantes. Comprendre ce que fournit Spack et ce qui appartient réellement à code_aster.
- Compiler code_aster : configuration, compilation, installation. Build complet vs recompilation incrémentale. Où retrouver les binaires/modules produits. Diagnostic rapide d'une erreur de compilation.
- Première modification : petite modification Python/catalogue suffisamment visible pour comprendre le chemin source → build → exécution. Rebuild puis lancement d'un calcul validant la modification.
Après-midi : modification compilée, tests et livraison
- Architecture utile au quotidien : code_aster/, bibcxx, catalogues de commandes, comportements, messages, tests. Pas une revue exhaustive, plutôt « où dois-je aller selon ce que je veux changer ? ».
- Modification compilée : petit exemple côté C++ ou Fortran, modification localisée, recompilation incrémentale, vérification que la nouvelle bibliothèque est effectivement utilisée.
- Tester proprement une modification : organisation de la base de tests, lancement d'un test unitaire / testcase code_aster, lecture des fichiers .mess, critères OK/NOOK, ajout ou adaptation d'un test de non-régression.
- Construire un livrable : installation propre du build puis construction d'une image Docker. Différence entre environnement de dev et runtime. Bonnes pratiques pour versionner/taguer l'image.
- Workflow développeur complet : récapitulatif checkout → env → build → modify → rebuild → test → package → run. Conseils pour aller plus loin et contribuer proprement.
Détails pratiques
- Horaires : 9h à 12h et 13h à 17h (1 journée).
- Format : à distance
- Langue : Anglais
- Chaque formateur encadre un petit groupe de stagiaires pendant les manipulations.
- Certificat de fin de formation.
Dates, lieu, langue, tarifs et inscription sont indiqués sur la page de chaque session.
Accessibilité
Nous nous engageons à favoriser l’accès de nos formations aux personnes en situation de handicap. Chaque situation étant unique, nous vous invitons à nous contacter avant votre inscription afin d’étudier ensemble les adaptations pédagogiques, techniques ou organisationnelles pouvant être mises en place.