Aller au contenu

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é

  1. 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.
  2. 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.

Prochaines sessions

Aucune session programmée pour le moment